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

SOILHGT not included in met_em files

trudee

New member
I am using the era5 pressure level grb files to generate met_em files. I have included the invariant fields from /glade/campaign/collections/rda/data/d633000/e5.oper.invariant when running ungrib, but the SOILHGT is not included in the met_em files.
I am using the Vtable.ECMWF. Am I missing a step, or is SOILHGT not supposed to be in the met_em files when using ERA5 pressure level data?
 
We no longer support ERA5 GRIB format data. Please switch to ERA5 netCDF. This post provides details and tools to process ERA5 netCDF datafiles.
 
I am aware that the .grb files are going away, which is why I want to compare met_files generated with .grb files versus generated with .netcdf files.
The tool you are pointing towards is for ERA5 model levels, while I use pressure levels. We have a script for converting netcdf files to intermediate, but we see large differences because SOILHGT is not included in the met_em files when using the .grb files.

However, real.exe runs fine without the SOILHGT in the met_em files. So, am I missing a step when generating the met_em files, or is SOILHGT not needed for WRF when using ERA5 pressure level data?
 
Last edited:
Thanks for bringing up @trudee and @Rakesh, I'm also not seeing SOILHGT in the met_em files when produced using .grb. I'm also curious as to why an error isn't flagged when running real.exe without SOILHGT in the met_em files. If possible, this would be good to know for many other simulations that have been run using ERA5 grib data.
 
Dear All,

if you continue to use ERA5 data in GRIB format, then you will need to obtain both pressure level data and surface invariant data. SOILGHT can be extracted from the GRIB invariant data file. Suppose you have the intermediate file name of the invariant variables as INVAR:yyyy-mm-dd_hh, you can rename it as INVAR, then in your namelist.wps, set the options as:

Code:
&metgrid
          fg_name = 'PRES',
          io_form_metgrid = 2,
          constants_name  = './INVAR'

Here PRES is the prefix of the intermediate files for pressure level data.

After running metgrid.exe, SOILHGT should be included in met_em files. It is always nice to have SOILGHT in met_em files.

Please let me know whether the above solution works for you.
 
We no longer support ERA5 GRIB format data. Please switch to ERA5 netCDF. This post provides details and tools to process ERA5 netCDF datafiles.
Dear Ming Chen,

Thank you very much for your explanation. However, I still have two questions:

1) If I use WPS-4.2, will ERA5 in GRIB format still stop working?
2) Will I be able to use ERA5 in GRIB format for dates between 2010 and 2020?

I appreciate your time and assistance. :)
 
I believe that in NCAR RDA, all ERA5 in GRIB format are replaced by netCDF format data.

However, ERA5 Reanalysis in GRIB format will remain available for download through the Copernicus Climate Data Store.

WPS is still able to process ERA5 in GRIB format.
 
亲爱的大家,

如果你继续以GRIB格式使用ERA5数据,那么你需要同时获取压力水平数据和表面不变数据。SOILGHT可以从GRIB不变数据文件中提取。假设你把不变变量的中间文件名叫INVAR:yyyy-mm-dd_hh,你可以把它重命名为INVAR,然后在namelist.wps里设置选项:

[代码]
&metgrid
fg_name = “PRES”,
io_form_metgrid = 2,
constants_name = './INVAR'
[/代码]

这里PRES是压力级数据中间文件的前缀。

运行metgrid.exe后,met_em文件中应包含 SOILHGT。有SOILGHT在met_em档案里总是很不错。

请告诉我上述方案是否适合你。
亲爱的明晨,

非常感谢你的解释。我遇到过非常类似的问题,你的回复很有帮助。

我想确认一下你提到的表面不变数据的一点。在你的描述中,变量SOILHGT是否应该直接出现在下载的ERA5不变GRIB文件中,还是需要从其他不变变量中推导出来?

就我而言,我下载的ERA5表面不变数据中没有明确包含名为SOILHGT的变量。相反,我只找到了位势变量(Z)。从其他讨论和帖子中,我注意到一些用户将SOILHGT理解为由地势得出的地形高度(即通过除以重力将地势换算为高度)。

因此,我想澄清一下:

  1. SOILHGT预计应明确存在于ERA5不变GRIB数据中,
  2. 它应从不变数据中提供的位势变量(Z)计算。
如果能对此有任何澄清,我将非常感激。Table surface and single level parameters( invariants ).png

再次感谢你的帮助。

此致敬意
 
Last edited:
Hi Hygccw,

SOILLHGT is derived from Z. Z is the variable that can be obtained from ERA5 invariant GRIB file.

Hope this is helpful for you.

Dear Ming Chen,

Thank you very much for your explanation. I have encountered a very similar issue, and your message was quite helpful.

I would like to confirm one point regarding the surface invariant data you mentioned. In your description, is the variable SOILHGT expected to be directly available in the downloaded ERA5 invariant GRIB file, or does it need to be derived from other invariant variables?

In my case, the ERA5 surface invariant data I downloaded does not explicitly contain a variable named SOILHGT. Instead, I only find the geopotential variable (Z). From other discussions and posts, I noticed that some users interpret SOILHGT as terrain height derived from geopotential (i.e., converting geopotential to height by dividing by gravity).

Therefore, I would like to clarify whether:

  1. SOILHGT is expected to exist explicitly in the ERA5 invariant GRIB data, or
  2. It should be computed from the geopotential variable (Z) provided in the invariant data.
Any clarification on this point would be greatly appreciated.

Thank you again for your help.

Best regards
 
So, if my understanding is correct, SOILHGT is not directly available in the ERA5 invariant data and needs to be derived from the geopotential variable (Z). After converting Z to terrain height and renaming it as SOILHGT, the processed file should then be provided to metgrid via constants_name = './INVAR'. Could you please confirm if this interpretation is correct?
Hi Hygccw,

SOILLHGT is derived from Z. Z is the variable that can be obtained from ERA5 invariant GRIB file.

Hope this is helpful for you.
 
I am using the era5 pressure level grb files to generate met_em files. I have included the invariant fields from /glade/campaign/collections/rda/data/d633000/e5.oper.invariant when running ungrib, but the SOILHGT is not included in the met_em files.
I am using the Vtable.ECMWF. Am I missing a step, or is SOILHGT not supposed to be in the met_em files when using ERA5 pressure level data?
Dear Trudee,
I encountered the same issue as you did. May I ask how you eventually resolved this problem?
 
After you ungrib ERA5 data, SOILHGT will be included in your intermediate files. Therefore, you shouldn't list it as constants_name in namelist.wps.

So, if my understanding is correct, SOILHGT is not directly available in the ERA5 invariant data and needs to be derived from the geopotential variable (Z). After converting Z to terrain height and renaming it as SOILHGT, the processed file should then be provided to metgrid via constants_name = './INVAR'. Could you please confirm if this interpretation is correct?
 
Top