Project

General

Profile

Ensemble output packed in one grib - how to split?

Added by Grant Elliott over 12 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 12 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 12 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 12 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 12 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 12 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/5
seltimestep 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 12 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 over 4 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 over 4 years ago

Hi Solomon,

sorry, there aren't such operators.

-Karin

    (1-8/8)