Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

icon-eu download data

dominic

New member
Hi everyone, after some time I would like to start using icon for wrf again. I saw that it is finally officially supported.

Can any of you share a script to download the i icon eu data including the regrid with cdo?

A thousand thanks
 
Please see the attached script for icon download.
Thank you very much for your precious answer Ming Chen, I only have one problem, I notice that in other scripts, for example the one in the github discussion for icon integration, cdo is used with additional files downloadable from dwd for the regrid. This is because in icon there are problems with the levels if I understand correctly. In the script in question I don't see this string.

Thanks so much for further suggestions
 
Hi dominic!!

Actually cdo used with the dwd regrid files are generally for re-griding Icosachedral triangular grids to regular lat-lon grid which is preferred by WRF.
In the Chen mentioned script its already downloading Lat-lon grid attribute file only and if you are interested in European region, you probably don't need this regriding process.
You can directly incorporate the downloaded and merged files for WRF initialization.
Note that, Regridding is done, according to your input datasets.
 
Hello everyone,

I am currently testing to run WRF V4.6.1 using ICON data as input. I have tested only the European model ICON-EU so far. After a few struggles, it works for me. However, I found a few things that seem strange to me using this download script.

First of all, there is a newer version of the download script from Michael Graf on Github that acknowledges that the European model forecasts 1-hourly data only for up to 30 hours (in the newer script the forecast hours fff reach until 24 instead of 72). But the script still downloads only the model levels from 1 to 60, while there are actually 74 model levels. It may be the case that an older ICON-EU model had fewer levels or maybe there was another reason for this? As far as I can see, if we download only levels 1 to 60, the atmospheric data between 20 m (level 74) and ~ 1.9 km (level 60) is missing. The data is probably still sufficient so that WPS/WRF wouldn't complain and just interpolate everything in between, but this seems not ideal.

Finally, the soil level 0 temperature is not used by the VTable, so I removed it from the download. However, there are 2 more soil levels in the Vtable that we actually need to download.

I am attaching my corrected version of the download script. Hopefully, it may be of use to others and maybe someone else here can confirm my modifications.

Thanks a lot to the contributors who implemented the ICON support! Very useful :)
 

Attachments

  • download_icon_mod.sh.txt
    5.8 KB · Views: 58
Hi dominic!!

Actually cdo used with the dwd regrid files are generally for re-griding Icosachedral triangular grids to regular lat-lon grid which is preferred by WRF.
In the Chen mentioned script its already downloading Lat-lon grid attribute file only and if you are interested in European region, you probably don't need this regriding process.
You can directly incorporate the downloaded and merged files for WRF initialization.
Note that, Regridding is done, according to your input datasets.
Hi replying to this thread after a long time but now I'm working on wrf with icon data. Thank you very much! it was a clarification that I was looking for, in my case it works even without using the regrid, in fact using the script I can download the data.

However I got this error:

in prepmetgrid2.log - error: the required field skintemp was not found in any input data.
 
Hello everyone,

I am currently testing to run WRF V4.6.1 using ICON data as input. I have tested only the European model ICON-EU so far. After a few struggles, it works for me. However, I found a few things that seem strange to me using this download script.

First of all, there is a newer version of the download script from Michael Graf on Github that acknowledges that the European model forecasts 1-hourly data only for up to 30 hours (in the newer script the forecast hours fff reach until 24 instead of 72). But the script still downloads only the model levels from 1 to 60, while there are actually 74 model levels. It may be the case that an older ICON-EU model had fewer levels or maybe there was another reason for this? As far as I can see, if we download only levels 1 to 60, the atmospheric data between 20 m (level 74) and ~ 1.9 km (level 60) is missing. The data is probably still sufficient so that WPS/WRF wouldn't complain and just interpolate everything in between, but this seems not ideal.

Finally, the soil level 0 temperature is not used by the VTable, so I removed it from the download. However, there are 2 more soil levels in the Vtable that we actually need to download.

I am attaching my corrected version of the download script. Hopefully, it may be of use to others and maybe someone else here can confirm my modifications.

Thanks a lot to the contributors who implemented the ICON support! Very useful :)

Thank you so much for the script! I confirm that it works and I can run wrf without problems. The only flaw is that now the files weigh even more, if before they were just over 500mb now they weigh more than 800mb, but if there is more data for the model, welcome!

Could you also kindly post the vtable that you use on the base in your configuration? Also at how many levels of analysis did you set the namelist to get something decent? Thank you so much!
 
Hello everyone,

I am currently testing to run WRF V4.6.1 using ICON data as input. I have tested only the European model ICON-EU so far. After a few struggles, it works for me. However, I found a few things that seem strange to me using this download script.

First of all, there is a newer version of the download script from Michael Graf on Github that acknowledges that the European model forecasts 1-hourly data only for up to 30 hours (in the newer script the forecast hours fff reach until 24 instead of 72). But the script still downloads only the model levels from 1 to 60, while there are actually 74 model levels. It may be the case that an older ICON-EU model had fewer levels or maybe there was another reason for this? As far as I can see, if we download only levels 1 to 60, the atmospheric data between 20 m (level 74) and ~ 1.9 km (level 60) is missing. The data is probably still sufficient so that WPS/WRF wouldn't complain and just interpolate everything in between, but this seems not ideal.

Finally, the soil level 0 temperature is not used by the VTable, so I removed it from the download. However, there are 2 more soil levels in the Vtable that we actually need to download.

I am attaching my corrected version of the download script. Hopefully, it may be of use to others and maybe someone else here can confirm my modifications.

Thanks a lot to the contributors who implemented the ICON support! Very useful :)
Thank you so much for the script! I confirm that it works and I can run wrf without problems. The only flaw is that now the files weigh even more, if before they were just over 500mb now they weigh more than 800mb, but if there is more data for the model, welcome!

Could you also kindly post the vtable that you use on the base in your configuration? Also at how many levels of analysis did you set the namelist to get something decent? Thank you so much!
might be these


 
Yes there are 3 tables, but I would like to know which is the best one to use. thanks for the answer
I think it is both, kinda like how ECMWF and ERA5 have single level files and pressure level files. At least based on what I can tell. I haven't ever used ICON before but that's how it reads to me.
 
I think it is both, kinda like how ECMWF and ERA5 have single level files and pressure level files. At least based on what I can tell. I haven't ever used ICON before but that's how it reads to me.
thanks for the reply. I'll try a bit with all of them and see the differences.

I take this opportunity to ask you a question, does ecmwf 25km work with wrf? without a side dish
 
thanks for the reply. I'll try a bit with all of them and see the differences.

I take this opportunity to ask you a question, does ecmwf 25km work with wrf? without a side dish
right now ecmwf, as far as I know at the moment, has issues due to their recent changes in how they code soil data.


This post explains the issue at the moment:


But ERA5 data for reanalysis data can work but you need to do the ungrib in two parts, single and model levels and then use metgrid to merge them.
 
Thanks a lot for the clarification, I would need a script to download the ecmwf data for wrf, has any forum user created it?
 
Hello everyone,

I am currently testing to run WRF V4.6.1 using ICON data as input. I have tested only the European model ICON-EU so far. After a few struggles, it works for me. However, I found a few things that seem strange to me using this download script.

First of all, there is a newer version of the download script from Michael Graf on Github that acknowledges that the European model forecasts 1-hourly data only for up to 30 hours (in the newer script the forecast hours fff reach until 24 instead of 72). But the script still downloads only the model levels from 1 to 60, while there are actually 74 model levels. It may be the case that an older ICON-EU model had fewer levels or maybe there was another reason for this? As far as I can see, if we download only levels 1 to 60, the atmospheric data between 20 m (level 74) and ~ 1.9 km (level 60) is missing. The data is probably still sufficient so that WPS/WRF wouldn't complain and just interpolate everything in between, but this seems not ideal.

Finally, the soil level 0 temperature is not used by the VTable, so I removed it from the download. However, there are 2 more soil levels in the Vtable that we actually need to download.

I am attaching my corrected version of the download script. Hopefully, it may be of use to others and maybe someone else here can confirm my modifications.

Thanks a lot to the contributors who implemented the ICON support! Very useful :)
Dear Julian,

Thank you for the script and the usefull information about ICON data. I am currently trying to run WRF with them, but when running metgrid I receive the following error. Do you have any idea about what causes the error?

Thank you in advance!

Processing domain 1 of 1
TAVGSFC
Processing 2025-11-06_00
./int_files/FILE
WARNING: Field PRES has missing values at level 200100 at (i,j)=(1,1)
WARNING: Field PRESSURE has missing values at level 200100 at (i,j)=(1,1)
WARNING: Field GHT has missing values at level 200100 at (i,j)=(1,1)
WARNING: Field SOILHGT has missing values at level 200100 at (i,j)=(1,1)
WARNING: Field PSFC has missing values at level 200100 at (i,j)=(1,1)
WARNING: Field PMSL has missing values at level 201300 at (i,j)=(1,1)
ERROR: Missing values encountered in interpolated fields. Stopping.
 
This is possibly because the ICON data you downloaded is not global data. Your WRF domain is beyond the area covered by the ICON data.
 
Sorry for not replying to some messages directed to me earlier, but all have been answered well. I haven't checked in here for a while and did not investigate this further.

Recently, I wanted to run WRF with ICON forcing again and now I get an error from metgrid I have not seen before:

Processing domain 1 of 2
TAVGSFC
Processing 2023-08-12_21
FILE
ERROR: Error in ext_pkg_write_field

Processing ERA5 works fine, but ICON does not. It seems that netcdf cannot write the metgrid file. I found that it might be related to large file support, which would make sense, since the ICON files are quite large. But I had large file support activated during compilation of libraries and WRF/WPS.

Does anyone have any idea where this might come from?
 
Can you check the intermediate file you ungrib from ICON data? What variables are included in it? Please upload your namelist.wps for me to take a look.
 
Hi Ming,

thank you for your quick reply! I did some more digging and found out that the problem occurs when writing the geopotential height, which returns the status istatus=-15 indicating an error, all other variables have istatus=0 and so are fine.

The problem is that the height variable is the only one on a staggered grid and therefore has one more level than the others, namely 67 instead of 66. I guess that metgrid wants to have the same number of levels for all vars. This problem does not occur when you download only 66 levels for the height variable as in the given script. However, I used a newer code that downloads all the levels, so I do not have the same number for all vars. Here is an example print of PRESSURE and GHT during writing of metgrid in "metgrid/src/output_module.F":

---------------------------------------------------
DEBUG: writing variable=PRESSURE
mem_order=XYZ stagger=M
sd = 1, 1, 1
ed = 108, 108, 66
sm = 1, 1, 1
em = 108, 108, 66
sp = 1, 1, 1
ep = 108, 108, 66
actual array sizes = 108, 108, 66
DEBUG: ext_ncd_write_field returned istatus=0
----------------------------------------------------
DEBUG: writing variable=GHT
mem_order=XYZ stagger=M
sd = 1, 1, 1
ed = 108, 108, 67
sm = 1, 1, 1
em = 108, 108, 67
sp = 1, 1, 1
ep = 108, 108, 67
actual array sizes = 108, 108, 67
DEBUG: ext_ncd_write_field returned istatus=-15
------------------------------------------------------

I could just remove the one additional level, but I see one general problem: As the height is on a staggered grid, and all other 3D vars are not, the heights may be wrongly assigned, even in case you have the right number of levels.

What I also wonder is why the variable fields(i)%stagger is "M" for both pressure and GHT, although I am sure that GHT is on a staggered grid in the ICON model.

Can we somehow set up that GHT is on a staggered grid and therefore needs to be allowed one more level?
 
I also checked the intermediate files (didn't know there was a tool for that, this is awesome!). Here we can also see that there is one additional level for GHT:

[...]

================================================
FIELD = SOILM999
UNITS = kg m-2 DESCRIPTION = Soil Moist 729-2187 cm below grn layer
DATE = 2023-08-11_21:00:00 FCST = 0.000000
SOURCE = DWD
LEVEL = 200100.000000
I,J DIMS = 1214, 745
IPROJ = 0 PROJECTION = LAT LON
REF_X, REF_Y = 1.000000, 1.000000
REF_LAT, REF_LON = 43.180000, 356.059998
DLAT, DLON = 0.020000, 0.020000
EARTH_RADIUS = 6371.229492
DATA(1,1)=0.316358

================================================
FIELD = GHT
UNITS = m DESCRIPTION = Height
DATE = 2023-08-11_21:00:00 FCST = 0.000000
SOURCE = DWD
LEVEL = 66.000000
I,J DIMS = 1214, 745
IPROJ = 0 PROJECTION = LAT LON
REF_X, REF_Y = 1.000000, 1.000000
REF_LAT, REF_LON = 43.180000, 356.059998
DLAT, DLON = 0.020000, 0.020000
EARTH_RADIUS = 6371.229492
DATA(1,1)=189.067993

================================================
FIELD = GHT
UNITS = m DESCRIPTION = Height
DATE = 2023-08-11_21:00:00 FCST = 0.000000
SOURCE = DWD
LEVEL = 65.000000
I,J DIMS = 1214, 745
IPROJ = 0 PROJECTION = LAT LON
REF_X, REF_Y = 1.000000, 1.000000
REF_LAT, REF_LON = 43.180000, 356.059998
DLAT, DLON = 0.020000, 0.020000
EARTH_RADIUS = 6371.229492
DATA(1,1)=209.088318

================================================
FIELD = PRESSURE
UNITS = Pa DESCRIPTION = Pressure
DATE = 2023-08-11_21:00:00 FCST = 0.000000
SOURCE = DWD
LEVEL = 65.000000
I,J DIMS = 1214, 745
IPROJ = 0 PROJECTION = LAT LON
REF_X, REF_Y = 1.000000, 1.000000
REF_LAT, REF_LON = 43.180000, 356.059998
DLAT, DLON = 0.020000, 0.020000
EARTH_RADIUS = 6371.229492
DATA(1,1)=99740.421875

================================================
FIELD = TT
UNITS = K DESCRIPTION = Temperature
DATE = 2023-08-11_21:00:00 FCST = 0.000000
SOURCE = DWD
LEVEL = 65.000000
I,J DIMS = 1214, 745
IPROJ = 0 PROJECTION = LAT LON
REF_X, REF_Y = 1.000000, 1.000000
REF_LAT, REF_LON = 43.180000, 356.059998
DLAT, DLON = 0.020000, 0.020000
EARTH_RADIUS = 6371.229492
DATA(1,1)=298.650909

================================================

[...]
 
Top