MET V11.1.1 reading ECMWF ensemble grib1 files #2855
-
I want to know if it is possible to read ECMWF single grib1 file containing all ensemble members. It works for deterministic forecasts. Using I have also converted the Grib1 to Grib2 using My go-to way is using Python embeddings, which works, but it takes a lot of time to read the 51 members for each variable. TLDR: Is it possible to read ECMWF 51 ensemble single grib1 file? If yes, how? Thank you for your support. |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 4 replies
-
Hi Pratiman: MET does include logic to differentiate between different members in a single grib file, as long as they are stored in the same way that NOAA stores their files. An example file with multiple members that MET can read can be found here. I realize this is a grib2 file, and your data is grib1. But, is the data otherwise stored similarly in your file? This file can be read into MET's plot_data_plane, to get a plot of ensemble member 6 at the 12 hour lead time using the following command:
Are you reading this data into Ensemble-Stat or another MET program? If you are reading into Ensemble-Stat, you would want to use the ens_member_id variable instead of the GRIB_ens variable. Would you be able to post the configuration that is not working here so I can see what is set and which MET program you are running? You will need to give you configuration file a .txt extension to be able to post it to this discussion. Also could you post a copy of the output from running wgrib on the file? Having this information will make it easier to get the configurations correct if MET can read the file. Thanks, |
Beta Was this translation helpful? Give feedback.
-
Hello @pratiman-91, I work with @CPKalb, who's out of the office this week at the AMS meeting. But I pulled down your file and took a look. Using
All are for the variable I did a deep dive and do see what's going on. First, let me point you to this NCEP GRIB1 documentation (https://www.nco.ncep.noaa.gov/pmb/docs/on388/appendixc.html), I note the following:
In your file, ( I notice in the
This data is for the ECMWF, originating center 98 (5-th entry above), and presumably ECMWF encode ensemble metadata differently, and we haven't encountered it yet in MET. I do this line of code in the So what can you do at this point? In MET, the I did try converting this from GRIB1 to GRIB2 and then used these config options to plot the result for member 25:
So that's the rather ugly workaround...
Providing direct support for ECMWF GRIB1 ensemble conventions would require additional development in MET. And to do that, we'd need to gather sample data, write up a development issue, and identify a funding source to pay for that work. |
Beta Was this translation helpful? Give feedback.
-
Thanks @pratiman-91 for following up. I'm glad you have a workaround, but definitely agree that direct support of the GRIB1 ECMWRF GRIB1 conventions would be far preferable. I'll go ahead and mark this discussion as being answered and close it. I'll note that I did add this topic to our (brand new) METplus Idea Catcher project board to document good development ideas prior to writing them up as issues in the correct METplus repository. |
Beta Was this translation helpful? Give feedback.
Hello @pratiman-91, I work with @CPKalb, who's out of the office this week at the AMS meeting. But I pulled down your file and took a look. Using
wgrib
, I see that it has 306 records in it:All are for the variable
GH
, for 6 different pressure levels (1000 mb, 925 mb, 850 mb, 700 mb, 500 mb, 200 mb
), and 51 different members (type=Control forecast 0
,type=Perturbed forecast 1
...type=Perturbed forecast 50
). So that's 6 levels * 51 members = 306 records. And you're wondering how to distinguish between the GRIB1 records fo…