Généralité sur les Codes Déterminés par des Tables Joël Martellet.

25
Généralité sur les Généralité sur les Codes Déterminés par Codes Déterminés par des Tables des Tables Joël Martellet

Transcript of Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Page 1: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Généralité sur les Codes Généralité sur les Codes Déterminés par des TablesDéterminés par des Tables

Joël Martellet

Page 2: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

PlanPlan

Auto-description Structure des Codes Tables BUFR et CREX Aspects communs à BUFR et à CREX Différences entre BUFR et CREX

Page 3: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Codes Déterminés par des TablesCodes 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)

Page 4: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Structure généraleStructure générale• Indicateur: GRIB/BUFR/CREX• Identification: Date, heure,

origine, numéro d’édition, numéro de version des tables ...

• Section facultative: e.g. plus de Meta-donné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”

Les Codes Définis par des Tables ont en général cette

structure

Page 5: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Structure de BUFR et CREXStructure de BUFR et CREX

• BUFR SECTION 0 Section Indicatrice SECTION 1 Section d’identification SECTION 2 (Section facultative) SECTION 3 Section de Description des données SECTION 4 Section des donnéesSECTION 5 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

Page 6: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Quelques aspectsQuelques 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.

Page 7: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

La section fondamentale: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.

Page 8: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Considérer les Tables BUFR (CREX) Considérer les Tables BUFR (CREX) consignées dans le Manuel des Codes consignées dans le Manuel des Codes

officiel de l’OMM: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.

Page 9: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Table BTable BExemple:0 20 082 Part du segment % 0 0 7 libre de nuage

Largeur du

champ de la

donnée (bits)

Nom de l’élémen

t

Descripteur

d’élément

Unité

Classe 20, phénomèn

es observés

Valeur de Référenc

e

Echelle

Entrée dans la classe

Page 10: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Table BTable BAutre exemple:0 07 010 Niveau de vol m 0 -1024

16

Largeur du

champ de la

donnée (bits)

Nom de l’élémen

t

Descripteur

d’élément

Unité

Classe 07, Position

(verticale)

Valeur de Référenc

e

Echelle

Entrée dans la classe

Page 11: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Extrait de BUFR/CREX Table BExtrait de BUFR/CREX Table B

Class 12 - Temperature

TABLEREFERENCE TABLE

ELEMENT NAME

BUFR CREX

UNIT SCALE REFERENCEVALUE

DATAWIDTH(Bits)

UNIT SCALEDATAWIDTH

(Characters)

F X Y0 12 001 Temperature/dry-bulb temperature K 1 0 12 °C 1 30 12 002 Wet-bulb temperature K 1 0 12 °C 1 30 12 003 Dew-point temperature K 1 0 12 °C 1 30 12 004 Dry-bulb temperature at 2 m K 1 0 12 °C 1 30 12 005 Wet-bulb temperature at 2 m K 1 0 12 °C 1 30 12 006 Dew-point temperature at 2 m K 1 0 12 °C 1 30 12 007 Virtual temperature K 1 0 12 °C 1 30 12 011 Maximum temperature, at height and over

period specifiedK 1 0 12 °C 1 3

0 12 012 Minimum temperature, at height and overperiod specified

K 1 0 12 °C 1 3

Page 12: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Rappel sur la représentation Rappel sur la représentation binairebinaire• 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..

Page 13: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

VALEUR DE REFERENCE (BUFR)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.

Page 14: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Pour CREX: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

Page 15: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Echelle, (valeur de) référence et Echelle, (valeur de) référence et champchamp

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.1Dé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.

Page 16: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Extrait de BUFR/CREX Table BExtrait de BUFR/CREX Table B

Class 05 - Location (horizontal -1)

BUFR CREX TABLE REFERENCE

F X Y

TABLE

ELEMENT NAME

UNIT

SCALE REFERENCE

VALUE DATA

WIDTH (Bits)

UNIT

SCALE

DATA WIDTH

(Characters) 0 05 001 Latitude (high accuracy) Degree 5 –9000000 25 Degree 5 7 0 05 002 Latitude (coarse accuracy) Degree 2 –9000 15 Degree 2 4 0 05 011 Latitude increment (high accuracy) Degree 5 –9000000 25 Degree 5 7 0 05 012 Latitude increment (coarse accuracy) Degree 2 –9000 15 Degree 2 4 0 05 021 Bearing or azimuth Degree true 2 0 16 Degree true 2 5 0 05 022 Solar azimuth Degree true 2 0 16 Degree true 2 5 0 05 030 Direction (spectral) Degree 0 0 12 Degree 0 4 0 05 031 Row number Numeric 0 0 12 Numeric 0 4 0 05 033 Pixel size on horizontal – 1 m –1 0 16 m -1 5 0 05 034 Along track row number Numeric 0 0 11 Numeric 0 4 0 05 036 Ship transect number according to SOOP Numeric 0 0 7 Numeric 0 2 0 05 040 Orbit number Numeric 0 0 24 Numeric 0 8 0 05 041 Scan line number Numeric 0 0 8 Numeric 0 3 0 05 042 Channel number Numeric 0 0 6 Numeric 0 2 0 05 043 Field of view number Numeric 0 0 8 Numeric 0 3 0 05 044 Satellite cycle number Numeric 0 0 11 Numeric 0 4 0 05 052 Channel number increment Numeric 0 0 5 Numeric 0 2 0 05 053 Field of view number increment Numeric 0 0 5 Numeric 0 2

Page 17: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Table DTable 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 Year0-04-002 Month0-04-003 Day

Page 18: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Category 16 - Synoptic feature sequences

TABLEREFERENCE

F X YTABLE

REFERENCESELEMENT NAME

3 16 001 3 01 011 Year, month, day

0 04 004 Hour3 01 023 Latitude and longitude (coarse accuracy)

0 01 021 Synoptic feature identifier0 02 041 Method for estimating reports related to synoptic features

0 19 001 Type of synoptic feature0 10 051 Pressure reduced to mean sea level

0 19 002 Effective radius of feature0 19 003 Wind speed threshold (15 m s–1 typically)

0 19 004 Effective radius with respect to wind speeds above threshold(Header)

3 16 002 0 08 021 Data time (analysis)0 04 001 Year

0 04 002 Month0 04 003 Day

0 04 004 Hour0 04 005 Minute

0 01 033 Originating/generating centre0 08 021 Validity time (fcst)

0 04 001 Year0 04 002 Month

0 04 003 Day0 04 004 Hour

0 04 005 Minute

0 07 002 Flight level (altitude) (base of chart layer)0 07 002 Flight level (altitude) (top of chart layer)

(Jet stream)3 16 003 1 10 000 Delayed replication

0 31 001 Replication0 08 011 Meteorological feature (jet stream value)

0 08 007 Dimensional significance (value for line)1 04 000 Delayed replication

0 31 001 Replication0 05 002 Latitude (coarse)

0 06 002 Longitude (coarse)0 10 002 Flight level (altitude)

0 11 002 Wind speed

0 08 007 Dimensional significance (cancel)0 08 011 Meteorological feature (cancel/end of object)

(Turbulence)3 16 004 1 11 000 Delayed replication

0 31 001 Replication0 08 011 Meteorological feature (value for turbulence)

0 08 007 Dimensional significance (value for area)0 07 002 Flight level (altitude) (base of layer)

(Storm)

3 16 005 1 08 000 Delayed replication

0 31 001 Replication

0 08 005 Meteorological attribute significance (storm centre)

0 08 007 Dimensional significance (value for point)

0 05 002 Latitude (coarse)

0 06 002 Longitude (coarse)

0 01 026 WMO storm name (use “UNKNOWN” for a sandstorm)

0 19 001 Synoptic features (value for type of storm)

0 08 007 Dimensional significance (cancel)

0 08 005 Meteorological attribute significance (cancel/end of object)

(Cloud)

3 16 006 1 12 000 Delayed replication

0 31 001 Replication

0 08 011 Meteorological feature (value for cloud)

0 08 007 Dimensional significance (value for area)

0 07 002 Flight level (altitude) (base of layer)

0 07 002 Flight level (altitude) (top of layer)

1 02 000 Delayed replication

0 31 001 Replication

0 05 002 Latitude (coarse)

0 06 002 Longitude (coarse)

0 20 011(2) Cloud amount

0 20 012 Cloud type

0 08 007 Dimensional significance (cancel)

0 08 011 Meteorological feature (cancel/end of object)

(Front)

3 16 007 1 10 000 Delayed replication

0 31 001 Replication

0 08 011(3) Meteorological feature (value for type of front)

0 08 007 Dimensional significance (value for line)

1 04 000 Delayed replication

0 31 001 Replication

0 05 002 Latitude (coarse)

0 06 002 Longitude (coarse)

0 19 005 Direction of feature

0 19 006 Speed of feature

0 08 007 Dimensional significance (cancel)

0 08 011 Meteorological feature (cancel/end of object)

(Tropopause)

3 16 008 1 11 000 Delayed replication

0 31 001 Replication

0 08 001 Vertical significance (bit 3 set for tropopause)

0 08 007 Dimensional significance (value for point)

0 08 023(4) Statistic (type of tropopause value)

Page 19: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Table CTable CDescripteurs 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”

Page 20: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Tables BUFR et CREXTables 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?

• Si nécessaire on consulte

SéquenceCommunes:

groupe d’éléments dans la TABLE D

Elément de la TABLE B

Table de Code oud’Indicateurs

Page 21: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

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)

Page 22: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Class 08 - Significance qualifiers

BUFR CREX TABLE REFERENCE

F X Y

TABLE

ELEMENT NAME

UNIT

SCALE REFERENCE

VALUE DATA

WIDTH (Bits)

UNIT

SCALE

DATA WIDTH

(Characters) 0 08 001 Vertical sounding significance Flag table 0 0 7 Flag table 0 3 0 08 002 Vertical significance (surface observations) Code table 0 0 6 Code table 0 2 0 08 003 Vertical significance (satellite observations) Code table 0 0 6 Code table 0 2 0 08 004 Phase of aircraft flight Code table 0 0 3 Code table 0 1 0 08 005 Meteorological attribute significance Code table 0 0 4 Code table 0 2 0 08 006 Ozone vertical sounding significance Flag table 0 0 9 Flag table 0 3 0 08 007 Dimensional significance Code table 0 0 4 Code table 0 2 0 08 008 Radiation vertical sounding significance Flag table 0 0 9 Flag table 0 3 0 08 009 Detailed phase of flight Code Table 0 0 4 Code table 0 2 0 08 010 Surface qualifier (temperature data) Code table 0 0 5 Code table 0 2 0 08 011 Meteorological feature Code table 0 0 6 Code table 0 2 0 08 012 Land/sea qualifier Code table 0 0 2 Code table 0 1 0 08 013 Day/night qualifier Code table 0 0 2 Code table 0 1 0 08 014 Qualifier for runway visual range Code table 0 0 4 Code table 0 2 0 08 016 Change qualifier of a trend-type forecast or an

aerodrome forecast Code table 0 0 3 Code table 0 1

0 08 017 Qualifier of the time when the forecast change is expected

Code table 0 0 2 Code table 0 1

0 08 018 SEAWINDS land/ice surface type Flag table 0 0 17 Flag table 0 6 0 08 020 Total number of missing entities (with respect to

accumulation or average) Numeric 0 0 16 Numeric 0 5

0 08 021 Time significance Code table 0 0 5 Code table 0 2 0 08 022 Total number (with respect to accumulation or

average) Numeric 0 0 16 Numeric 0 5

Page 23: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Exemple de Table d’indicateursExemple de Table d’indicateurs• 0 08 001

Vertical sounding significance

Bit No. 

1 Surface2 Standard level3 Tropopause level4 Maximum wind level5 Significant level, temperature6 Significant level, wind

All 7 Missing value

Page 24: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Exemple d’indicateursExemple 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

Page 25: Généralité sur les Codes Déterminés par des Tables Joël Martellet.

Différences entre BUFR et CREXDiffé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.