GRIB学习笔记:样例文件分析 - Section 1

目录

本文通过分析一个GRIB2消息介绍GRIB2格式。

样例文件来自中国气象局数值预报中心GRAPES全球模式的预报结果,选用2019年5月26日00时次的000时次850hPa温度场。

Section 1: Identification Section

内容如下

OctetsKeyTypeContent
1-4section1LengthunsignedLength of section in octets (21 or nn)
5numberOfSectionunsignedNumber of section (1)
6-7centrecodetableIdentification of originating/generating centre (see Common Code Table C-11)
8-9subCentreunsignedIdentification of originating/generating sub-centre (allocated by originating/generating Centre)
10tablesVersioncodetableGRIB Master Tables Version Number (see Code Table 1.0 and Note 1)
11localTablesVersioncodetableVersion number of GRIB Local Tables used to augment Master Tables (see Code Table 1.1 and Note 2)
12significanceOfReferenceTimecodetableSignificance of Reference Time (see Code Table 1.2)
13-14yearunsignedYear (4 digits)
15monthunsignedMonth
16dayunsignedDay
17hourunsignedHour
18minuteunsignedMinute
19secondunsignedSecond
20productionStatusOfProcessedDatacodetableProduction status of processed data in this GRIB message (see Code Table 1.3)
21typeOfProcessedDatacodetableType of processed data in this GRIB message (see Code Table 1.4)
22 - 23Identification template number (optional, see Code table 1.5)
24 - nnIdentification template (optional, see template 1.X, where X is the identification template number given in octets 22-23)

grib_dump示例

======================   SECTION_1 ( length=21, padding=0 )    ======================
1-4       section1Length = 21
5         numberOfSection = 1
6-7       centre = 38 [Beijing  (RSMC)  (grib2/centre.table) ]
8-9       subCentre = 0
10        tablesVersion = 4 [Version implemented on 7 November 2007 (grib2/tables/1.0.table) ]
11        localTablesVersion = 1 [Unknown code table entry (grib2/tables/4/1.1.table) ]
12        significanceOfReferenceTime = 0 [Analysis (grib2/tables/4/1.2.table) ]
13-14     year = 2019
15        month = 5
16        day = 27
17        hour = 0
18        minute = 0
19        second = 0
20        productionStatusOfProcessedData = 0 [Operational products (grib2/tables/4/1.3.table) ]
21        typeOfProcessedData = 0 [Analysis products (grib2/tables/4/1.4.table) ]

说明

1-4:section长度 5:section序号

与section 0和8不同,section 1-7 均以这两个字段开头,长度和section序号。样例消息section 1的长度如下:

section 1长度为0x15,下一节起始为0x10 + 0x15 = 0x25

从上图中可以看到,下一节长度为0x48,序号为3.

6-7:中心名,由Common Code Table C-11确定。

8-9:子中心名,由各中心自己确定。

样例文件中心为0x26即38,代表北京,Beijing (RSMC)。

10:表格的主版本号,由Code Table 1.0定义

11: 表格的本地版本号,由Code Table 1.1定义

样例文件表格主版本为4,即Version implemented on 7 November 2007。本地版本号为1,由数值预报中心定义。

12:参考时间的含义(Significance of Reference Time),由Code Table 1.2定义。

样例文件中的0x00表示分析场(Analysis)。另一个常用的值是0x01,表示预报场(Start of forecast)。

13-14:年 15:月 16:日 17:小时 18:分钟 19:秒

数据的参考时间。

年0x07E3=2019,月0x05=5,日0x1B=27。

时0x0=0,分0x0=0,秒0x0=0。目前数值预报中心的GRIB2数据尚未用到分和秒。

数据的准确时间由13-19的参考时间加上产品定义节(Section 4)中附加的时间信息得到。

20:数据产品状态,由Code Table 1.3定义

样例文件为0x0,表示业务产品(Operational products)。

21:数据类型,由Code Table 1.4定义

样例文件为0x0,表示分析场产品( Analysis products)。

至此已到达Section 1的长度结尾,数值预报中心的GRIB2文件尚未定义可选的Identification template。