Forcing nesting suite with ERA5


I’m trying to get the nesting suite to run on archer with ERA5 forcing and haven’t been able to find any documentation about how to go about this.

1/ I understand that there are ERA5 files - in netCDF format - available at /work/y07/shared/umshared/ukca/nudging/era5/ but that the nesting suite requires .grib files in the format ec_grib_YYYYMMDD0000.t+0HH - are there any centrally available files in grib format on Archer? Or is there a way to get the UM to accept .nc files?

2/ What steps do I need to take to get the UM to run with ERA5? So far I have tried setting dm_name = ECMWF forecast fields and dm_ec_mode = EC analysis/re-analysis, which naturally throws up an error about missing .grib files in the directory I’ve given.

3/ Are there extra steps to input sea ice and SST data? (I’m running over the Arctic and Antarctic) I remember doing this with a previous version of the suite (vn11.1?) forced with ERA-Interim a couple of years ago in the global reconfiguration but not sure if this is still necessary.

Many thanks for any help.

Hi Ella

Have you tried here (there’s mention of ECMWF driving data.)

I’m not aware of anything different in respect of SSTs and sea ice. It’s probably best that you consult the authors of the nesting suite.


Thanks Grenville, I hadn’t come across this page before. Will have a read-through. E

Hi Grenville,

I thought I would raise the current errors I’m getting on this ticket as it also seems related to ERA5 data. I’ve got some era data in /work/n02/n02/shakka/Dec_2000/atmos/ that I’m attempting to run with. However, i get an eccodes error in the glm recon, no matter which method I try.


ecCodes assertion failed: `0’ in /work/n02/n02/shared/umshared/lib/eccodes/eccodes-2.19.0/src/grib_context.c:226
ECCODES ERROR : Unable to find boot.def. Context path=/work/n02/n02/shared/umshared/lib/cce/eccodes/2.19.0/share/eccodes/definitions

Possible causes:

  • The software is not correctly installed
  • The environment variable ECCODES_DEFINITION_PATH is defined but incorrect

Two methods I have tried:

  1. setting dm_name=UM global model, dm_RUN_MODE=re-run from analyses on disk + getting the glm recon to accept .grib inputs + setting dm_ic_file to point to my ERA5 grib files (this method has worked before, and is how we have previously gotten the NS to run with ERA-Interim
  2. Following the method listed at the link you sent above (i.e. using global ERA5 data

It seems like this is an input data reading problem, something that that the recon doesn’t like about the grib file.

Stu Webster mentioned that ECCODES errors can be related to ECMWF files with >100 model levels, but I checked the input data and it only contains 60 vertical levels for 4 variables.

Have you seen an error like this before?


Hi Ella,

Which eccodes are you using? That path in the assertion error is an old ARCHER path which doesn’t exist on ARCHER2.

Eccodes built for ARCHER2 under cce-12.0.3 is located at /work/y07/shared/umshared/lib/cce-12.0.3/eccodes/2.24.1


Hi Ros,

That’ll be it! I wasn’t aware that I was using any particular kind of eccodes build - I’ve not touched that.

How do I change the version I’m using?

Hi Ella

What’s the suite id?


u-co433. Will fcm commit now. Ta!

Hi Ella

Not sure about this, please try edit /home/shakka/roses/u-co433/site/ncas-cray-ex/suite-adds.rc – add the [[[environment]]] section like this:

        init-script = """
                     ulimit -s unlimited
                     module load um
                     module list 2>&1             
            ECCODES_DEFINITION_PATH = /work/y07/shared/umshared/lib/cce-10.0.4/eccodes/2.19.0/share/eccodes/definitions
            host = {{HPC_HOST}}

Then re-run.


Thanks Grenville, that’s worked (although I’m now getting a missing ancils error, but that’s a different story!). Is there a central location where aerosol climatology ancillaries are stored (e.g. qrclim.sslt, .blck, .ocff, .sulp, .biom, .biog) that I can point to? Or else another means of generating them?

Hi Ella

Monsoon has

gmslis@xcslc0:/projects/um1/ancil/atmos/aerosol_clims> ls
biog  biogenic  biom  blck  dust  ocff  sslt  sulp

Are these what you need?


Hi Grenville, That looks like exactly what I need! Are they on archer somewhere?

they’re on their way…

1 Like

Thank you! Is it simply a matter of setting a symlink in the ancil directory to point to them, or will I have to do something else with the recon step?

yes probably just a link

1 Like
grenvill@ln04:~> ls $UMDIR/ancil/atmos/aerosol_clims/
biog  biogenic	biom  blck  dust  ocff	sslt  sulp

Hi Grenville,

I’ve managed to point the suite to those ancils. However I got errors about the mismatch between the model and ancil grid for the ozone, soil moisture and aerosol ancils similar to this ticket. I set l_ignore_ancil_grid_check=.true. as advised, which converts the errors to warnings:

??? WARNING ???
? Warning code: -1001
? Warning message:
? WARNINGS: 8 ancil files have failed ancil checking. These files did not cause an abort
? due to the setting of l_ignore_ancil_grid_check=.true. in the items namelist:
? – /work/n02/n02/shakka/AP_ancils_for_era5/qrclim.ozone
? – /work/n02/n02/shakka/AP_ancils_for_era5/qrclim.smow
? – /work/n02/n02/shakka/AP_ancils_for_era5/qrclim.slt
? – /work/n02/n02/shakka/AP_ancils_for_era5/qrclim.sslt
? – /work/n02/n02/shakka/AP_ancils_for_era5/qrclim.ocff
? – /work/n02/n02/shakka/AP_ancils_for_era5/qrclim.sulp
? – /work/n02/n02/shakka/AP_ancils_for_era5/qrclim.biom
? – /work/n02/n02/shakka/AP_ancils_for_era5/qrclim.biog
? Warning from processor: 0
? Warning number: 2

The recon completes, but as you suggested in that ticket, it produces very strange output for the ancil fields in which the grid is ignored - e.g. compare the ec_cb000 ozone field:

… to the input climatology ancil:

It may also be worth noting that the recon regrids the input data (on 70 levels) to 71 levels.

Relatedly, the forecast step also fails with:

? Error from routine: INBOUNDA
? Error message: CHK_LOOK_BOUNDA : Wrong number of LBC fields

How many fields is the forecast expecting in the LBCs? And do I need to tell it somewhere to expect more/less? There are 10 presently.

Many thanks,

Hi, I’m also looking for these files and wondered what the differences between the different sets were? I have been pointing towards the ancil/atmos/n96e/aerosol_clims/ga6_antie/v1 set of files (85 height levels) but noticed that within ancil/atmos/n96e/aerosol_clims/v2 (or v3 or v4) there are different qrclim.____85 files with different values.
I was using the ga6_antie files as in my ROSE_DATA/um_ancils_gl it mentions these but these are around half the mass mixing ratio for some species, however the files you pointed towards causes my atmos_main to fail as I am using a 360 day calender but these are Gregorian.

Hi Ella

The models is expecting lbcs each hour (rg01_rs01_m01_lbc_freq=3600s), so for the 12 hr cycle there should be 12 times in the lbc file, but there is only one time.

Did you configure the um_createbc task?


the lbc start and end times are not aligned with the times of

ec_cb000 ec_cb012 ec_cb024 ec_cb036 ec_cb048

I think it will work if you have these files at each 6hrs instead of 12hrs.