diff --git a/definitions/grib2/template.4.45.def b/definitions/grib2/template.4.45.def index 1820766c4..6c48d108e 100644 --- a/definitions/grib2/template.4.45.def +++ b/definitions/grib2/template.4.45.def @@ -2,7 +2,11 @@ # 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_aerosol.def" +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 index 844258874..445b16231 100644 --- a/definitions/grib2/template.4.46.def +++ b/definitions/grib2/template.4.46.def @@ -2,6 +2,10 @@ # 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_aerosol.def" +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 index 05a081a24..64c222032 100644 --- a/definitions/grib2/template.4.47.def +++ b/definitions/grib2/template.4.47.def @@ -3,7 +3,11 @@ # 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. -include "grib2/template.4.parameter_aerosol.def" +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.85.def b/definitions/grib2/template.4.85.def index 0a41b3239..b6afd6e69 100644 --- a/definitions/grib2/template.4.85.def +++ b/definitions/grib2/template.4.85.def @@ -1,7 +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/template.4.parameter_aerosol.def" + +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.aerosol.def b/definitions/grib2/template.4.aerosol.def new file mode 100644 index 000000000..dca13f766 --- /dev/null +++ b/definitions/grib2/template.4.aerosol.def @@ -0,0 +1,4 @@ +# (C) Copyright 2005- ECMWF. + +# Atmospheric chemical or physical constitutent type +codetable[2] aerosolType ('4.233.table',masterDir,localDir) : dump; diff --git a/definitions/grib2/template.4.aerosol_size.def b/definitions/grib2/template.4.aerosol_size.def new file mode 100644 index 000000000..a5c9de676 --- /dev/null +++ b/definitions/grib2/template.4.aerosol_size.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +codetable[1] typeOfSizeInterval ('4.91.table',masterDir,localDir) : dump; +alias typeOfIntervalForFirstAndSecondSize=typeOfSizeInterval; + +# Size in metres +signed[1] scaleFactorOfFirstSize : dump; +signed[4] scaledValueOfFirstSize :dump; +signed[1] scaleFactorOfSecondSize = missing() : can_be_missing,dump; +signed[4] scaledValueOfSecondSize = missing() : can_be_missing,dump; diff --git a/definitions/grib2/template.4.parameter_aerosol.def b/definitions/grib2/template.4.parameter_aerosol.def deleted file mode 100644 index 4b37fb597..000000000 --- a/definitions/grib2/template.4.parameter_aerosol.def +++ /dev/null @@ -1,48 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# Parameter category -codetable[1] parameterCategory ('4.1.[discipline:l].table',masterDir,localDir) : dump; - -# Parameter number -codetable[1] parameterNumber ('4.2.[discipline:l].[parameterCategory:l].table',masterDir,localDir) : dump; -meta parameterUnits codetable_units(parameterNumber) : dump; -meta parameterName codetable_title(parameterNumber) : dump; - -# Atmospheric chemical or physical constitutent type -codetable[2] aerosolType ('4.233.table',masterDir,localDir) : dump; - -codetable[1] typeOfSizeInterval ('4.91.table',masterDir,localDir) : dump; -alias typeOfIntervalForFirstAndSecondSize=typeOfSizeInterval; - -# Size in metres -signed[1] scaleFactorOfFirstSize : dump; -signed[4] scaledValueOfFirstSize :dump; -signed[1] scaleFactorOfSecondSize = missing() : can_be_missing,dump; -signed[4] scaledValueOfSecondSize = missing() : can_be_missing,dump; - -# Type of generating process -codetable[1] typeOfGeneratingProcess ('4.3.table',masterDir,localDir) : dump; - -# Background generating process identifier (defined by originating centre) -unsigned[1] backgroundProcess = 255 : edition_specific; -alias backgroundGeneratingProcessIdentifier=backgroundProcess; - -# Analysis or forecast generating processes identifier (defined by originating centre) -unsigned[1] generatingProcessIdentifier : dump; - -# Hours of observational data cut-off after reference time -unsigned[2] hoursAfterDataCutoff = missing() : edition_specific,can_be_missing; -alias hoursAfterReferenceTimeOfDataCutoff=hoursAfterDataCutoff; - -# Minutes of observational data cut-off after reference time -unsigned[1] minutesAfterDataCutoff = missing() : edition_specific,can_be_missing; -alias minutesAfterReferenceTimeOfDataCutoff=minutesAfterDataCutoff; - -# Indicator of unit of time range -codetable[1] indicatorOfUnitOfTimeRange ('4.4.table',masterDir,localDir) : dump; -alias defaultStepUnits = one; # 1 means Hour. See code table 4.4 -template_nofail default_step_units "grib2/localConcepts/[centre:s]/default_step_units.def"; -codetable[1] stepUnits 'stepUnits.table' = defaultStepUnits : transient,dump,no_copy; - -# Forecast time in units defined by previous octet (GRIB-29: supports negative forecast time) -signed[4] forecastTime : dump;