diff --git a/definitions/mars/grib.mmsa.em.def b/definitions/mars/grib.mmsa.em.def index 6d152901b..36ac9adc5 100644 --- a/definitions/mars/grib.mmsa.em.def +++ b/definitions/mars/grib.mmsa.em.def @@ -6,7 +6,10 @@ 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; } + +if (class is "ci") { unalias mars.method; } + diff --git a/definitions/mars/grib.mmsa.fcmean.def b/definitions/mars/grib.mmsa.fcmean.def index f828d5a8c..3b7f185b3 100644 --- a/definitions/mars/grib.mmsa.fcmean.def +++ b/definitions/mars/grib.mmsa.fcmean.def @@ -8,7 +8,10 @@ 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; } + +if (class is "ci") { unalias mars.method; } + 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..86376c834 100644 --- a/definitions/mars/grib.msmm.em.def +++ b/definitions/mars/grib.msmm.em.def @@ -11,7 +11,10 @@ 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; } + +if (class is "ci") { unalias mars.method; } + diff --git a/definitions/mars/grib.msmm.fcmax.def b/definitions/mars/grib.msmm.fcmax.def index 573343213..b64b923a1 100644 --- a/definitions/mars/grib.msmm.fcmax.def +++ b/definitions/mars/grib.msmm.fcmax.def @@ -12,7 +12,10 @@ 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; } + +if (class is "ci") { unalias mars.method; } + 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..158383e2c 100644 --- a/definitions/mars/grib.msmm.fcmin.def +++ b/definitions/mars/grib.msmm.fcmin.def @@ -12,7 +12,9 @@ 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; } + +if (class is "ci") { unalias mars.method; } diff --git a/definitions/mars/grib.msmm.fcstdev.def b/definitions/mars/grib.msmm.fcstdev.def index f4b8c2414..3a563515b 100644 --- a/definitions/mars/grib.msmm.fcstdev.def +++ b/definitions/mars/grib.msmm.fcstdev.def @@ -13,7 +13,9 @@ 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; } + +if (class is "ci") { unalias mars.method; } 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..cbdd6704a --- /dev/null +++ b/definitions/mars/grib.msmm.hcmean.def @@ -0,0 +1,19 @@ +# 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")) { + constant cnmc_cmcc = 'cmcc'; + alias mars.origin = cnmc_cmcc; +} + +if (class is "ci") { unalias mars.method; }