From 3ac390825c87a8dd2135bab02e14127a26d01c22 Mon Sep 17 00:00:00 2001 From: Robert Osinski Date: Fri, 6 Sep 2024 09:57:23 +0000 Subject: [PATCH 1/3] ECC-1915: GRIB2 CMCC origin for class=ci --- definitions/mars/grib.mmsa.em.def | 2 +- definitions/mars/grib.mmsa.fcmean.def | 2 +- definitions/mars/grib.mmsf.an.def | 2 +- definitions/mars/grib.mmsf.fc.def | 2 +- definitions/mars/grib.msmm.em.def | 2 +- definitions/mars/grib.msmm.fcmax.def | 2 +- definitions/mars/grib.msmm.fcmean.def | 2 +- definitions/mars/grib.msmm.fcmin.def | 2 +- definitions/mars/grib.msmm.fcstdev.def | 2 +- definitions/mars/grib.msmm.hcmean.def | 18 +++++++++++++++++- 10 files changed, 26 insertions(+), 10 deletions(-) mode change 120000 => 100644 definitions/mars/grib.msmm.hcmean.def diff --git a/definitions/mars/grib.mmsa.em.def b/definitions/mars/grib.mmsa.em.def index 6d152901b..a4e6f175f 100644 --- a/definitions/mars/grib.mmsa.em.def +++ b/definitions/mars/grib.mmsa.em.def @@ -6,7 +6,7 @@ if (class is "od") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.mmsa.fcmean.def b/definitions/mars/grib.mmsa.fcmean.def index f828d5a8c..213517b04 100644 --- a/definitions/mars/grib.mmsa.fcmean.def +++ b/definitions/mars/grib.mmsa.fcmean.def @@ -8,7 +8,7 @@ if (class is "od") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.mmsf.an.def b/definitions/mars/grib.mmsf.an.def index 86ccb55b5..20e418ce5 100644 --- a/definitions/mars/grib.mmsf.an.def +++ b/definitions/mars/grib.mmsf.an.def @@ -15,7 +15,7 @@ if (class isnot "gw") { # ECC-1448 } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.mmsf.fc.def b/definitions/mars/grib.mmsf.fc.def index 30b2f7394..6fe01e2a6 100644 --- a/definitions/mars/grib.mmsf.fc.def +++ b/definitions/mars/grib.mmsf.fc.def @@ -18,7 +18,7 @@ if (class isnot "gw") { # ECC-1448 } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.em.def b/definitions/mars/grib.msmm.em.def index 3131d45a7..663003e8e 100644 --- a/definitions/mars/grib.msmm.em.def +++ b/definitions/mars/grib.msmm.em.def @@ -11,7 +11,7 @@ if (class is "en") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.fcmax.def b/definitions/mars/grib.msmm.fcmax.def index 573343213..b548cbdc0 100644 --- a/definitions/mars/grib.msmm.fcmax.def +++ b/definitions/mars/grib.msmm.fcmax.def @@ -12,7 +12,7 @@ if (class is "en") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.fcmean.def b/definitions/mars/grib.msmm.fcmean.def index a13ca9918..c532f33fd 100644 --- a/definitions/mars/grib.msmm.fcmean.def +++ b/definitions/mars/grib.msmm.fcmean.def @@ -13,7 +13,7 @@ if (class is "c3") { alias mars.system = systemNumber; } if (class is "ci") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.fcmin.def b/definitions/mars/grib.msmm.fcmin.def index 59f10189a..c052e512e 100644 --- a/definitions/mars/grib.msmm.fcmin.def +++ b/definitions/mars/grib.msmm.fcmin.def @@ -12,7 +12,7 @@ if (class is "en") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.fcstdev.def b/definitions/mars/grib.msmm.fcstdev.def index f4b8c2414..20b330ba3 100644 --- a/definitions/mars/grib.msmm.fcstdev.def +++ b/definitions/mars/grib.msmm.fcstdev.def @@ -13,7 +13,7 @@ if (class is "en") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.hcmean.def b/definitions/mars/grib.msmm.hcmean.def deleted file mode 120000 index 0b5cb2f13..000000000 --- a/definitions/mars/grib.msmm.hcmean.def +++ /dev/null @@ -1 +0,0 @@ -grib.msmm.em.def \ No newline at end of file diff --git a/definitions/mars/grib.msmm.hcmean.def b/definitions/mars/grib.msmm.hcmean.def new file mode 100644 index 000000000..6e1de7002 --- /dev/null +++ b/definitions/mars/grib.msmm.hcmean.def @@ -0,0 +1,17 @@ +# assert(16); +alias mars.fcmonth = marsForecastMonth; +unalias mars.step; + +alias mars.origin = centre; +alias mars.method = methodNumber; + +if (class is "od") { alias mars.system = systemNumber; } +if (class is "me") { alias mars.system = systemNumber; } +if (class is "en") { alias mars.system = systemNumber; } +if (class is "c3") { alias mars.system = systemNumber; } + +# See ECC-624 +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci" (class is "c3" || class is "ci")) { + constant cnmc_cmcc = 'cmcc'; + alias mars.origin = cnmc_cmcc; +} From 87992950b85cc06506b70bc392b2fa3ca1bb302f Mon Sep 17 00:00:00 2001 From: Robert Osinski Date: Fri, 6 Sep 2024 10:34:37 +0000 Subject: [PATCH 2/3] ECC-1915: unalias mars.method for class cerise --- definitions/mars/grib.mmsa.em.def | 3 +++ definitions/mars/grib.mmsa.fcmean.def | 3 +++ definitions/mars/grib.msmm.em.def | 3 +++ definitions/mars/grib.msmm.fcmax.def | 3 +++ definitions/mars/grib.msmm.fcmin.def | 2 ++ definitions/mars/grib.msmm.fcstdev.def | 2 ++ definitions/mars/grib.msmm.hcmean.def | 2 ++ 7 files changed, 18 insertions(+) diff --git a/definitions/mars/grib.mmsa.em.def b/definitions/mars/grib.mmsa.em.def index a4e6f175f..36ac9adc5 100644 --- a/definitions/mars/grib.mmsa.em.def +++ b/definitions/mars/grib.mmsa.em.def @@ -10,3 +10,6 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } + diff --git a/definitions/mars/grib.mmsa.fcmean.def b/definitions/mars/grib.mmsa.fcmean.def index 213517b04..3b7f185b3 100644 --- a/definitions/mars/grib.mmsa.fcmean.def +++ b/definitions/mars/grib.mmsa.fcmean.def @@ -12,3 +12,6 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } + diff --git a/definitions/mars/grib.msmm.em.def b/definitions/mars/grib.msmm.em.def index 663003e8e..86376c834 100644 --- a/definitions/mars/grib.msmm.em.def +++ b/definitions/mars/grib.msmm.em.def @@ -15,3 +15,6 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } + diff --git a/definitions/mars/grib.msmm.fcmax.def b/definitions/mars/grib.msmm.fcmax.def index b548cbdc0..b64b923a1 100644 --- a/definitions/mars/grib.msmm.fcmax.def +++ b/definitions/mars/grib.msmm.fcmax.def @@ -16,3 +16,6 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } + diff --git a/definitions/mars/grib.msmm.fcmin.def b/definitions/mars/grib.msmm.fcmin.def index c052e512e..158383e2c 100644 --- a/definitions/mars/grib.msmm.fcmin.def +++ b/definitions/mars/grib.msmm.fcmin.def @@ -16,3 +16,5 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } diff --git a/definitions/mars/grib.msmm.fcstdev.def b/definitions/mars/grib.msmm.fcstdev.def index 20b330ba3..3a563515b 100644 --- a/definitions/mars/grib.msmm.fcstdev.def +++ b/definitions/mars/grib.msmm.fcstdev.def @@ -17,3 +17,5 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } diff --git a/definitions/mars/grib.msmm.hcmean.def b/definitions/mars/grib.msmm.hcmean.def index 6e1de7002..8fc0cda27 100644 --- a/definitions/mars/grib.msmm.hcmean.def +++ b/definitions/mars/grib.msmm.hcmean.def @@ -15,3 +15,5 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci" (class is constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } From 1ffdb64b7ddb5d65a7baf512518c8452f054297b Mon Sep 17 00:00:00 2001 From: Robert Osinski Date: Fri, 6 Sep 2024 10:41:30 +0000 Subject: [PATCH 3/3] correction of typos --- definitions/mars/grib.msmm.hcmean.def | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/definitions/mars/grib.msmm.hcmean.def b/definitions/mars/grib.msmm.hcmean.def index 8fc0cda27..cbdd6704a 100644 --- a/definitions/mars/grib.msmm.hcmean.def +++ b/definitions/mars/grib.msmm.hcmean.def @@ -11,7 +11,7 @@ if (class is "en") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci" (class is "c3" || class is "ci")) { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; }