ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO...

19
Slide 1 ecCodes a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF 14th MOS Workshop – 20th November 2014 Slide 1

Transcript of ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO...

Page 1: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 1

ecCodes

a new decoder for binary and alphanumeric codes

Enrico Fucile ECMWF

14th MOS Workshop – 20th November 2014 Slide 1

Page 2: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 2

WMO alphanumeric and binary codes

14th MOS Workshop – 20th November 2014 Slide 2

Page 3: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 3

WMO alphanumeric codes: METAR

14th MOS Workshop – 20th November 2014 Slide 3

Page 4: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 4

WMO alphanumeric codes

METAR: Aerodrome observation

METAR EDDF 120550Z 03015KT 1400 R07R/P2000N R07C/P2000N R07L/1900U SN DRSN BR VV/// M04/M04 Q1000 R07L/11//90 R07C/15//90 R07R/15//90 BECMG 4000 NSW=

14th MOS Workshop – 20th November 2014 Slide 4

Page 5: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 5

WMO alphanumeric codes: SYNOP

14th MOS Workshop – 20th November 2014 Slide 5

Page 6: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 6

WMO alphanumeric codes: SYNOP

SYNOP: synoptic observation

AAXX 13094 03002 45462 /0514 10097 20073 30238 40256 58011 90850 333 88/11=

14th MOS Workshop – 20th November 2014 Slide 6

Page 7: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 7

WMO Binary codes

Table Driven Code Forms

BUFR Binary Universal Form for the Representation of meteorological data

GRIB General Regularly-distributed Information in

Binary form

14th MOS Workshop – 20th November 2014 Slide 7

Page 8: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 8

BUFR elements

14th MOS Workshop – 20th November 2014 Slide 8

2 bits 6 bits 8 bits

Page 9: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 9

BUFR operators

14th MOS Workshop – 20th November 2014 Slide 9

Page 10: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 10

WMO binary codes: BUFR SYNOP

14th MOS Workshop – 20th November 2014 Slide 10

Delayed replication

Page 11: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 11

BUFR 2 layers model

14th MOS Workshop – 20th November 2014 Slide 11

Binary

Semantic

Page 12: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 12

airTemperature latitude longitude relativeHumidity day month hour height aircraftFightNumber

channelNumber pressure mixingRatio precipitation Semantic

010010110101010010101010101000010010111110101010101010101010101010100000101000101010010101001010101000101010101010010101010010101000010101110101001010100

BUFR 2 layers model

14th MOS Workshop – 20th November 2014 Slide 12

Binary

Page 13: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 13

BUFR 2 layers model

14th MOS Workshop – 20th November 2014 Slide 13

010010110101010010101010101000010010111110101010101010101010101010100000101000101010010101001010101000101010101010010101010010101000010101110101001010100 Binary

airTemperature latitude longitude relativeHumidity day month hour height aircraftFightNumber

channelNumber pressure mixingRatio precipitation Semantic 001211 310022 301011 301013 301021 102004 027001 028001 007022 005040 005043 020010 020016 013040 008043 008044 033054 010040

Page 14: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 14

14th MOS Workshop – 20th November 2014 Slide 14

Semantic

Binary

Page 15: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 15

ecCodes view

14th MOS Workshop – 20th November 2014 Slide 15

Semantic

Binary

User software

ecCodes

Page 16: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 16

ecCodes semantics approach

dt=codes_get(m,’dewPointTemperature’)

dt9=codes_get(m,’/hour=9/dewPointTemperature’)

backscatter=codes_get(m,’/beamIdentifier=2/backscatter’)

radiance=codes_get(m,’/channelNumber=45/radiance’)

14th MOS Workshop – 20th November 2014 Slide 16

One single get function for all message types

Clear text identifiers

Tree like / hierarchical access

Array is returned. Dynamically allocated in FORTRAN

Page 17: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 17

ecCodes design

14th MOS Workshop – 20th November 2014 Slide 17

Decoding engine

Decoding rules

(TEXT FILES)

Message

User interface

dewPointTemperature

17.5

Hand written (error prone)

Automatically generated from publicly available source shared with other decoders

Meaning publicly available on web

Web accessible registry

codes.wmo.int

1. Source of meaning for the user

2. Provides automatic generation of the decoding rules

Page 18: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 18

ecCodes messages and bindings

14th MOS Workshop – 20th November 2014 Slide 18

ecCodes

GRIB1

GRIB2

BUFR

METAR

FORTRAN

C

Python

Perl

? ?

TAF

GTS

Tools

Page 19: ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …

Slide 19

ecCodes coming soon

Under development, currently in a prototype stage Beta version will be available soon from

software.ecmwf.int Back compatible with grib_api

14th MOS Workshop – 20th November 2014 Slide 19