Definitions: GRIB2 Template 4.88 - local time

This commit is contained in:
Shahram Najm 2021-01-28 16:47:59 +00:00
parent a05cb7807d
commit 8df007a769
5 changed files with 67 additions and 7 deletions

View File

@ -0,0 +1,22 @@
# (C) Copyright 2005- ECMWF.
# TEMPLATE 4.88, Analysis or Forecast at a horizontal level or in a horizontal layer at a local time
codetable[1] parameterCategory ('4.1.[discipline:l].table',masterDir,localDir) : dump;
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;
codetable[1] typeOfGeneratingProcess ('4.3.table',masterDir,localDir) : dump;
unsigned[1] backgroundProcess = 255 : edition_specific;
alias backgroundGeneratingProcessIdentifier=backgroundProcess;
unsigned[1] generatingProcessIdentifier : dump;
#Cannot include this as it has keys we do not need e.g. minutesAfterDataCutoff
#Also forecastTime will be used in the localtime template
#include "grib2/template.4.parameter.def"
include "grib2/template.4.horizontal.def"
include "grib2/template.4.localtime.def"

View File

@ -0,0 +1,43 @@
# (C) Copyright 2005- ECMWF.
# Method used to calculate the field value at the local time specified in section 1
codetable[1] localTimeMethod ('4.248.table',masterDir,localDir)=255 : dump;
# n - number of Forecasts used in Local Time
unsigned[1] numberOfForecastsUsedInLocalTime : dump;
localTimeForecastList list(numberOfForecastsUsedInLocalTime)
{
# Year of Forecast used in Local Time
unsigned[2] yearOfForecastUsedInLocalTime=0 : dump, edition_specific;
# Month of Forecast used in Local Time
unsigned[1] monthOfForecastUsedInLocalTime=0 : dump, edition_specific;
# Day of Forecast used in Local Time
unsigned[1] dayOfForecastUsedInLocalTime=0 : dump, edition_specific;
# Hour of Forecast used in Local Time
unsigned[1] hourOfForecastUsedInLocalTime=0 : dump, edition_specific;
# Minute of Forecast used in Local Time
unsigned[1] minuteOfForecastUsedInLocalTime=0 : dump, edition_specific;
# Second of Forecast used in Local Time
unsigned[1] secondOfForecastUsedInLocalTime=0 : dump, edition_specific;
# Indicator of unit of time for ForecastTime
codetable[1] indicatorOfUnitForForecastTime ('4.4.table',masterDir,localDir)=1 : dump;
# Length of the time range over which statistical processing is done, in units defined by the previous octet
unsigned[4] forecastTime=0 : dump;
# Number of time increments of Forecast used in Local Time
unsigned[1] numberOfTimeIncrementsOfForecastsUsedInLocalTime=1 : dump;
# Indicator of unit of time for the increment between the successive steps used
codetable[1] indicatorOfUnitForTimeIncrement ('4.4.table',masterDir,localDir)=255 : dump;
# Time increment between successive fields, in units defined by the previous octet
unsigned[4] timeIncrement=0 : dump;
}

View File

@ -1,8 +1,6 @@
# (C) Copyright 2005- ECMWF.
# TEMPLATE 7.2, Grid point data - complex packing
# Octets 6-xx : NG group reference values
# (XI in the decoding formula)
position offsetBeforeData;

View File

@ -1,9 +1,6 @@
# (C) Copyright 2005- ECMWF.
# TEMPLATE 7.3, Grid point data - complex packing and spatial differencing
# Octets 6-ww : First value(s) of original
# (undifferenced)
# ???? first_value_s_of_original
position offsetBeforeData;

View File

@ -21,8 +21,8 @@ sample2=$ECCODES_SAMPLES_PATH/GRIB2.tmpl
# Template 4.88
# -------------
# TODO: Add tablesVersion later...
#grib_set -s productDefinitionTemplateNumber=88,numberOfForecastsUsedInLocalTime=1 $sample2 $temp
#grib_check_key_equals $temp localTimeMethod 255
grib_set -s productDefinitionTemplateNumber=88,numberOfForecastsUsedInLocalTime=1 $sample2 $temp
grib_check_key_equals $temp localTimeMethod 255
# Templates 4.76 -> 4.79, 4.80 -> 4.83
# -------------------------------------