Ensemble output packed in one grib - how to split?
Added by Grant Elliott over 13 years ago
Hi
I extract ensemble model data from a MARS repository using a "thin" client - meaning that ALL ensemble runs are packed into the one grib file, for all time steps and all levels.
I don't know enough about the underlying grib file structure to understand if there is an ensemble number identifier. If so an operator such as ..
splitensemble
Split ensembles
Splits a file into pieces, one for each ensemble member. xxx will have three digits with the ensemble number.
would be great. A companion selection operator might be might be:
selensemble
Select ensemble by ensemble number
Select all ensembles with ensemble number identifiers in a user given list.
This is of course predicated on there being a ensemble identifier. If not, then assuming that the ensemble runs, parameters and levels are regularly ordered within the file structure (which they appear to be - but appearances can be deceptive!) I would like to be able to select based on order within the file that is identified in the first column of an "infon" request. Such a command might look like ..
selposition
Select fields(s) by position number (order within the grib file)
Select all fields with position number in a user given list.
Any assistance would be greatly appreciated!!
Regards
Grant Elliott
Replies (8)
RE: Ensemble output packed in one grib - how to split? - Added by Uwe Schulzweida over 13 years ago
Hi Grant,
could you please attach an example GRIB file or the MARS parameter to receive such an example?
Cheers, Uwe
RE: Ensemble output packed in one grib - how to split? - Added by Grant Elliott over 13 years ago
Hi Uwe
Thanks for looking at this. I've attached a temperature grib from the ECMWF TIGGE data set - 50 ensemble members.
Have conversed with ECMWF about this however the perl app that we're using to download won't let us save the files into individual gribs
Cheers
Grant
RE: Ensemble output packed in one grib - how to split? - Added by Grant Elliott over 13 years ago
trying a smaller grib - heights - last one apparently failed
RE: Ensemble output packed in one grib - how to split? - Added by Grant Elliott over 13 years ago
third time lucky
example.grib (1.07 MB) example.grib | ECMWF TIGGE grib - 5 ensemble members - 5 timesteps - 3 fields |
RE: Ensemble output packed in one grib - how to split? - Added by Uwe Schulzweida over 13 years ago
Hi Grant,
Thanks for this example!
I have put the operators splitensemble and selensemble on the wishlist.
A workaround is to use seltimestep with the parameter EM/NTS*NENS/NENS.
EM: ensemble member
NENS: number of ensembles
NTS: number of time steps
GRIB2 ensembles are not yet supported in CDO. Such ensembles are handled
as different time steps. Therefore NTS*NENS is currently the number of time
steps in CDO. Your example has 5 ensembles over 5 timesteps (25 CDO timesteps). To select the
3rd ensemble member out of 5 ensembles, use:
cdo seltimestep,3/25/5seltimestep can only be used if the ensembles are regularly ordered.
Best regards,
Uwe
RE: Ensemble output packed in one grib - how to split? - Added by Grant Elliott over 13 years ago
Thanks Uwe
That solutions seems to be holding up - in general ECMWF don't guarantee order - but in practice it seems to be OK
Look forward to the new operators!
Appreciate the help - regards
Grant
RE: Ensemble output packed in one grib - how to split? - Added by Solomon Hailu about 5 years ago
Dear All,
I have got the same data from ECMWF ensembles merged in one grib file and i wanted to know if the splitensemble or selensemble operators are working?
Best regrds,
Solomon
RE: Ensemble output packed in one grib - how to split? - Added by Karin Meier-Fleischer about 5 years ago
Hi Solomon,
sorry, there aren't such operators.
-Karin