From f7bdc1331bb04347860469ef7caf71372938b20e Mon Sep 17 00:00:00 2001 From: Matthew Griffith <93525584+mjg41@users.noreply.github.com> Date: Mon, 18 Nov 2024 12:57:03 +0000 Subject: [PATCH] ECC-1971: Support for NextGEMS dataset (#270) * ECC-1971: Added NextGEMS pseudocentre and edited spacing * ECC-1971: NextGEMS support levtype hl for >10m --- .../nextgems/marsLevtypeConcept.def | 83 +++++++++++++++++++ definitions/grib2/section.4.def | 51 ++++++------ 2 files changed, 109 insertions(+), 25 deletions(-) create mode 100644 definitions/grib2/localConcepts/nextgems/marsLevtypeConcept.def diff --git a/definitions/grib2/localConcepts/nextgems/marsLevtypeConcept.def b/definitions/grib2/localConcepts/nextgems/marsLevtypeConcept.def new file mode 100644 index 000000000..17529e6cf --- /dev/null +++ b/definitions/grib2/localConcepts/nextgems/marsLevtypeConcept.def @@ -0,0 +1,83 @@ +# Concept marsLevtype +'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=8;} +'o2d' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=9;} +'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=162;} +'sfc' = {typeOfFirstFixedSurface=2; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=7; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=8; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=17; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=18; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=19; typeOfSecondFixedSurface=255;} +'o2d' = {discipline=10; typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;} +'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=255;} +'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=100;} +'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=100; + scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=80000;} +'sfc' = {typeOfFirstFixedSurface=100; scaleFactorOfFirstFixedSurface=0; scaledValueOfFirstFixedSurface=80000; + typeOfSecondFixedSurface=100; scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=45000;} +'sfc' = {typeOfFirstFixedSurface=100; scaleFactorOfFirstFixedSurface=0; + scaledValueOfFirstFixedSurface=45000; typeOfSecondFixedSurface=8;} +'sfc' = {typeOfFirstFixedSurface=101; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=102; typeOfSecondFixedSurface=255;} +'hl' = {typeOfFirstFixedSurface=103; typeOfSecondFixedSurface=255;} +'hl' = {typeOfFirstFixedSurface=103; typeOfSecondFixedSurface=103;} +'sfc' = {typeOfFirstFixedSurface=103; scaleFactorOfFirstFixedSurface=0; scaledValueOfFirstFixedSurface=0; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=103; scaleFactorOfFirstFixedSurface=0; scaledValueOfFirstFixedSurface=2; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=103; scaleFactorOfFirstFixedSurface=0; scaledValueOfFirstFixedSurface=10; typeOfSecondFixedSurface=255;} +'ml' = {typeOfFirstFixedSurface=105; typeOfSecondFixedSurface=255;} +'ml' = {typeOfFirstFixedSurface=105; typeOfSecondFixedSurface=105;} +'sfc' = {typeOfFirstFixedSurface=106; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=106;typeOfSecondFixedSurface=106;} +'pt' = {typeOfFirstFixedSurface=107; typeOfSecondFixedSurface=255;} +'pt' = {typeOfFirstFixedSurface=107; typeOfSecondFixedSurface=107;} +'pv' = {typeOfFirstFixedSurface=109; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=114; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=114; typeOfSecondFixedSurface=114;} +'hhl' = {typeOfFirstFixedSurface=118; typeOfSecondFixedSurface=255;} +'hpl' = {typeOfFirstFixedSurface=119; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=151; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=151; typeOfSecondFixedSurface=151;} +'sol' = {typeOfFirstFixedSurface=152; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=152; typeOfSecondFixedSurface=152;} +'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=160; scaleFactorOfFirstFixedSurface=0; + scaledValueOfFirstFixedSurface=0; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=160;} +'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=9;} +'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=20; + scaledValueOfFirstFixedSurface=0; scaleFactorOfFirstFixedSurface=0;} +'sfc' = {typeOfFirstFixedSurface=162; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=166; typeOfSecondFixedSurface=255;} +'o3d' = {typeOfFirstFixedSurface=168; typeOfSecondFixedSurface=255;} +'o3d' = {typeOfFirstFixedSurface=168; typeOfSecondFixedSurface=168;} +'o2d' = {typeOfFirstFixedSurface=169; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=170; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=171; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=173; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=173; typeOfSecondFixedSurface=175;} +'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=255; discipline=1;} +'o2d' = {typeOfFirstFixedSurface=175; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=176; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=160; + scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=0;} +'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=176;} +'sfc' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=176; discipline=1;} +'o2d' = {typeOfFirstFixedSurface=175; typeOfSecondFixedSurface=176;} +'sfc' = {typeOfFirstFixedSurface=177; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=188; typeOfSecondFixedSurface=189;} + +'sfc' = {typeOfFirstFixedSurface=5; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=14; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=16; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=151;} +'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=167;} +'sol' = {typeOfFirstFixedSurface=185; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=185; typeOfSecondFixedSurface=185;} +'sol' = {typeOfFirstFixedSurface=186; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=186; typeOfSecondFixedSurface=186;} +'sol' = {typeOfFirstFixedSurface=187; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=187; typeOfSecondFixedSurface=187;} +'sfc' = {typeOfFirstFixedSurface=187; typeOfSecondFixedSurface=185;} diff --git a/definitions/grib2/section.4.def b/definitions/grib2/section.4.def index 96bd22720..67eb0120b 100644 --- a/definitions/grib2/section.4.def +++ b/definitions/grib2/section.4.def @@ -24,33 +24,34 @@ if (centre==7 || centre==46) { } concept datasetForLocal(unknown) { - "tigge" = {productionStatusOfProcessedData=4;} - "tigge" = {productionStatusOfProcessedData=5;} - "s2s" = {productionStatusOfProcessedData=6;} - "s2s" = {productionStatusOfProcessedData=7;} - "cerise" = {marsClass="ci";} - "era6" = {marsClass="e6";} # for ERA6 parameters with constituentType - "hydro" = {marsClass="ce";} # EFAS/GLOFAS - "hydro" = {marsClass="ul";} # ULYSSES - "fire" = {marsClass="gw";} # Global Wildfire awareness system - "uerra" = {productionStatusOfProcessedData=8;} # UERRA - "uerra" = {productionStatusOfProcessedData=9;} - "uerra" = {productionStatusOfProcessedData=10;} # CARRA/CERRA - "uerra" = {productionStatusOfProcessedData=11;} - "destine" = {productionStatusOfProcessedData=12;} # Destination Earth - "destine" = {productionStatusOfProcessedData=13;} + "tigge" = {productionStatusOfProcessedData=4;} + "tigge" = {productionStatusOfProcessedData=5;} + "s2s" = {productionStatusOfProcessedData=6;} + "s2s" = {productionStatusOfProcessedData=7;} + "cerise" = {marsClass="ci";} + "era6" = {marsClass="e6";} # for ERA6 parameters with constituentType + "hydro" = {marsClass="ce";} # EFAS/GLOFAS + "hydro" = {marsClass="ul";} # ULYSSES + "fire" = {marsClass="gw";} # Global Wildfire awareness system + "uerra" = {productionStatusOfProcessedData=8;} # UERRA + "uerra" = {productionStatusOfProcessedData=9;} + "uerra" = {productionStatusOfProcessedData=10;} # CARRA/CERRA + "uerra" = {productionStatusOfProcessedData=11;} + "destine" = {productionStatusOfProcessedData=12;} # Destination Earth + "destine" = {productionStatusOfProcessedData=13;} "destinegen1" = {productionStatusOfProcessedData=12;generation=1;} # DestinE ClimateDT Generation 1 "destinegen1" = {productionStatusOfProcessedData=13;generation=1;} - "era" = {marsClass="e2";} - "era" = {marsClass="e4";} - "era" = {marsClass="ea";} - "era" = {marsClass="ei";} - "era" = {marsClass="em";} - "era" = {marsClass="ep";} - "era" = {marsClass="er";} - "era" = {marsClass="et";} - "era" = {marsClass="l5";} - "unknown" = { dummy=1; } + "era" = {marsClass="e2";} + "era" = {marsClass="e4";} + "era" = {marsClass="ea";} + "era" = {marsClass="ei";} + "era" = {marsClass="em";} + "era" = {marsClass="ep";} + "era" = {marsClass="er";} + "era" = {marsClass="et";} + "era" = {marsClass="l5";} + "nextgems" = {marsClass="ng";} + "unknown" = { dummy=1; } } if (datasetForLocal isnot "unknown") {