Updates to the TC tracks BUFR header
New sequence of data descriptors
WMO BUFR Tables version 35 contain new sequence of data descriptors 316082 that combines all previously used descriptors. The single 316082 sequence is used that expands into the previous sequence.
New | Old | |
---|---|---|
ecCodes key = unexpandedDataDescriptors | 316082 |
|
Correction to inconsistent encoding of the BUFR headers
With the introduction of the TC tracks from the 06/18 UTC forecast cycles, an inconsistency in the encoding of the BUFR headers has been corrected. The ensembleForecastType key (BUFR descriptor 001092) now contains the correct information for the different member forecasts (key ensembleMemberNumber, BUFR descriptor 001091), including situations where only one member is present.
WMO BUFR Tables 35 also introduce the new type of ensemble forecast type for BUFR Descriptor 001092 which can be set to 4 to indicate a Perturbed forecast. The ENS perturbed members were previously set to 'MISSING'. The changes made are summarised in the table:
BUFR Descriptor 001091 | BUFR Descriptor 001092 ecCodes key = ensembleForecastType | |
---|---|---|
HRES | 52 | 0 |
ENS control | 51 | 1 |
ENS perturbed member | 1 - 50 | 4 |
See WMO=35 code-flag table#CF_001092 (TYPE OF ENSEMBLE FORECAST).
In addition, the ecCodes key internationalDataSubCategory (BUFRDC section 1 element named DATA SUB-CATEGORY) for TC tracks from HRES is set to 2 (instead of 255 as a missing value). For TC tracks from ENS it remains set to 0.
Sample TC tracks BUFR data for technical testing
Sample Tropical Cyclone tracks data in BUFR format are available for Tropical Cyclone GENEVIEVE for 22 August 2020 at 00 UTC, for HRES and ENS. These can be used for technical testing.
Old (using WMO BUFR tables version 33) | New (using WMO BUFR tables version 35) | |
---|---|---|
HRES | ||
ENS |
Both new and old TC track files use the same IFS input data. Users should be able to run their existing Tropical Cyclones decoder programs 'as they are' on the old tracks data encoded using WMO BUFR Tables version 33. These files should be used as a reference. Users should make sure that their programs run with the new tracks data encoded using WMO BUFR Tables version 35. You may need to make changes to your programs.
Testing your TC tracks BUFR decoding software
We recommend users to test their decoding software with the above mentioned sample data. ecCodes versions 2.20.0 and above and BUFRDC with WMO tables version 35 have been tested at ECMWF and do work correctly. As the sequence of data descriptors (ecCodes key unexpandedDescriptors) is different in the new TC tracks, the decoder programs previously used may need to be adapted.
ecCodes users:
If you do not use a recent version (2.20.0 or newer), you will see an error message like:
ECCODES ERROR : unable to find definition file sequence.def in bufr/tables/0/wmo/35/sequence.def::bufr/tables/0/local/0/98/0/sequence.def
Definition files path="/usr/local/apps/eccodes/2.19.1/GNU/7.3.0/share/eccodes/definitions"
ECCODES ERROR : unable to get hash value for sequences
ERROR: unable to unpack data section: Hash array no match (message=1)
You will then need to download, install and use a newer version of ecCodes.
BUFRDC users:
If you use BUFRDC and do not have the WMO BUFR tables version 35 installed, you will see an error message like:
BUFR TABLES TO BE LOADED B0000000000000035000.TXT,D0000000000000035000.TXT
open error on /usr/local/apps/bufrdc/tables/000417/B0000000000000035000.TXT
You will then need to download, install and use the WMO BUFR tables version 35. You can point BUFRDC to a different version of the BUFR tables by setting the environmental variable BUFR_TABLES
e.g.::
export BUFR_TABLES=<dir>/bufrdc_tables_wmo_v35/
where <dir>/bufrdc_tables_wmo_v35
is the directory containing the BUFR tables.
On ECMWF systems the WMO BUFR tables version 35 are installed in /usr/local/apps/bufrdc/tables/000418/
export BUFR_TABLES=/usr/local/apps/bufrdc/tables/000418/
Access to test data
TC tracks test files from the pre-operational e-suite are available in real-time for download in BUFR4 format from:
For users with TC tracks configured via ECMWF real time dissemination system see Availability of IFS cycle 47r2 test datav
Further documentation
The ecCodes HOME page includes (Fortran, C and python) examples to decode BUFR messages as well as a command line tool to generate sample source code/scripts to decode any BUFR message.
The BUFRDC HOME page includes the necessary WMO BUFR tables and the BUFRDC user and reference manuals. Note that we do not release new versions of the BUFRDC software any longer. We advise users to migrate their BUFRDC codes to ecCodes.