ecCodes - ECMWF a new decoder for binary and alphanumeric codes Enrico Fucile ECMWF . ... WMO alphanumeric codes: METAR 14 th MOS …
Post on 18-May-2018
253 Views
Preview:
Transcript
Slide 1
ecCodes
a new decoder for binary and alphanumeric codes
Enrico Fucile ECMWF
14th MOS Workshop – 20th November 2014 Slide 1
Slide 2
WMO alphanumeric and binary codes
14th MOS Workshop – 20th November 2014 Slide 2
Slide 3
WMO alphanumeric codes: METAR
14th MOS Workshop – 20th November 2014 Slide 3
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
Slide 5
WMO alphanumeric codes: SYNOP
14th MOS Workshop – 20th November 2014 Slide 5
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
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
Slide 8
BUFR elements
14th MOS Workshop – 20th November 2014 Slide 8
2 bits 6 bits 8 bits
Slide 9
BUFR operators
14th MOS Workshop – 20th November 2014 Slide 9
Slide 10
WMO binary codes: BUFR SYNOP
14th MOS Workshop – 20th November 2014 Slide 10
Delayed replication
Slide 11
BUFR 2 layers model
14th MOS Workshop – 20th November 2014 Slide 11
Binary
Semantic
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
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
Slide 14
14th MOS Workshop – 20th November 2014 Slide 14
Semantic
Binary
Slide 15
ecCodes view
14th MOS Workshop – 20th November 2014 Slide 15
Semantic
Binary
User software
ecCodes
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
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
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
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
top related