WRF
WRF copied to clipboard
ERA-5 SST in High-Resolution setups
Not so much an issue as a warning. It appears as though when you initialize WRF with SST from ERA-5 the default fill-values overland is 0K (as in -273.15ºC). If you're running in high res, the interpolation of SST leads to some wonky numbers around the landmask. I only noticed this when running a 15km grid as well as a 3km grid (ERA-5 is 30km).
I followed this procedure to obtain and run WRF with ERA-5 data. It shouldn't matter if you're using model level or pressure level as the issue is in the surface data.
Solutions would be to remove SST from the Vtable (Vtable.ERA-interim.pl or Vtable.ERA-interim.ml) and rely upon Skin Temp only, set a fill_missing that isn't absolute zero in METGRID.TBL, or to use another SST dataset to supplement the surface fields.
Attached before image is 15km 2m Temp showing the coastlines are near absolute zero. After image is same domain 2m Temp but with SST removed from ungrib's Vtable so it just uses Skin Temp everywhere.
Hope that helps!
-Joe
Before
After
@jbzambon Did you use land mask field from ERA5? Depending on where you get the ERA5 data, the land mask field may need to be downloaded separately since it doesn't change with time. It should be called LANDSEA in metgrid output file.
@jbzambon I think what you observed is indeed a problem, even with the proper land mask field LANDSEA. I tested the data and found a similar issue with SST data in ERA5. Since it looks like SKINTEMP and SST provided in ERA5 data are identical over water, not having SST when ungribing the data can be a solution. One can also set fill_missing = 285. or some other value to remedy the problem. Thanks for pointing it out.
@weiwangncar @jbzambon I think this issue applies to previous ERA reanalyses as well.
@weiwangncar thanks for looking into this! To answer your earlier question, the data I had did include a landmask that was forwarded to LANDSEA in metgrid. The remedy you mentioned "not having SST when ungribing the data can be a solution" did work for me when running this data. SKINTEMP and SST are identical so using SKINTEMP over SST worked fine. Maybe future versions of WPS could ship with an ERA-5 Vtable that does this or change the default fill_missing? I just wanted to mention it for other users to avoid. Thanks again!
@jbzambon @weiwangncar I just found this issue and noticed that I don't have that problem (at least I think so). A while ago I switched to using ERA5 data and changed the interpolation of SST in METGRID.TBL:
name=SST interp_option=sixteen_pt+four_pt+wt_average_4pt+wt_average_16pt+search fill_missing=0. missing_value=-1.E30 flag_in_output=FLAG_SST interp_land_mask = LANDSEA(1) masked=land
I don't remember exactly where I got this advice from, but adding the land mask mask to SST is discussed e.g. here: https://forum.mmm.ucar.edu/threads/how-to-process-era5-invariant-data-issue-with-landsea-mask-and-a-metgrid-error.9879/
I am still wondering if this is the correct way to do it, can anyone please confirm if this is a valid way to use SST from ERA5?
@RJVogel Adding the interp_land_mask entry for SST is another way to prevent bad values of SST entering the model. This is necessary for ERA5 SST field because the SST field is masked with a masked value set over land.
hi, is there any solution rather than using land_mask for SST field? I am running three monthly WRF simulation with ERA5 over Black Sea basin and the rivers that flowing to Black Sea have SST fields in my domain
@sinan0310 Please post your question to the Forum: https://forum.mmm.ucar.edu/, thanks!
@sinan0310 Please post your question to the Forum: https://forum.mmm.ucar.edu/, thanks!
hi, I just posted the question. thank you