Added necessary local definition files to support new keys for Destination Earth layout.

This commit is contained in:
Matthew Griffith 2023-08-10 16:25:52 +00:00
parent 15d9df4e47
commit debc4b674a
7 changed files with 102 additions and 0 deletions

View File

@ -0,0 +1 @@
1 1 MARS labeling

View File

@ -0,0 +1,3 @@
0 unknown unknown
1 climate-dt Climate change adaptation digital twin
2 extremes-dt Weather and geophysical extremes digital twin

View File

@ -0,0 +1,5 @@
0 unknown unknown
1 IFS-NEMO IFS with NEMO ocean model
2 IFS-FESOM IFS with FESOM ocean model
3 ICON ICON with no ocean model
4 ICON-FESOM ICON with FESOM ocean model

View File

@ -0,0 +1,10 @@
# DestinE MARS keywords
ksec1expver[4] experimentVersionNumber = "zzzz" : dump;
alias marsExpver = experimentVersionNumber ;
codetable[2] dataset "grib2/destine_dataset.table" : dump;
alias mars.dataset = dataset;
codetable[2] model "grib2/destine_model.table" : dump;
alias mars.model = model;

View File

@ -0,0 +1,7 @@
# (C) Copyright 2005- ECMWF.
# Destination Earth (DestinE)
constant marsClass = 'd1';
include "grib2/products_destine.def"

View File

@ -0,0 +1,7 @@
# (C) Copyright 2005- ECMWF.
# Destination Earth (DestinE)
constant marsClass = 'd2';
include "grib2/products_destine.def"

View File

@ -0,0 +1,69 @@
# (C) Copyright 2005- ECMWF.
alias mars.expver = experimentVersionNumber;
alias parameter.paramId=paramId;
alias parameter.shortName=shortName;
alias parameter.units=units;
alias parameter.name=name;
alias mars.class = marsClass;
alias mars.param = paramId;
alias mars.origin = centre;
# 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;
}
}
concept marsType(unknown) {
fc = {
typeOfProcessedData = 1;
}
"9" = {
typeOfProcessedData = 1;
}
an = {
typeOfProcessedData = 0;
}
"2" = {
typeOfProcessedData = 0;
}
}
alias mars.type = marsType;
concept marsStream(unknown) {
oper = {
productDefinitionTemplateNumber = 8;
}
oper = {
productDefinitionTemplateNumber = 0;
}
enda = {
productDefinitionTemplateNumber = 11;
}
enda = {
productDefinitionTemplateNumber = 1;
}
} : no_copy;
alias mars.stream = marsStream;
if (stepType is "avg" || stepType is "accum") {
alias mars.step = stepRange;
}
else {
alias mars.step = step;
}