diff --git a/definitions/grib2/template.4.119.def b/definitions/grib2/template.4.119.def new file mode 100644 index 000000000..ef464a00f --- /dev/null +++ b/definitions/grib2/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/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.120.def b/definitions/grib2/template.4.120.def new file mode 100644 index 000000000..9ad2f90bd --- /dev/null +++ b/definitions/grib2/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/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 new file mode 100644 index 000000000..73bba193b --- /dev/null +++ b/definitions/grib2/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/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 new file mode 100644 index 000000000..40bf98240 --- /dev/null +++ b/definitions/grib2/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/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 new file mode 100644 index 000000000..a70b9643c --- /dev/null +++ b/definitions/grib2/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/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.focalStatistics.def b/definitions/grib2/template.4.focalStatistics.def new file mode 100644 index 000000000..8aa8d2a33 --- /dev/null +++ b/definitions/grib2/template.4.focalStatistics.def @@ -0,0 +1,34 @@ +codetable[1] spatialVicinityType ('4.103.table',masterDir,localDir)=255 ; + +unsigned[1] numberOfSpatialVicinityValues = 1 : edition_specific; +alias nspatvals = numberOfSpatialVicinityValues; + +spatialVicintiyList list(numberOfSpatialVicinityValues) +{ + # n-th spatial vicinity value + unsigned[4] spatialVicinityValue=0 : dump; +} + +codetable[1] spatialVicinityProcessing ('4.104.table',masterDir,localDir)=255 ; + +signed[2] spatialVicinityProcessingArgument1 = 255 : dump ; + +signed[2] spatialVicinityProcessingArgument2 = 255 : dump ; + +codetable[1] spatialVicinityMissingData ('4.105.table',masterDir,localDir)=0 ; + +## UUID of irregular kernel +#byte[16] uuidOfIrregularKernel : dump; + +## UUID of spatial vicinity weights +#byte[16] uuidOfSpatialVicinityWeights : dump; + +codetable[1] temporalVicinityProcessing ('4.104.table',masterDir,localDir)=255 ; + +codetable[1] temporalVicinityUnit ('4.4.table',masterDir,localDir)=255 ; + +unsigned[4] temporalVicinityTowardsPast : dump; +unsigned[4] temporalVicinityTowardsFuture : dump; + +## UUID of temporal vicinity weights +#byte[16] uuidOfTemporalVicinityWeights : dump; diff --git a/definitions/grib2/template.4.probabilityLargeEnsemble.def b/definitions/grib2/template.4.probabilityLargeEnsemble.def new file mode 100644 index 000000000..cb309e4a9 --- /dev/null +++ b/definitions/grib2/template.4.probabilityLargeEnsemble.def @@ -0,0 +1,27 @@ +# (C) Copyright 2005- ECMWF. + +# Type of ensemble forecast +codetable[1] typeOfEnsembleForecast ('4.6.table',masterDir,localDir) = 255 : dump; + +# Number of forecasts in ensemble +unsigned[4] numberOfForecastsInEnsemble : dump; +alias totalNumber=numberOfForecastsInEnsemble; + +unsigned[1] forecastProbabilityNumber : dump; + +unsigned[1] totalNumberOfForecastProbabilities : dump; + +codetable[1] probabilityType ('4.9.table',masterDir,localDir) : dump; +meta probabilityTypeName codetable_title(probabilityType): read_only; + +signed[1] scaleFactorOfLowerLimit : can_be_missing,dump ; +signed[4] scaledValueOfLowerLimit : can_be_missing,dump ; + +meta lowerLimit from_scale_factor_scaled_value( + scaleFactorOfLowerLimit, scaledValueOfLowerLimit): can_be_missing; + +signed[1] scaleFactorOfUpperLimit : can_be_missing,dump; +signed[4] scaledValueOfUpperLimit : can_be_missing,dump; + +meta upperLimit from_scale_factor_scaled_value( + scaleFactorOfUpperLimit, scaledValueOfUpperLimit): can_be_missing;