eccodes-data-grib2
Version:
GRIB2 format data for eccodes-lib
110 lines (91 loc) • 2.55 kB
Plain Text
# Copyright 2005-2018 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.
#
# Uncertainties in ensembles of regional re-analysis project (UERRA)
constant marsClass = 'ur';
alias tigge_short_name=shortName;
alias short_name=shortName;
alias parameter=paramId;
alias tigge_name=name;
alias parameter.paramId=paramId;
alias parameter.shortName=shortName;
alias parameter.units=units;
alias parameter.name=name;
# Special UERRA rule for level type 103 'Specified height level above ground (m)'
if(typeOfFirstFixedSurface == 103) {
# only the parameters above 10m
if (level > 10) {
constant heightLevelName = 'hl';
alias mars.levtype = heightLevelName;
# levelist was unaliased in template.4.horizontal.def so we must have it back
alias mars.levelist = level;
}
}
if(typeOfFirstFixedSurface == 118) {
constant levTypeName = 'ml';
alias mars.levtype = levTypeName;
}
if(typeOfFirstFixedSurface == 151 && typeOfSecondFixedSurface == 151) {
alias level = bottomLevel;
alias mars.levelist = level;
}
alias mars.expver = marsExpver;
alias mars.class = marsClass;
alias mars.param = paramId;
alias mars.origin = centre;
# See GRIB-911 re typeOfProcessedData values in UERRA
concept marsType {
fc = {
typeOfProcessedData = 1;
}
"9" = {
typeOfProcessedData = 1;
}
an = {
typeOfProcessedData = 0;
}
"2" = {
typeOfProcessedData = 0;
}
# See ECC-456. Special rule for Swedish data
# oi is Optimal Interpolation
oi = {
centre = 82;
typeOfGeneratingProcess = 0;
generatingProcessIdentifier = 50;
}
"4" = {
centre = 82;
typeOfGeneratingProcess = 0;
generatingProcessIdentifier = 50;
}
"default" = {
dummyc = 0;
}
}
# See GRIB-205 re no_copy
# Cannot use typeOfProcessedData for stream. See GRIB-911
concept marsStream {
oper = {
productDefinitionTemplateNumber = 8;
}
oper = {
productDefinitionTemplateNumber = 0;
}
enda = {
productDefinitionTemplateNumber = 11;
}
enda = {
productDefinitionTemplateNumber = 1;
}
"default" = {
dummyc = 0;
}
} : no_copy;
alias mars.stream = marsStream;
alias mars.type = marsType;