Presentation on theme: "WMO GRIB as a Data Model Gil Ross, UK Met Office 2009-09-14."— Presentation transcript:
WMO GRIB as a Data Model Gil Ross, UK Met Office 2009-09-14
WMO GRIB Owned by WMO –maintained by WMO CBS IPET-DR&C Grib Edition 0 – 1985 –based on WMO GRID and NOAA H-code –Binary –Table driven Grib Edition 1 - 1990 –single level, single parameter, single time –Still used by aviation Grib Edition 2 - 1997 –Multi-dimensional, template driven –Failed to converge with NetCDF and HDF in 1990s Used daily, intensively, by WMO, ICAO, IOC since 1994.
WMO GRIB as a Data Model GRIB is many things: –Exchange container, –Multidimensional data format, –Reference tables, semantics, controlled vocab. –Compression mechanism, –Data model.
GRIB as a Container GRIB container has metadata: –Container metadata –Identification metadata describing the producer, producing mechanism, which registry - standard or local/private. –Temporal metadata (potentially 3 temporal dimensions!) –Projection grid metadata (potentially multiple dimensional grids) –Data description metadata Describing the coverage(s) –Compression metadata –Local metadata
GRIB as Multidimensional Format Data description metadata –2 D scalar, or 2 D vector (winds on 2 D grid) –Tensor data possible on each grid point –3 rd or more parametric dimension to define coverages (at multiple values of 3 rd dimensional grid) –Multiple coverages possible in same container –Missing value masks Registry table to define coverage (dependent variable) is the same as table to define parametric grid term (independent variable) This is a major change to ISO 19123 coverages
WMO GRIB: some semantics (1) Code Parameter Units. 052 Relative humidity % 053 Humidity mixing ratio kg/kg 054 Precipitable water kg/m2 055 Vapour pressure Pa 056 Saturation deficit Pa 057 Evaporation kg/m2 058 Cloud Ice kg/m2 059 Precipitation rate kg/m2/s 060 Thunderstorm probability % 061 Total precipitation kg/m2 062 Large scale precipitation kg/m2 063 Convective precipitation kg/m2 064 Snowfall rate water equiv. kg/m2s 065 Water equiv. accum. Snow kg/m2 066 Snow depth m 067 Mixed layer depth m 068 Transient thermocline depth m 069 Main thermocline depth m 070 Main thermocline anomaly m 071 Total cloud cover % 072 Convective cloud cover % 073 Low cloud cover % 074 Medium cloud cover % 075 High cloud cover % 076 Cloud water kg/m2. Code Vertical Coordinate (Units) 01 Surface (of the Earth, which includes sea surface) 02 Cloud base level 03 Cloud top level 04 0 deg (C) isotherm level 05 Adiabatic condensation level (parcel lifted from surface) 06 Maximum wind speed level 07 Tropopause level 08 Nominal top of atmosphere 09 Sea bottom 10-99 Reserved 100 Isobaric level (hPa) 101 Layer between two isobaric levels (kPa) 102 Mean sea level 103 Fixed height above MSL (m) 104 Layer between two height levels above MSL 105 Fixed height above ground (m) 106 Layer between two height levels above ground 107 Sigma level, value in 1/10000 108 Layer between two sigma levels 109 Hybrid level (level number) 110 Layer between two hybrid levels 111Depth below land surface (cm) 112 Layer between two depths below land surface (cm) 113 Isentropic (theta) level (Potential Temperature K) 114 Layer between two isentropic levels.
WMO GRIB: some semantics (2) Code Projection Grid 0 Latitude/Longitude also called Equidistant Cylindrical or Plate Carrée 1 Mercator 2 Gnomonic 3 Lambert Conformal, secant or tangent, conical or bipolar (normal or oblique) 4 Gaussian Latitude/Longitude 5 Polar Stereographic 13 Oblique Lambert conformal, secant or tangent, conical or bipolar 50 Spherical Harmonic Coefficients 90 Space view perspective or orthographic Some settings 0 Earth assumed spherical with radius = 6367.47 km 1 Earth assumed oblate spheroid with size as determined by IAU in 1965: 6378.160 km, 6356.775 km, f = 1/297. 0 u- and v-components of vector quantities resolved relative to easterly and northerly directions 1 u- and v-components of vector quantities resolved relative to the defined grid in the direction of increasing x and y (or i and j) coordinates respectively 0 no bit map 1 bit map present, one bit per data point of grid
GRIB as Compression Mechanism Gridded n-dimensional data 2D horizontal geospatial grid originally CRS/projection defined functionally Spherical harmonics option Scaled n-bit integers, difference from minimum Minimum may be for 2D field or row by row Option for 2 nd order differences Several scanning patterns JPEG compression added to GRID Ed 2
GRIB as a data model Temporal metadata –Start time of forecast –Forecast lead time –Start and end lead time of averaging period. Projection grid metadata –Succinct mathematical definition –Defining projection and rectangular grid within that projection –Spherical Harmonic grid of wavenumbers (space is Fourier transformed rather than the data) –Grid is referenced externally, as standard or irregular grid, defined by array of lat/lon points (deprecated) Compression Metadata –Either find min and max and defined bit-length to get steps for integer digits –Or define precision of steps, find minimum and derive bit length –Lossy mechanism, but it loses only irrelevant random floating point precision. –Properly used this gives good compression, which e.g. gzip may have difficulty improving (because of the high floating point precision). –Attempts at further compression abandoned as unnecessary, e.g. run-length encoding, boustrophedonic wrapping.
GRIB as data model Same registry table for dependent and independent variable On a rectangular lat-lon grid temperature = f(height) or height = f(temperature) –At fixed (independent) heights we can have coverages of (dependent) temperature –OR –At fixed (independent) temperatures we can have coverages of (dependent) height values cloud amount = f(height) or height = f(cloud amount) –Alternatively, the cloud amount at fixed height –OR –The height at which fixed amount (3/8ths) of cloud is reached This is not an artificial construct, –it describes the legal height at which aircraft may fly under Visual Flying Rules.
GRIB as an ISO model or OGC O&M package GRIB is a WMO operational standard. WMO is a Standards body with cross-accreditation with ISO. WMO and ISO have agreed to cross-adopt each others’ appropriate standards To be an OGC O&M package –Need to decode metadata in an O&M wrapper with payload as GRIB mime-type –Need to publish WMO registries under ISO Registry mechanism –GRIB to XML converter straightforward particularly metadata GRIB data to XML conversion not a normal use case More usually GRIB data to IEEE numbers –Anything more? Free Source GRIB decoders available (e.g. NOAA NCEP and ECMWF) –However packages are NOT supported to the level of NetCDF WMO (or rather the members) needs to implement a GRIB to XML metadata and to create registries