...
GRIdded Binary or General Regularly-distributed Information in Binary form is a common data format used in meteorology and standardised by the World Meteorological Organisation.
- There are two versions of GRIB: GRIB edition 1 (GRIB1) and edition 2 (GRIB2).
- CEMS-Flood data is available in GRIB2.
- It is archieved in GRIB2 in the Meteorological Archival and Retrieval System (MARS) at ECMWF, see the MARS user documentation for further information.
- Further information on the data format is available in the What are GRIB files page on the Copernicus Knowledge Base.
...
There are 2 principal ways to work with GRIB2 files:
1. ecCodes
A library developed at ECMWF consisting of a set of tools to code and decode GRIBs, as well as other formats. The eccodes command-line utilities are commonly used by the meteorology community. Please consult the Copernicus Knowledge Base page How to read GRIB files for an overview of the commands available.
2. CFGRIB
A Python interface to the eccodes library. It is one of the supported backends of Xarray. Please consult the Open CEMS-Flood data page for example of using CFGRIB with CEMS-Flood data.
NetCDF4
The Network Common Data Format (NetCDF), is a machine-independent data format widely used in the scientific community to store array-oriented multi-dimensional data. CEMS-Flood datasets are conformant with the version 4 data model (NetCDF-4) and Version 1.7 of the CF convention.
Data format:
Code Block | ||||
---|---|---|---|---|
| ||||
dimensions:
time = 4 ;
y = 950 ;
x = 1000 ;
variables:
int64 time(time) ;
time:long_name = "initial time of forecast" ;
time:standard_name = "forecast_reference_time" ;
time:units = "seconds since 1970-01-01" ;
time:calendar = "proleptic_gregorian" ;
double step ;
step:_FillValue = NaN ;
step:long_name = "time since forecast_reference_time" ;
step:standard_name = "forecast_period" ;
step:units = "hours" ;
double surface ;
surface:_FillValue = NaN ;
surface:long_name = "original GRIB coordinate for key: level(surface)" ;
surface:units = "1" ;
double valid_time(time) ;
valid_time:_FillValue = NaN ;
valid_time:standard_name = "time" ;
valid_time:long_name = "time" ;
valid_time:units = "seconds since 1970-01-01" ;
valid_time:calendar = "proleptic_gregorian" ;
float dis06(time, y, x) ;
dis06:_FillValue = NaNf ;
dis06:GRIB_paramId = 240023LL ;
dis06:GRIB_dataType = "sfo" ;
dis06:GRIB_numberOfPoints = 950000LL ;
dis06:GRIB_typeOfLevel = "surface" ;
dis06:GRIB_stepUnits = 1LL ;
dis06:GRIB_stepType = "avg" ;
dis06:GRIB_gridType = "lambert_azimuthal_equal_area" ;
dis06:GRIB_NV = 0LL ;
dis06:GRIB_cfName = "unknown" ;
dis06:GRIB_cfVarName = "dis06" ;
dis06:GRIB_gridDefinitionDescription = "Lambert azimuthal equal area projection " ;
dis06:GRIB_missingValue = 9999LL ;
dis06:GRIB_name = "Mean discharge in the last 6 hours" ;
dis06:GRIB_shortName = "dis06" ;
dis06:GRIB_units = "m**3 s**-1" ;
dis06:long_name = "Mean discharge in the last 6 hours" ;
dis06:units = "m**3 s**-1" ;
dis06:standard_name = "unknown" ;
dis06:coordinates = "time step surface valid_time" ;
// global attributes:
:GRIB_edition = 2LL ;
:GRIB_centre = "ecmf" ;
:GRIB_centreDescription = "European Centre for Medium-Range Weather Forecasts" ;
:GRIB_subCentre = 0LL ;
:Conventions = "CF-1.7" ;
:institution = "European Centre for Medium-Range Weather Forecasts" ;
:history = "2021-11-23T10:25 GRIB to CDM+CF via cfgrib-0.9.9.0/ecCodes-2.23.0 with {\"source\": \"adaptor.mars.external-1637662774.2155154-5073-2-b5af81a6-2574-467a-81e4-8ad529c6fd1e.grib\", \"filter_by_keys\": {}, \"encode_cf\": [\"parameter\", \"time\", \"geography\", \"vertical\"]}" ;
|
Data formats availability
...