Merge remote-tracking branch 'origin/feature/ECC-1903-tablesVersion-switch' into feature/ECC-1903-tablesVersion-switch-with-chem-param-split

This commit is contained in:
Matthew Griffith 2024-12-05 16:40:03 +00:00
commit df3b6d08ca
25 changed files with 1599 additions and 1266 deletions

View File

@ -112,6 +112,18 @@ ecbuild_add_option( FEATURE GEOGRAPHY
DESCRIPTION "Support for Geoiterator and nearest neighbour"
DEFAULT ON )
ecbuild_add_option( FEATURE ECKIT_GEO
DESCRIPTION "Support for Geoiterator and nearest neighbour (additional backend)"
CONDITION ENABLE_GEOGRAPHY
DEFAULT OFF )
if( eccodes_HAVE_ECKIT_GEO AND NOT TARGET eckit_geo )
ecbuild_find_package(NAME eckit VERSION 1.27 REQUIRED)
if( NOT TARGET eckit_geo )
ecbuild_critical("eckit has not been built with ECKIT_GEO enabled")
endif()
endif()
ecbuild_add_option( FEATURE JPG
DESCRIPTION "Support for JPG decoding/encoding"
DEFAULT ON )
@ -485,7 +497,7 @@ ecbuild_pkgconfig(
IGNORE_INCLUDE_DIRS ${PYTHON_INCLUDE_DIRS} ${NUMPY_INCLUDE_DIRS} ${NETCDF_INCLUDE_DIRS}
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
HAVE_NETCDF HAVE_FORTRAN HAVE_PNG HAVE_AEC HAVE_ECKIT_GEO
)
if( HAVE_FORTRAN )
ecbuild_pkgconfig(
@ -497,7 +509,7 @@ if( HAVE_FORTRAN )
${PYTHON_INCLUDE_DIRS} ${NUMPY_INCLUDE_DIRS} ${NETCDF_INCLUDE_DIRS}
VARIABLES HAVE_MEMFS HAVE_GEOGRAPHY HAVE_JPEG HAVE_LIBJASPER HAVE_LIBOPENJPEG
HAVE_ECCODES_THREADS HAVE_ECCODES_OMP_THREADS
HAVE_NETCDF HAVE_PNG HAVE_AEC
HAVE_NETCDF HAVE_PNG HAVE_AEC HAVE_ECKIT_GEO
)
endif()

View File

@ -9,6 +9,8 @@ ecCodes
[![codecov](https://codecov.io/gh/ecmwf/eccodes/branch/develop/graph/badge.svg)](https://codecov.io/gh/ecmwf/eccodes)
[![Anaconda-Server Badge](https://anaconda.org/conda-forge/eccodes/badges/version.svg)](https://anaconda.org/conda-forge/eccodes)
ecCodes is a package developed by ECMWF which provides an application programming interface
and a set of tools for decoding and encoding messages in the following formats:

View File

@ -1 +1 @@
"unknown" = {dummy=0;}
-1 = {dummy=0;}

View File

@ -6,40 +6,6 @@
parameterNumber = 0 ;
typeOfFirstFixedSurface = 1 ;
}
#Maximum 10 metre wind gust since previous post-processing
'fg10' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 22 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Maximum temperature at 2 metres in the last 6 hours
'mx2t6' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 2 ;
lengthOfTimeRange = 6 ;
}
#Minimum temperature at 2 metres in the last 6 hours
'mn2t6' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 3 ;
lengthOfTimeRange = 6 ;
}
#10 metre U wind component
'u10' = {
discipline = 0 ;
@ -76,26 +42,6 @@
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
}
#Maximum temperature at 2 metres since previous post-processing
'mx2t' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Minimum temperature at 2 metres since previous post-processing
'mn2t' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 3 ;
}
#10 metre wind speed
'si10' = {
discipline = 0 ;
@ -129,18 +75,6 @@
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
}
#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 ;
}
#2 metre relative humidity with respect to water
'rhw2' = {
discipline = 0 ;

View File

@ -13,24 +13,36 @@ transient redo_mtg2_switch = 0;
when( changed(tablesVersion) ) {
set redo_mtg2_switch = 1;
}
# TODO(masn): This is work in progress
if ( tablesVersion > 0 ) {
transient redo_mtg2_switch = 1;
}
# TODO(masn): This is work in progress
if ( redo_mtg2_switch == 1 ) {
if (tablesVersion <= tablesVersionMTG2Switch) {
constant MTG2SwitchDefault = 0;
} else {
if (defined(marsClass) and (marsClass is 'mc' or marsClass is 'cr')) {
constant MTG2SwitchDefault = 2;
} else {
constant MTG2SwitchDefault = 1;
}
}
}
if (tablesVersion <= tablesVersionMTG2Switch) {
# Pre-MTG2
constant MTG2SwitchDefault = 0;
} else {
# For class mc and cr post MTG2 we always want the param + chem split (value 2)
# For TIGGE, marsClass is not defined in the empty local Section 2, but is defined later on.
# Therefore we need to protect this with an if defined check
if (defined(marsClass) and (marsClass is 'mc' or marsClass is 'cr')) {
constant MTG2SwitchDefault = 2;
# All other cases we are post-MTG2
# All other cases we are post-MTG2
} else {
constant MTG2SwitchDefault = 1;
}
}
@ -49,4 +61,4 @@ if (tablesVersion <= tablesVersionMTG2Switch) {
# Now evaluate concept
concept MTG2Switch(MTG2SwitchDefault, "MTG2SwitchConcept.def", conceptsDir2,conceptsDir1): no_copy, read_only;
concept MTG2Switch(MTG2SwitchDefault, "MTG2SwitchConcept.def", conceptsDir2,conceptsDir1): no_copy, read_only, long_type;

View File

@ -5,10 +5,10 @@
# Model version cannot be used in this concept because its concept is only evaluated at the end of Section 4,
# and in many cases we use the value of the MTG2Switch earlier. Therefore we must use the backgroundProcess
# and generatingProcessIdentifier key directly. The values for IFS are:
# backgroundProcess=255
# backgroundProcess=255
# 'cy50r2' = { generatingProcessIdentifier = 162; }
# 'cy50r1' = { generatingProcessIdentifier = 161; }
# 'cy49r2' = { generatingProcessIdentifier = 159; }
# 'cy49r2' = { generatingProcessIdentifier = 159; }
# 'cy49r1' = { generatingProcessIdentifier = 158; }
# We only need the concepts which differ from the default below.
@ -21,4 +21,4 @@
# MC
0 = {tablesVersion=35; productionStatusOfProcessedData=0; backgroundProcess=255; generatingProcessIdentifier=161; marsClass='mc';}
# CR
0 = {tablesVersion=35; productionStatusOfProcessedData=2; backgroundProcess=255; generatingProcessIdentifier=161; marsClass='cr';}
0 = {tablesVersion=35; productionStatusOfProcessedData=2; backgroundProcess=255; generatingProcessIdentifier=161; marsClass='cr';}

View File

@ -5,30 +5,6 @@
parameterCategory = 128 ;
parameterNumber = 31 ;
}
#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 ;
@ -77,30 +53,6 @@
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 ;
}
#Maximum 10 metre wind gust in the last 3 hours
'fg310' = {
discipline = 192 ;

View File

@ -194,30 +194,6 @@
parameterCategory = 128 ;
parameterNumber = 46 ;
}
#Maximum temperature at 2 metres in the last 24 hours
'Maximum temperature at 2 metres in the last 24 hours' = {
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
'Minimum temperature at 2 metres in the last 24 hours' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 3 ;
lengthOfTimeRange = 24 ;
}
#Observation count
'Observation count' = {
discipline = 192 ;
@ -500,12 +476,6 @@
parameterCategory = 128 ;
parameterNumber = 120 ;
}
#Maximum 10 metre wind gust in the last 6 hours
'Maximum 10 metre wind gust in the last 6 hours' = {
discipline = 192 ;
parameterCategory = 128 ;
parameterNumber = 123 ;
}
#Vertically integrated total energy
'Vertically integrated total energy' = {
discipline = 192 ;
@ -13591,30 +13561,6 @@
parameterCategory = 228 ;
parameterNumber = 25 ;
}
#Maximum temperature at 2 metres in the last 3 hours
'Maximum temperature at 2 metres in the last 3 hours' = {
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
'Minimum temperature at 2 metres in the last 3 hours' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 3 ;
lengthOfTimeRange = 3 ;
}
#Soil wetness index in layer 1
'Soil wetness index in layer 1' = {
discipline = 192 ;
@ -19004,12 +18950,6 @@
parameterCategory = 174 ;
parameterNumber = 42 ;
}
#10 metre wind gust in the last 24 hours
'10 metre wind gust in the last 24 hours' = {
discipline = 192 ;
parameterCategory = 174 ;
parameterNumber = 49 ;
}
#1.5m temperature - mean in the last 24 hours
'1.5m temperature - mean in the last 24 hours' = {
discipline = 192 ;

View File

@ -194,30 +194,6 @@
parameterCategory = 128 ;
parameterNumber = 46 ;
}
#Maximum temperature at 2 metres in the last 24 hours
'51' = {
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
'52' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 3 ;
lengthOfTimeRange = 24 ;
}
#Observation count
'62' = {
discipline = 192 ;
@ -500,12 +476,6 @@
parameterCategory = 128 ;
parameterNumber = 120 ;
}
#Maximum 10 metre wind gust in the last 6 hours
'123' = {
discipline = 192 ;
parameterCategory = 128 ;
parameterNumber = 123 ;
}
#Vertically integrated total energy
'125' = {
discipline = 192 ;
@ -13591,30 +13561,6 @@
parameterCategory = 228 ;
parameterNumber = 25 ;
}
#Maximum temperature at 2 metres in the last 3 hours
'228026' = {
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
'228027' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 3 ;
lengthOfTimeRange = 3 ;
}
#Soil wetness index in layer 1
'228040' = {
discipline = 192 ;
@ -19004,12 +18950,6 @@
parameterCategory = 174 ;
parameterNumber = 42 ;
}
#10 metre wind gust in the last 24 hours
'174049' = {
discipline = 192 ;
parameterCategory = 174 ;
parameterNumber = 49 ;
}
#1.5m temperature - mean in the last 24 hours
'174055' = {
discipline = 192 ;

View File

@ -194,30 +194,6 @@
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 ;
@ -500,12 +476,6 @@
parameterCategory = 128 ;
parameterNumber = 120 ;
}
#Maximum 10 metre wind gust in the last 6 hours
'10fg6' = {
discipline = 192 ;
parameterCategory = 128 ;
parameterNumber = 123 ;
}
#Vertically integrated total energy
'vite' = {
discipline = 192 ;
@ -13591,30 +13561,6 @@
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 ;
@ -19004,12 +18950,6 @@
parameterCategory = 174 ;
parameterNumber = 42 ;
}
#10 metre wind gust in the last 24 hours
'~' = {
discipline = 192 ;
parameterCategory = 174 ;
parameterNumber = 49 ;
}
#1.5m temperature - mean in the last 24 hours
'~' = {
discipline = 192 ;

View File

@ -194,30 +194,6 @@
parameterCategory = 128 ;
parameterNumber = 46 ;
}
#Maximum temperature at 2 metres in the last 24 hours
'K' = {
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
'K' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 3 ;
lengthOfTimeRange = 24 ;
}
#Observation count
'~' = {
discipline = 192 ;
@ -500,12 +476,6 @@
parameterCategory = 128 ;
parameterNumber = 120 ;
}
#Maximum 10 metre wind gust in the last 6 hours
'm s**-1' = {
discipline = 192 ;
parameterCategory = 128 ;
parameterNumber = 123 ;
}
#Vertically integrated total energy
'J m**-2' = {
discipline = 192 ;
@ -13591,30 +13561,6 @@
parameterCategory = 228 ;
parameterNumber = 25 ;
}
#Maximum temperature at 2 metres in the last 3 hours
'K' = {
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
'K' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 3 ;
lengthOfTimeRange = 3 ;
}
#Soil wetness index in layer 1
'dimensionless' = {
discipline = 192 ;
@ -19004,12 +18950,6 @@
parameterCategory = 174 ;
parameterNumber = 42 ;
}
#10 metre wind gust in the last 24 hours
'm s**-1' = {
discipline = 192 ;
parameterCategory = 174 ;
parameterNumber = 49 ;
}
#1.5m temperature - mean in the last 24 hours
'K' = {
discipline = 192 ;

View File

@ -254,16 +254,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfStatisticalProcessing = 1 ;
}
#Maximum 10 metre wind gust since previous post-processing
'Maximum 10 metre wind gust since previous post-processing' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 22 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Large-scale precipitation fraction
'Large-scale precipitation fraction' = {
discipline = 0 ;
@ -367,18 +357,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
}
#Minimum temperature at 2 metres in the last 6 hours
'Minimum temperature at 2 metres in the last 6 hours' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 3 ;
lengthOfTimeRange = 6 ;
}
#Surface emissivity
'Surface emissivity' = {
discipline = 2 ;
@ -703,16 +681,6 @@
parameterNumber = 23 ;
typeOfStatisticalProcessing = 1 ;
}
#Minimum temperature at 2 metres since previous post-processing
'Minimum temperature at 2 metres since previous post-processing' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 3 ;
}
#Ozone mass mixing ratio
'Ozone mass mixing ratio' = {
discipline = 0 ;
@ -5302,18 +5270,6 @@
scaledValueOfFirstFixedSurface = 27315 ;
scaleFactorOfFirstFixedSurface = 2 ;
}
#Maximum 10 metre wind gust in the last 3 hours
'Maximum 10 metre wind gust in the last 3 hours' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 22 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 2 ;
lengthOfTimeRange = 3 ;
}
#Instantaneous 10 metre wind gust
'Instantaneous 10 metre wind gust' = {
discipline = 0 ;
@ -5347,28 +5303,6 @@
parameterCategory = 6 ;
parameterNumber = 37 ;
}
#Maximum CAPE in the last 6 hours
'Maximum CAPE in the last 6 hours' = {
discipline = 0 ;
parameterCategory = 7 ;
parameterNumber = 6 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 2 ;
lengthOfTimeRange = 6 ;
}
#Maximum CAPES in the last 6 hours
'Maximum CAPES in the last 6 hours' = {
discipline = 0 ;
parameterCategory = 7 ;
parameterNumber = 19 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 2 ;
lengthOfTimeRange = 6 ;
}
#2 metre relative humidity with respect to water
'2 metre relative humidity with respect to water' = {
discipline = 0 ;
@ -5426,17 +5360,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
}
#Averaged total lightning flash density in the last hour
'Averaged total lightning flash density in the last hour' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 4 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 0 ;
lengthOfTimeRange = 1 ;
}
#Instantaneous cloud-to-ground lightning flash density
'Instantaneous cloud-to-ground lightning flash density' = {
discipline = 0 ;
@ -5445,17 +5368,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
}
#Averaged cloud-to-ground lightning flash density in the last hour
'Averaged cloud-to-ground lightning flash density in the last hour' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 2 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 0 ;
lengthOfTimeRange = 1 ;
}
#Unbalanced component of specific humidity
'Unbalanced component of specific humidity' = {
discipline = 0 ;
@ -5474,50 +5386,6 @@
parameterCategory = 1 ;
parameterNumber = 120 ;
}
#Averaged total lightning flash density in the last 3 hours
'Averaged total lightning flash density in the last 3 hours' = {
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
'Averaged total lightning flash density in the last 6 hours' = {
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
'Averaged cloud-to-ground lightning flash density in the last 3 hours' = {
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
'Averaged cloud-to-ground lightning flash density in the last 6 hours' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 2 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 0 ;
lengthOfTimeRange = 6 ;
}
#Soil moisture top 20 cm
'Soil moisture top 20 cm' = {
discipline = 2 ;
@ -5680,22 +5548,6 @@
parameterNumber = 56 ;
typeOfFirstFixedSurface = 1 ;
}
#Maximum total precipitation rate since previous post-processing
'Maximum total precipitation rate since previous post-processing' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 52 ;
typeOfFirstFixedSurface = 1 ;
typeOfStatisticalProcessing = 2 ;
}
#Minimum total precipitation rate since previous post-processing
'Minimum total precipitation rate since previous post-processing' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 52 ;
typeOfFirstFixedSurface = 1 ;
typeOfStatisticalProcessing = 3 ;
}
#Mixed-layer CAPE in the lowest 50 hPa
'Mixed-layer CAPE in the lowest 50 hPa' = {
discipline = 0 ;
@ -8785,6 +8637,15 @@
parameterNumber = 51 ;
typeOfStatisticalProcessing = 0 ;
}
#Time-mean cloud-to-ground lightning flash density
'Time-mean cloud-to-ground lightning flash density' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 2 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
typeOfStatisticalProcessing = 0 ;
}
#Time-maximum temperature tendency due to short-wave radiation
'Time-maximum temperature tendency due to short-wave radiation' = {
discipline = 0 ;
@ -10601,6 +10462,26 @@
parameterNumber = 51 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-maximum 10 metre eastward wind gust
'Time-maximum 10 metre eastward wind gust' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 23 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-maximum 10 metre northward wind gust
'Time-maximum 10 metre northward wind gust' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 24 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-minimum temperature tendency due to short-wave radiation
'Time-minimum temperature tendency due to short-wave radiation' = {
discipline = 0 ;
@ -15843,60 +15724,6 @@
parameterCategory = 5 ;
parameterNumber = 0 ;
}
#Precipitation type (most severe) in the last 1 hour
'Precipitation type (most severe) in the last 1 hour' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 100 ;
lengthOfTimeRange = 1 ;
}
#Precipitation type (most severe) in the last 3 hours
'Precipitation type (most severe) in the last 3 hours' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 100 ;
lengthOfTimeRange = 3 ;
}
#Precipitation type (most frequent) in the last 1 hour
'Precipitation type (most frequent) in the last 1 hour' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 101 ;
lengthOfTimeRange = 1 ;
}
#Precipitation type (most frequent) in the last 3 hours
'Precipitation type (most frequent) in the last 3 hours' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 101 ;
lengthOfTimeRange = 3 ;
}
#Precipitation type (most severe) in the last 6 hours
'Precipitation type (most severe) in the last 6 hours' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 100 ;
lengthOfTimeRange = 6 ;
}
#Precipitation type (most frequent) in the last 6 hours
'Precipitation type (most frequent) in the last 6 hours' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 101 ;
lengthOfTimeRange = 6 ;
}
#Soil temperature
'Soil temperature' = {
discipline = 2 ;
@ -16235,28 +16062,6 @@
typeOfSecondFixedSurface = 255 ;
typeOfStatisticalProcessing = 1 ;
}
#10 metre eastward wind gust since previous post-processing
'10 metre eastward wind gust since previous post-processing' = {
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
'10 metre northward wind gust since previous post-processing' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 24 ;
typeOfFirstFixedSurface = 103 ;
typeOfSecondFixedSurface = 255 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Fog
'Fog' = {
discipline = 0 ;
@ -16481,6 +16286,20 @@
parameterNumber = 67 ;
typeOfFirstFixedSurface = 1 ;
}
#Time-severity precipitation type
'Time-severity precipitation type' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
typeOfStatisticalProcessing = 100 ;
}
#Time-mode precipitation type
'Time-mode precipitation type' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
typeOfStatisticalProcessing = 101 ;
}
#Universal thermal climate index
'Universal thermal climate index' = {
discipline = 20 ;

View File

@ -254,16 +254,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfStatisticalProcessing = 1 ;
}
#Maximum 10 metre wind gust since previous post-processing
'49' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 22 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Large-scale precipitation fraction
'50' = {
discipline = 0 ;
@ -367,18 +357,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
}
#Minimum temperature at 2 metres in the last 6 hours
'122' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 3 ;
lengthOfTimeRange = 6 ;
}
#Surface emissivity
'124' = {
discipline = 2 ;
@ -703,16 +681,6 @@
parameterNumber = 23 ;
typeOfStatisticalProcessing = 1 ;
}
#Minimum temperature at 2 metres since previous post-processing
'202' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 3 ;
}
#Ozone mass mixing ratio
'203' = {
discipline = 0 ;
@ -5302,18 +5270,6 @@
scaledValueOfFirstFixedSurface = 27315 ;
scaleFactorOfFirstFixedSurface = 2 ;
}
#Maximum 10 metre wind gust in the last 3 hours
'228028' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 22 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 2 ;
lengthOfTimeRange = 3 ;
}
#Instantaneous 10 metre wind gust
'228029' = {
discipline = 0 ;
@ -5347,28 +5303,6 @@
parameterCategory = 6 ;
parameterNumber = 37 ;
}
#Maximum CAPE in the last 6 hours
'228035' = {
discipline = 0 ;
parameterCategory = 7 ;
parameterNumber = 6 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 2 ;
lengthOfTimeRange = 6 ;
}
#Maximum CAPES in the last 6 hours
'228036' = {
discipline = 0 ;
parameterCategory = 7 ;
parameterNumber = 19 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 2 ;
lengthOfTimeRange = 6 ;
}
#2 metre relative humidity with respect to water
'228037' = {
discipline = 0 ;
@ -5426,17 +5360,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
}
#Averaged total lightning flash density in the last hour
'228051' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 4 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 0 ;
lengthOfTimeRange = 1 ;
}
#Instantaneous cloud-to-ground lightning flash density
'228052' = {
discipline = 0 ;
@ -5445,17 +5368,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
}
#Averaged cloud-to-ground lightning flash density in the last hour
'228053' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 2 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 0 ;
lengthOfTimeRange = 1 ;
}
#Unbalanced component of specific humidity
'228054' = {
discipline = 0 ;
@ -5474,50 +5386,6 @@
parameterCategory = 1 ;
parameterNumber = 120 ;
}
#Averaged total lightning flash density in the last 3 hours
'228057' = {
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
'228058' = {
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
'228059' = {
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
'228060' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 2 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 0 ;
lengthOfTimeRange = 6 ;
}
#Soil moisture top 20 cm
'228086' = {
discipline = 2 ;
@ -5680,22 +5548,6 @@
parameterNumber = 56 ;
typeOfFirstFixedSurface = 1 ;
}
#Maximum total precipitation rate since previous post-processing
'228226' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 52 ;
typeOfFirstFixedSurface = 1 ;
typeOfStatisticalProcessing = 2 ;
}
#Minimum total precipitation rate since previous post-processing
'228227' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 52 ;
typeOfFirstFixedSurface = 1 ;
typeOfStatisticalProcessing = 3 ;
}
#Mixed-layer CAPE in the lowest 50 hPa
'228231' = {
discipline = 0 ;
@ -8785,6 +8637,15 @@
parameterNumber = 51 ;
typeOfStatisticalProcessing = 0 ;
}
#Time-mean cloud-to-ground lightning flash density
'235383' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 2 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
typeOfStatisticalProcessing = 0 ;
}
#Time-maximum temperature tendency due to short-wave radiation
'237001' = {
discipline = 0 ;
@ -10601,6 +10462,26 @@
parameterNumber = 51 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-maximum 10 metre eastward wind gust
'237384' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 23 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-maximum 10 metre northward wind gust
'237385' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 24 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-minimum temperature tendency due to short-wave radiation
'238001' = {
discipline = 0 ;
@ -15843,60 +15724,6 @@
parameterCategory = 5 ;
parameterNumber = 0 ;
}
#Precipitation type (most severe) in the last 1 hour
'260318' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 100 ;
lengthOfTimeRange = 1 ;
}
#Precipitation type (most severe) in the last 3 hours
'260319' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 100 ;
lengthOfTimeRange = 3 ;
}
#Precipitation type (most frequent) in the last 1 hour
'260320' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 101 ;
lengthOfTimeRange = 1 ;
}
#Precipitation type (most frequent) in the last 3 hours
'260321' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 101 ;
lengthOfTimeRange = 3 ;
}
#Precipitation type (most severe) in the last 6 hours
'260338' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 100 ;
lengthOfTimeRange = 6 ;
}
#Precipitation type (most frequent) in the last 6 hours
'260339' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 101 ;
lengthOfTimeRange = 6 ;
}
#Soil temperature
'260360' = {
discipline = 2 ;
@ -16235,28 +16062,6 @@
typeOfSecondFixedSurface = 255 ;
typeOfStatisticalProcessing = 1 ;
}
#10 metre eastward wind gust since previous post-processing
'260646' = {
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
'260647' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 24 ;
typeOfFirstFixedSurface = 103 ;
typeOfSecondFixedSurface = 255 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Fog
'260648' = {
discipline = 0 ;
@ -16481,6 +16286,20 @@
parameterNumber = 67 ;
typeOfFirstFixedSurface = 1 ;
}
#Time-severity precipitation type
'260682' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
typeOfStatisticalProcessing = 100 ;
}
#Time-mode precipitation type
'260683' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
typeOfStatisticalProcessing = 101 ;
}
#Universal thermal climate index
'261001' = {
discipline = 20 ;

View File

@ -254,16 +254,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfStatisticalProcessing = 1 ;
}
#Maximum 10 metre wind gust since previous post-processing
'10fg' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 22 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Large-scale precipitation fraction
'lspf' = {
discipline = 0 ;
@ -367,18 +357,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
}
#Minimum temperature at 2 metres in the last 6 hours
'mn2t6' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 3 ;
lengthOfTimeRange = 6 ;
}
#Surface emissivity
'emis' = {
discipline = 2 ;
@ -703,16 +681,6 @@
parameterNumber = 23 ;
typeOfStatisticalProcessing = 1 ;
}
#Minimum temperature at 2 metres since previous post-processing
'mn2t' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 3 ;
}
#Ozone mass mixing ratio
'o3' = {
discipline = 0 ;
@ -5302,18 +5270,6 @@
scaledValueOfFirstFixedSurface = 27315 ;
scaleFactorOfFirstFixedSurface = 2 ;
}
#Maximum 10 metre wind gust in the last 3 hours
'10fg3' = {
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 ;
@ -5347,28 +5303,6 @@
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
'2rhw' = {
discipline = 0 ;
@ -5426,17 +5360,6 @@
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 ;
@ -5445,17 +5368,6 @@
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 ;
@ -5474,50 +5386,6 @@
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 ;
@ -5680,22 +5548,6 @@
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 ;
@ -8785,6 +8637,15 @@
parameterNumber = 51 ;
typeOfStatisticalProcessing = 0 ;
}
#Time-mean cloud-to-ground lightning flash density
'avg_licgi' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 2 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
typeOfStatisticalProcessing = 0 ;
}
#Time-maximum temperature tendency due to short-wave radiation
'max_ttswr' = {
discipline = 0 ;
@ -10601,6 +10462,26 @@
parameterNumber = 51 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-maximum 10 metre eastward wind gust
'max_10efg' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 23 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-maximum 10 metre northward wind gust
'max_10nfg' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 24 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-minimum temperature tendency due to short-wave radiation
'min_ttswr' = {
discipline = 0 ;
@ -15843,60 +15724,6 @@
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 ;
@ -16235,28 +16062,6 @@
typeOfSecondFixedSurface = 255 ;
typeOfStatisticalProcessing = 1 ;
}
#10 metre eastward wind gust since previous post-processing
'10efg' = {
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
'10nfg' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 24 ;
typeOfFirstFixedSurface = 103 ;
typeOfSecondFixedSurface = 255 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Fog
'fog' = {
discipline = 0 ;
@ -16481,6 +16286,20 @@
parameterNumber = 67 ;
typeOfFirstFixedSurface = 1 ;
}
#Time-severity precipitation type
'sev_ptype' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
typeOfStatisticalProcessing = 100 ;
}
#Time-mode precipitation type
'freq_ptype' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
typeOfStatisticalProcessing = 101 ;
}
#Universal thermal climate index
'utci' = {
discipline = 20 ;

View File

@ -254,16 +254,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfStatisticalProcessing = 1 ;
}
#Maximum 10 metre wind gust since previous post-processing
'm s**-1' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 22 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Large-scale precipitation fraction
's' = {
discipline = 0 ;
@ -367,18 +357,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
}
#Minimum temperature at 2 metres in the last 6 hours
'K' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 3 ;
lengthOfTimeRange = 6 ;
}
#Surface emissivity
'Proportion' = {
discipline = 2 ;
@ -703,16 +681,6 @@
parameterNumber = 23 ;
typeOfStatisticalProcessing = 1 ;
}
#Minimum temperature at 2 metres since previous post-processing
'K' = {
discipline = 0 ;
parameterCategory = 0 ;
parameterNumber = 0 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 2 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 3 ;
}
#Ozone mass mixing ratio
'kg kg**-1' = {
discipline = 0 ;
@ -5302,18 +5270,6 @@
scaledValueOfFirstFixedSurface = 27315 ;
scaleFactorOfFirstFixedSurface = 2 ;
}
#Maximum 10 metre wind gust in the last 3 hours
'm s**-1' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 22 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 2 ;
lengthOfTimeRange = 3 ;
}
#Instantaneous 10 metre wind gust
'm s**-1' = {
discipline = 0 ;
@ -5347,28 +5303,6 @@
parameterCategory = 6 ;
parameterNumber = 37 ;
}
#Maximum CAPE in the last 6 hours
'J kg**-1' = {
discipline = 0 ;
parameterCategory = 7 ;
parameterNumber = 6 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 2 ;
lengthOfTimeRange = 6 ;
}
#Maximum CAPES in the last 6 hours
'm**2 s**-2' = {
discipline = 0 ;
parameterCategory = 7 ;
parameterNumber = 19 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 2 ;
lengthOfTimeRange = 6 ;
}
#2 metre relative humidity with respect to water
'%' = {
discipline = 0 ;
@ -5426,17 +5360,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
}
#Averaged total lightning flash density in the last hour
'km**-2 day**-1' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 4 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 0 ;
lengthOfTimeRange = 1 ;
}
#Instantaneous cloud-to-ground lightning flash density
'km**-2 day**-1' = {
discipline = 0 ;
@ -5445,17 +5368,6 @@
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
}
#Averaged cloud-to-ground lightning flash density in the last hour
'km**-2 day**-1' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 2 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 0 ;
lengthOfTimeRange = 1 ;
}
#Unbalanced component of specific humidity
'kg kg**-1' = {
discipline = 0 ;
@ -5474,50 +5386,6 @@
parameterCategory = 1 ;
parameterNumber = 120 ;
}
#Averaged total lightning flash density in the last 3 hours
'km**-2 day**-1' = {
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
'km**-2 day**-1' = {
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
'km**-2 day**-1' = {
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
'km**-2 day**-1' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 2 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 0 ;
lengthOfTimeRange = 6 ;
}
#Soil moisture top 20 cm
'kg m**-3' = {
discipline = 2 ;
@ -5680,22 +5548,6 @@
parameterNumber = 56 ;
typeOfFirstFixedSurface = 1 ;
}
#Maximum total precipitation rate since previous post-processing
'kg m**-2 s**-1' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 52 ;
typeOfFirstFixedSurface = 1 ;
typeOfStatisticalProcessing = 2 ;
}
#Minimum total precipitation rate since previous post-processing
'kg m**-2 s**-1' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 52 ;
typeOfFirstFixedSurface = 1 ;
typeOfStatisticalProcessing = 3 ;
}
#Mixed-layer CAPE in the lowest 50 hPa
'J kg**-1' = {
discipline = 0 ;
@ -8785,6 +8637,15 @@
parameterNumber = 51 ;
typeOfStatisticalProcessing = 0 ;
}
#Time-mean cloud-to-ground lightning flash density
'km**-2 day**-1' = {
discipline = 0 ;
parameterCategory = 17 ;
parameterNumber = 2 ;
typeOfFirstFixedSurface = 1 ;
typeOfSecondFixedSurface = 8 ;
typeOfStatisticalProcessing = 0 ;
}
#Time-maximum temperature tendency due to short-wave radiation
'K s**-1' = {
discipline = 0 ;
@ -10601,6 +10462,26 @@
parameterNumber = 51 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-maximum 10 metre eastward wind gust
'm s**-1' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 23 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-maximum 10 metre northward wind gust
'm s**-1' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 24 ;
typeOfFirstFixedSurface = 103 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Time-minimum temperature tendency due to short-wave radiation
'K s**-1' = {
discipline = 0 ;
@ -15843,60 +15724,6 @@
parameterCategory = 5 ;
parameterNumber = 0 ;
}
#Precipitation type (most severe) in the last 1 hour
'(Code table 4.201)' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 100 ;
lengthOfTimeRange = 1 ;
}
#Precipitation type (most severe) in the last 3 hours
'(Code table 4.201)' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 100 ;
lengthOfTimeRange = 3 ;
}
#Precipitation type (most frequent) in the last 1 hour
'(Code table 4.201)' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 101 ;
lengthOfTimeRange = 1 ;
}
#Precipitation type (most frequent) in the last 3 hours
'(Code table 4.201)' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 101 ;
lengthOfTimeRange = 3 ;
}
#Precipitation type (most severe) in the last 6 hours
'(Code table 4.201)' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 100 ;
lengthOfTimeRange = 6 ;
}
#Precipitation type (most frequent) in the last 6 hours
'(Code table 4.201)' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
indicatorOfUnitForTimeRange = 1 ;
typeOfStatisticalProcessing = 101 ;
lengthOfTimeRange = 6 ;
}
#Soil temperature
'K' = {
discipline = 2 ;
@ -16235,28 +16062,6 @@
typeOfSecondFixedSurface = 255 ;
typeOfStatisticalProcessing = 1 ;
}
#10 metre eastward wind gust since previous post-processing
'm s**-1' = {
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
'm s**-1' = {
discipline = 0 ;
parameterCategory = 2 ;
parameterNumber = 24 ;
typeOfFirstFixedSurface = 103 ;
typeOfSecondFixedSurface = 255 ;
scaledValueOfFirstFixedSurface = 10 ;
scaleFactorOfFirstFixedSurface = 0 ;
typeOfStatisticalProcessing = 2 ;
}
#Fog
'%' = {
discipline = 0 ;
@ -16481,6 +16286,20 @@
parameterNumber = 67 ;
typeOfFirstFixedSurface = 1 ;
}
#Time-severity precipitation type
'(Code table 4.201)' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
typeOfStatisticalProcessing = 100 ;
}
#Time-mode precipitation type
'(Code table 4.201)' = {
discipline = 0 ;
parameterCategory = 1 ;
parameterNumber = 19 ;
typeOfStatisticalProcessing = 101 ;
}
#Universal thermal climate index
'K' = {
discipline = 20 ;

View File

@ -114,6 +114,7 @@
#cmakedefine HAVE_NETCDF
#cmakedefine HAVE_GEOGRAPHY
#cmakedefine HAVE_ECKIT_GEO
#cmakedefine HAVE_MEMFS
#cmakedefine HAVE_FORTRAN

View File

@ -411,6 +411,15 @@ if( HAVE_MEMFS )
list(APPEND ECCODES_EXTRA_LIBRARIES eccodes_memfs)
endif()
if( eccodes_HAVE_GEOGRAPHY AND eccodes_HAVE_ECKIT_GEO )
list( APPEND eccodes_src_files
eccodes/geo/GeoIterator.cc
eccodes/geo/GeoIterator.h
eccodes/geo/GribSpec.cc
eccodes/geo/GribSpec.h )
list( APPEND ECCODES_EXTRA_LIBRARIES eckit_geo )
endif()
ecbuild_add_library( TARGET eccodes
SOURCES ${CMAKE_CURRENT_BINARY_DIR}/grib_api_version.cc
# griby.cc gribl.cc

View File

@ -0,0 +1,104 @@
/*
* (C) Copyright 2024- 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 "eccodes/geo/GeoIterator.h"
#include "eckit/exception/Exceptions.h"
#include "eccodes/geo/GribSpec.h"
namespace eccodes::geo
{
GeoIterator::GeoIterator(grib_handle* h, unsigned long flags) :
spec_(new GribSpec(h)), grid_(eckit::geo::GridFactory::build(*spec_)), iter_(grid_->cbegin().release()), end_(grid_->cend().release())
{
h_ = h;
class_name_ = "geo_iterator";
flags_ = flags;
Assert(h_ != nullptr);
CODES_CHECK(codes_get_size(h_, "values", &nv_), "");
Assert(nv_ > 0);
data_ = (flags_ & GRIB_GEOITERATOR_NO_VALUES) ? nullptr : static_cast<double*>(grib_context_malloc(h_->context, nv_ * sizeof(double)));
Assert(data_ != nullptr);
auto size = nv_;
CODES_CHECK(codes_get_double_array(h_, "values", data_, &size), "");
Assert(nv_ == size);
}
int GeoIterator::init(grib_handle*, grib_arguments*)
{
NOTIMP;
}
int GeoIterator::next(double* lat, double* lon, double* val) const
{
if (iter_ == end_) {
return 0; // (false)
}
const auto p = *iter_;
const auto& q = std::get<eckit::geo::PointLonLat>(p);
*lat = q.lat;
*lon = q.lon;
if (val != nullptr && data_ != nullptr) {
*val = data_[iter_->index()];
}
++iter_;
return 1; // (true)
}
int GeoIterator::previous(double*, double*, double*) const
{
return GRIB_NOT_IMPLEMENTED;
}
int GeoIterator::reset()
{
iter_.reset(grid_->cbegin().release());
return GRIB_SUCCESS;
}
int GeoIterator::destroy()
{
if (data_ != nullptr) {
grib_context_free(h_->context, data_);
}
return Iterator::destroy();
}
bool GeoIterator::has_next() const
{
return iter_ != end_;
}
geo_iterator::Iterator*
GeoIterator::create() const
{
return new GeoIterator{ h_, flags_ };
}
} // namespace eccodes::geo

View File

@ -0,0 +1,51 @@
/*
* (C) Copyright 2024- 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 <memory>
#include "eckit/geo/Grid.h"
// eccodes macros conflict with eckit
#ifdef Assert
#undef Assert
#endif
#include "geo_iterator/grib_iterator.h"
namespace eccodes::geo
{
class GeoIterator : public geo_iterator::Iterator
{
public:
explicit GeoIterator(grib_handle*, unsigned long flags);
private:
std::unique_ptr<const eckit::geo::Spec> spec_;
std::unique_ptr<const eckit::geo::Grid> grid_;
mutable eckit::geo::Grid::Iterator iter_;
eckit::geo::Grid::Iterator end_;
int init(grib_handle*, grib_arguments*) override;
int next(double* lat, double* lon, double* val) const override;
int previous(double* lat, double* lon, double* val) const override;
int reset() override;
int destroy() override;
bool has_next() const override;
geo_iterator::Iterator* create() const override;
};
} // namespace eccodes::geo

1104
src/eccodes/geo/GribSpec.cc Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,63 @@
/*
* (C) Copyright 2024- 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 "eccodes.h"
#include <string>
#include <vector>
#include "eckit/geo/Spec.h"
#include "eckit/geo/spec/Custom.h"
namespace eccodes::geo
{
bool codes_check_error(int e, const char* call);
class GribSpec final : public eckit::geo::Spec
{
public:
explicit GribSpec(codes_handle*);
bool has(const std::string& name) const override;
bool get(const std::string& name, std::string& value) const override;
bool get(const std::string& name, bool& value) const override;
bool get(const std::string& name, int& value) const override;
bool get(const std::string& name, long& value) const override;
bool get(const std::string& name, long long& value) const override;
bool get(const std::string& name, size_t& value) const override;
bool get(const std::string& name, float& value) const override;
bool get(const std::string& name, double& value) const override;
bool get(const std::string& name, std::vector<int>& value) const override;
bool get(const std::string& name, std::vector<long>& value) const override;
bool get(const std::string& name, std::vector<long long>& value) const override;
bool get(const std::string& name, std::vector<size_t>& value) const override;
bool get(const std::string& name, std::vector<float>& value) const override;
bool get(const std::string& name, std::vector<double>& value) const override;
bool get(const std::string& name, std::vector<std::string>& value) const override;
private:
mutable eckit::geo::spec::Custom cache_;
codes_handle* handle_;
void json(eckit::JSON&) const final;
};
} // namespace eccodes::geo

View File

@ -12,6 +12,19 @@
* Jean Baptiste Filippi - 01.11.2005 *
***************************************************************************/
#include "eccodes_config.h"
#if defined(HAVE_ECKIT_GEO)
#include "eckit/runtime/Main.h"
#include "eccodes/geo/GeoIterator.h"
// eccodes macros conflict with eckit
#ifdef Assert
#undef Assert
#endif
#endif
#include "grib_iterator.h"
#include "grib_iterator_factory.h"
#include "accessor/grib_accessor_class_iterator.h"
@ -95,7 +108,29 @@ int grib_iterator_destroy(grib_context* c, grib_iterator* i)
grib_iterator* grib_iterator_new(const grib_handle* ch, unsigned long flags, int* error)
{
grib_iterator* i = (grib_iterator*)grib_context_malloc_clear(ch->context, sizeof(grib_iterator));
i->iterator = eccodes::geo_iterator::gribIteratorNew(ch, flags, error);
#if defined(HAVE_ECKIT_GEO)
static const auto* eckit_geo = codes_getenv("ECCODES_ECKIT_GEO");
if (eckit_geo != nullptr && strcmp(eckit_geo, "1") == 0) {
struct InitMain
{
InitMain()
{
if (!eckit::Main::ready()) {
static char* argv[]{ const_cast<char*>("grib_iterator_new") };
eckit::Main::initialise(1, argv);
}
}
} static const init_main;
i->iterator = new eccodes::geo::GeoIterator(const_cast<grib_handle*>(ch), flags);
}
else
#endif
{
i->iterator = eccodes::geo_iterator::gribIteratorNew(ch, flags, error);
}
if (!i->iterator) {
grib_context_free(ch->context, i);
return NULL;

View File

@ -39,9 +39,15 @@ int main(int argc, char* argv[])
GRIB_CHECK(grib_get_native_type(h, name, &type), 0);
Assert( type > 0 && type < 7 );
int ktype = grib_keys_iterator_get_native_type(kiter);
Assert(type == ktype);
if (type != ktype) {
fprintf(stderr, "ERROR: key=%s type=%s ktype=%s\n", name, grib_get_type_name(type), grib_get_type_name(ktype));
return 1;
}
const char* type_name = grib_get_type_name(type);
Assert( !STR_EQUAL(type_name, "unknown") );
if (STR_EQUAL(type_name, "unknown")) {
fprintf(stderr, "ERROR: key=%s type is unknown!\n", name);
return 1;
}
printf("%s = %s (%d)\n", name, type_name, type);
if (STR_EQUAL(type_name, "label")) {

View File

@ -24,6 +24,9 @@ ecbuild_add_library( TARGET ecc_tools
NOINSTALL
SOURCES ${ecc_tools_sources}
PRIVATE_LIBS eccodes )
if( eccodes_HAVE_ECKIT_GEO )
target_link_libraries( ecc_tools PRIVATE eckit )
endif()
# tools binaries
list( APPEND ecc_tools_binaries

View File

@ -9,9 +9,14 @@
*/
#include "grib_tools.h"
#include <stdlib.h>
#include <string>
#ifdef HAVE_ECKIT_GEO
#include "eckit/runtime/Main.h"
#endif
#if HAVE_LIBJASPER
/* Remove compiler warnings re macros being redefined */
#undef PACKAGE_BUGREPORT
@ -141,6 +146,10 @@ static grib_handle* grib_handle_new_from_file_x(grib_context* c, FILE* f, int mo
int grib_tool(int argc, char** argv)
{
#ifdef HAVE_ECKIT_GEO
eckit::Main::initialise(argc, argv);
#endif
int ret = 0;
int i = 0;
grib_context* c = grib_context_get_default();