From 9b25a231ebc4c7aae67b8a78d286273afa1f438b Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 8 Jul 2024 11:05:40 +0000 Subject: [PATCH] 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 ;