...
Now let us get some help from ecCodes python interface and command line BUFR tools to investigate the chosen template in more details. Firstly, we can create a BUFR file without encoding data with the template of our choice.
Code Block | ||||
---|---|---|---|---|
| ||||
#!/usr/bin/env python # (C) Copyright 1996- ECMWF. # # This software is licensed under the terms of the Apache Licence Version 2.0 # which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. # # In applying this licence, ECMWF does not waive the privileges and immunities # granted to it by virtue of its status as an intergovernmental organisation # nor does it submit to any jurisdiction. from eccodes import * ibufr = codes_bufr_new_from_samples('BUFR4') # Creates a new valid message id from a BUFR sample codes_set(ibufr, 'edition', 4) # BUFR edition number codes_set(ibufr, 'masterTableNumber', 0) # BUFR master table. Zero: standard WMO FM 94 BUFR tables codes_set(ibufr, 'masterTablesVersionNumber', 31) # Version number of master table used ivalues = (307092) # Template to be used codes_set(ibufr, 'unexpandedDescriptors', ivalues) # Key name to encode the sequence number is unexpandedDescriptors fout = open('TM307092.bufr', 'w') # Open output file codes_write(ibufr, fout) # Write the message to output file codes_release(ibufr) # Release the BUFR message from memory fout.close() # Close the file |
...