Généralité sur les Codes Déterminés par des Tables Joël Martellet Plan Auto-description Structure des Codes Tables BUFR et CREX Aspects communs à.
Download ReportTranscript Généralité sur les Codes Déterminés par des Tables Joël Martellet Plan Auto-description Structure des Codes Tables BUFR et CREX Aspects communs à.
Généralité sur les Codes Déterminés par des Tables Joël Martellet Plan Auto-description Structure des Codes Tables BUFR et CREX Aspects communs à BUFR et à CREX Différences entre BUFR et CREX Codes Déterminés par des Tables • GRIB 1- Données traitées sous forme de valeurs aux points de grille exprimées en binaire. • GRIB 2 – Information générale de distribution régulière sous forme binaire – Prévision, analyse, climatologie, images satellite • BUFR – Forme universelle de représentation binaire des données météorologiques. – Observations, produits des satellites, des radars • CREX – Code de caractères pour la représentation et l’échange de données. – Un BUFR simplifié et humainement lisible – Observations, information (e.g. Cyclones Tropicaux) Structure générale Les Codes Définis par des Tables ont en général cette structure • Indicateur: GRIB/BUFR/CREX • Identification: Date, heure, origine, numéro d’édition, numéro de version des tables ... • Section facultative: e.g. plus de Metadonnées, données privées … • Section de description des données: Quelle sorte de données suit (pointeurs vers les Tables du Manuel qui identifient les données transmises= numéros d’élément)? • Section des données: les données sont ici • Fin: “7777” Structure de BUFR et CREX • BUFR SECTION SECTION SECTION SECTION SECTION SECTION 0 1 2 3 4 5 Section Indicatrice Section d’identification (Section facultative) Section de Description des données Section des données Section de fin • CREX SECTION 0 Section Indicatrice SECTION 1 Section de Description des données SECTION 2 Section des données SECTION 3 (Section facultative) SECTION 4 Section de fin Quelques aspects • Les données sont auto-définies: type, contenu, édition, longueurs des sections etc. • Les données d’en-tête sont toujours à des positions fixes pour un accès rapide sans décodage = structure fixe • Les données binaires (GRIB et BUFR) ne sont pas lisibles • La section facultative peut contenir n’importe quoi, tout ce que veut y mettre l’auteur du message. La section fondamentale: • C’est la Section de description des données. • Elle contient une liste de numéros de descripteurs qui correspondent à des entrées dans les Tables consignées dans le Manuel des codes. • Chaque entrée dans une des Tables du Manuel définit un paramètre (ou un ensemble de paramètres) avec ses (ou leurs) caractéristiques: unité, échelle, largeur du champ. • Cela définit le format attendu du paramètre qui sera transmis dans la Section des données. Considérer les Tables BUFR (CREX) consignées dans le Manuel des Codes officiel de l’OMM: • Tous les descripteurs listés dans la Section de Description des données du message réfèrent une entrée dans une des Tables du Manuel: • soit de la Table B – Liste des descripteurs d’élément – Ils commencent avec ‘0’ (BUFR), ‘D´(CREX) ; e.g. température, pression, etc. • ou de la Table C – Descripteur d’opération – Ils commencent avec ‘2’ (BUFR), ‘C´(CREX) ; e.g. changement d’échelle, indicateurs de qualité suivent (BUFR seulement), etc. • ou de la Table D – Descripteur de Séquence – Ils commencent avec ‘3’ (BUFR), ‘D´(CREX) ; e.g. séquence de la date, des coordonnées, etc. Table B Exemple: 0 20 082 Descripteur d’élément Part du segment libre de nuage Entrée dans la classe Classe 20, phénomènes observés % Unité Nom de l’élément 0 0 7 Valeur de Référence Largeur du Echelle champ de la donnée (bits) Table B Autre exemple: 0 07 010 Niveau de vol Descripteur d’élément Entrée dans la classe Classe 07, Position (verticale) m Unité Nom de l’élément 0 -1024 16 Valeur de Référence Largeur du Echelle champ de la donnée (bits) Extrait de BUFR/CREX Table B Class 12 - Temperature TABLE REFERENCE F 0 0 0 0 0 0 0 0 X 12 12 12 12 12 12 12 12 Y 001 002 003 004 005 006 007 011 0 12 012 BUFR CREX TABLE ELEMENT NAME Temperature/dry-bulb temperature Wet-bulb temperature Dew-point temperature Dry-bulb temperature at 2 m Wet-bulb temperature at 2 m Dew-point temperature at 2 m Virtual temperature Maximum temperature, at height and over period specified Minimum temperature, at height and over period specified UNIT SCALE REFERENCE VALUE DATA WIDTH (Bits) UNIT SCALE DATA WIDTH (Characters ) K K K K K K K K 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 12 12 12 12 12 12 12 12 °C °C °C °C °C °C °C °C 1 1 1 1 1 1 1 1 3 3 3 3 3 3 3 3 K 1 0 12 °C 1 3 Rappel sur la représentation binaire • • • • • • • • • • • • Bits, Plage de valeurs, champ: 1 0-1 0,1 2 0-3 00(0),01(1),10(2x1=2),11((2x1)+1=3) 3 0-7 000(0),001(1),010(2),011(3),100(2x2=4), 101((2x2)+1=5),110,111((2x2)+(2x1)+1=7) 4 0-15 0000, 0001, 0010, 0011, 0100, 0110, 0111, 1000,…,1111 5 0-31 00000,00001,00010,……..,11110,11111 6 0-63 etc.. 7 0-127 8 0-255 9 0-511 10 0-1023 0000000000,…….,1111111111 Etc.. VALEUR DE REFERENCE (BUFR) • Dans BUFR, il n’y a pas de valeur négative: – On a des champs de bits, – Et si tous les bits sont à un cela veut dire valeur manquante, – Donc on a introduit des valeurs de référence (plus grande valeur négative possible) que l’on retranche avant l’encodage de la valeur du paramètre pour obtenir toujours une valeur codée positive. Pour CREX: • On ajoute devant la valeur du paramètre représenté un signe moins pour les valeurs négatives. • Il n’y a donc pas besoin de valeurs de référence pour CREX. • Exemple: -5.4° sera codé: -054 Echelle, (valeur de) référence et champ Encodage: valeur = (obs x [10(”échelle”)]) - “référence” (sur le nombre de bits du champ) e.g.: Avec une échelle=1, valeur de référence=-50, largeur du champ=7 bits alors, si l’obs.=1.3, la valeur encodée est 63 (IL N’Y A PAS DE VALEUR NEGATIVE DANS BUFR!) Cela permet des obs. de -5.0 à +7.6, par pas de 0.1 Décodage: Obs. = (valeur + “référence”) ÷ [10(”échelle”)] e.g.: Avec une échelle =-2, référence=5, champ 4 alors, si la valeur=14, l’obs. décodée est 1900. Extrait de BUFR/CREX Table B Class 05 - Location (horizontal -1) TABLE REFERENCE F 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 X 05 05 05 05 05 05 05 05 05 05 05 05 05 05 05 05 05 05 Y 001 002 011 012 021 022 030 031 033 034 036 040 041 042 043 044 052 053 TABLE ELEMENT NAME Latitude (high accuracy) Latitude (coarse accuracy) Latitude increment (high accuracy) Latitude increment (coarse accuracy) Bearing or azimuth Solar azimuth Direction (spectral) Row number Pixel size on horizontal – 1 Along track row number Ship transect number according to SOOP Orbit number Scan line number Channel number Field of view number Satellite cycle number Channel number increment Field of view number increment UNIT Degree Degree Degree Degree Degree true Degree true Degree Numeric m Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric BUFR REFERENCE SCALE VALUE 5 2 5 2 2 2 0 0 –1 0 0 0 0 0 0 0 0 0 –9000000 –9000 –9000000 –9000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 CREX DATA WIDTH (Bits) 25 15 25 15 16 16 12 12 16 11 7 24 8 6 8 11 5 5 UNIT SCALE Degree Degree Degree Degree Degree true Degree true Degree Numeric m Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric 5 2 5 2 2 2 0 0 -1 0 0 0 0 0 0 0 0 0 DATA WIDTH (Characters) 7 4 7 4 5 5 4 4 5 4 2 8 3 2 3 4 2 2 Table D • Pas absolument nécessaire mais: • Diminue le volume de la Section de Description des données • Un descripteur de la Table D représente une liste standard de descripteurs de la Table B combinés ou non avec des descripteurs de la Table C. • Exemple= 3 01 011 = 0-04-001 Year 0-04-002 Month 0-04-003 Day Category 16 - Synoptic feature sequences TABLE REFERENCE F X Y 3 16 001 3 0 3 0 0 0 0 0 0 0 TABLE REFERENCES 01 011 04 004 01 023 01 021 02 041 19 001 10 051 19 002 19 003 19 004 3 16 002 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 08 04 04 04 04 04 01 08 04 04 04 04 04 07 07 021 001 002 003 004 005 033 021 001 002 003 004 005 002 002 3 16 003 1 0 0 0 1 0 0 0 0 0 0 0 10 31 08 08 04 31 05 06 10 11 08 08 000 001 011 007 000 001 002 002 002 002 007 011 3 16 004 1 0 0 0 0 11 31 08 08 07 000 001 011 007 002 ELEMENT NAME Year, month, day Hour Latitude and longitude (coarse accuracy) Synoptic feature identifier Method for estimating reports related to synoptic features Type of synoptic feature Pressure reduced to mean sea level Effective radius of feature Wind speed threshold (15 m s–1 typically) Effective radius with respect to wind speeds above threshold (Header) Data time (analysis) Year Month Day Hour Minute Originating/generating centre Validity time (fcst) Year Month Day Hour Minute Flight level (altitude) (base of chart layer) Flight level (altitude) (top of chart layer) (Jet stream) Delayed replication Replication Meteorological feature (jet stream value) Dimensional significance (value for line) Delayed replication Replication Latitude (coarse) Longitude (coarse) Flight level (altitude) Wind speed Dimensional significance (cancel) Meteorological feature (cancel/end of object) (Turbulence) Delayed replication Replication Meteorological feature (value for turbulence) Dimensional significance (value for area) Flight level (altitude) (base of layer) 3 16 005 1 0 0 0 0 0 0 0 0 0 08 31 08 08 05 06 01 19 08 08 000 001 005 007 002 002 026 001 007 005 3 16 006 1 0 0 0 0 0 1 0 0 0 0 0 0 0 12 31 08 08 07 07 02 31 05 06 20 20 08 08 000 001 011 007 002 002 000 001 002 002 011(2) 012 007 011 3 16 007 1 0 0 0 1 0 0 0 0 0 0 0 10 31 08 08 04 31 05 06 19 19 08 08 000 001 011(3) 007 000 001 002 002 005 006 007 011 3 16 008 1 0 0 0 0 11 31 08 08 08 000 001 001 007 023(4) (Storm) Delayed replication Replication Meteorological attribute significance (storm centre) Dimensional significance (value for point) Latitude (coarse) Longitude (coarse) WMO storm name (use “UNKNOWN” for a sandstorm) Synoptic features (value for type of storm) Dimensional significance (cancel) Meteorological attribute significance (cancel/end of object) (Cloud) Delayed replication Replication Meteorological feature (value for cloud) Dimensional significance (value for area) Flight level (altitude) (base of layer) Flight level (altitude) (top of layer) Delayed replication Replication Latitude (coarse) Longitude (coarse) Cloud amount Cloud type Dimensional significance (cancel) Meteorological feature (cancel/end of object) (Front) Delayed replication Replication Meteorological feature (value for type of front) Dimensional significance (value for line) Delayed replication Replication Latitude (coarse) Longitude (coarse) Direction of feature Speed of feature Dimensional significance (cancel) Meteorological feature (cancel/end of object) (Tropopause) Delayed replication Replication Vertical significance (bit 3 set for tropopause) Dimensional significance (value for point) Statistic (type of tropopause value) Table C Descripteurs d’opération pour, par exemple: – Changement de la largeur de champ – Changement d’échelle – Changement de la valeur de référence – Indicateurs de contrôle de qualité suivent – Statistiques du premier ordre suivent – Définit “les données présentes” (table binaire) – Ré-utiliser la table binaire “des données présentes” – Annuler la table binaire “des données présentes” Tables BUFR et CREX • Pour décoder, on lit les descripteurs de la section de description des données- est-ce?: • D descripteur? Ou B descripteur? Séquence Communes: groupe d’éléments dans la TABLE D Elément de la TABLE B • Si nécessaire on consulte Table de Code ou d’Indicateurs Tables de Code ou d’Indicateurs • Un peu comme les codes traditionnels pour les Tables de Codes, le code n’est pas une valeur numérique mais une signification pré-agrée, e.g.: – Type de station – Etat du sol – Type de nuages • Tables d’indicateurs (« flag »). Un bit mis à 1 pour chaque condition observée, e.g: – Caractéristiques d’un niveau de sondage vertical (surface, standard, tropopause, vent maximal, significatif pour température, significatif pour vent) Class 08 - Significance qualifiers TABLE REFERENCE F X Y 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 08 08 08 08 08 08 08 08 08 08 08 08 08 08 08 001 002 003 004 005 006 007 008 009 010 011 012 013 014 016 0 08 017 0 0 08 08 018 020 0 0 08 08 021 022 BUFR TABLE ELEMENT NAME Vertical sounding significance Vertical significance (surface observations) Vertical significance (satellite observations) Phase of aircraft flight Meteorological attribute significance Ozone vertical sounding significance Dimensional significance Radiation vertical sounding significance Detailed phase of flight Surface qualifier (temperature data) Meteorological feature Land/sea qualifier Day/night qualifier Qualifier for runway visual range Change qualifier of a trend-type forecast or an aerodrome forecast Qualifier of the time when the forecast change is expected SEAWINDS land/ice surface type Total number of missing entities (with respect to accumulation or average) Time significance Total number (with respect to accumulation or average) CREX UNIT SCALE REFERENCE VALUE UNIT SCALE 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DATA WIDTH (Bits) 7 6 6 3 4 9 4 9 4 5 6 2 2 4 3 Flag table Code table Code table Code table Code table Flag table Code table Flag table Code table Code table Code table Code table Code table Code table Code table 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DATA WIDTH (Characters) 3 2 2 1 2 3 2 3 2 2 2 1 1 2 1 Flag table Code table Code table Code table Code table Flag table Code table Flag table Code Table Code table Code table Code table Code table Code table Code table 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Code table 0 0 2 Code table 0 1 Flag table Numeric 0 0 0 0 17 16 Flag table Numeric 0 0 6 5 Code table Numeric 0 0 0 0 5 16 Code table Numeric 0 0 2 5 Exemple de Table d’indicateurs • 0 08 001 Vertical sounding significance Bit No. 1 Surface 2 Standard level 3 Tropopause level 4 Maximum wind level 5 Significant level, temperature 6 Significant level, wind All 7 Missing value Exemple d’indicateurs • Descripteur: O O8 001: • Champ de 7 bits: • Bits 1,2,3,4,5,6,7 • 0100100 = Niveau standard et significatif de température • Bits 1,2,3,4,5,6,7 • 0010000 = Niveau de la tropopause Différences entre BUFR et CREX • BUFR est binaire, mieux approprié pour les télécommunications et les ordinateurs • BUFR permet la compression des données • BUFR utilise seulement les unités SI (e.g.: la température est toujours en degrés Kelvin), mais unités différentes tolérées pour Aéronautique • CREX est en caractères, facile à lire et à écrire par l’homme • CREX n’a pas de schéma de compression • CREX permet l’usage d’autres unités (e.g.: la température peut être en degrés Celsius ou Kelvin) En général, BUFR et CREX sont très semblables, CREX est l’image de BUFR en caractères. La différence, c’est que CREX est plus facile pour l’homme, il peut être encodé et décodé manuellement (il aide à comprendre BUFR), il peut être utilisé sans automation, mais il n’est pas du tout approprié pour les données volumineuses.