WRF学习之 ch3 WPS(四)创建和编辑Vtable文件
网上有关于ERA-Interim 驱动WRF的帖子和用ERA5(模式层)驱动WRF的帖子。但没有ERA5气压层驱动的例子,以下是一些尝试
关于变量表Vtables (翻译自WRF手册 ,第3-39(61页))
创建和编辑Vtables
虽然提供了众多数据集的Vtables,但是ungrib不可能以GRIB格式预测每种可能的气象数据来源。当ungrib.exe处理新的数据源时,用户可以从头开始创建新的Vtable,也可以使用现有的Vtable作为示例。
每个Vtable包含7个或11个字段,具体取决于Vtable是用于GRIB1的数据还是GRIB2的数据。该Vtable的字段分为三类:描述如何在GRIB文件中识别数据的字段,描述如何通过ungrib和metgrid程序识别数据的字段,以及GRIB Edition 2的特定字段。每个将要由 ungrib.exe 提取的变量,在Vtable中将会有一行或多行,其中多行用于在不同level tpye(层次类型)之间分割的数据。例如,地面层和高空层。在Vtable中的字段,必须在一行或一条中指定,并且取决于字段和层次的详细信息。
第一组字段——这些用来描述GRIB文件中的数据是如何识别的——在下面显示的Vtable的列标题下给出。
GRIB1| Level| From | To |
Param| Type |Level1|Level2|
-----+------+------+------+
其中的“GRIB1 Param”字段指定了气象场的GRIB码(GRIB code),他在该数据集集中是一个独一无二的数字。然而,不同的数据集中对于相同的变量场可能有不同的GRIB码——例如,高层温度的GRIB码在GFS数据中是11,而在ECMWF中是130。为了获取气象场的GRIB码,可以使用g1print.exe和g2print.exe工具。
得到一个GRIB码之后,“Level Type”,“From Level1”,和“From Level2”字段被用于确定需要去查找哪些场。如,使用“GRIB1 Param”字段,g1print.exe和g2print.exe可以去用来找到level fields的值。level fields的意义是依赖于“Level Type”场,见下表。
Level | Level Type | From Level1 | To Level2 |
Upper-air | 100 | * | (blank) |
Surface | 1 | 0 | (blank) |
Sea-level | 102 | 0 | (blank) |
Levels at a sepecified height AGL | 105 |
Height, in meters, of |
(blank) |
Fields given as layers | 112 |
Starting level for the |
Ending level for |
其中层次字段(层次类型112)被给定,起始和终止位置对于层次的单位由场本身决定,可以使用g1print.exe和g2print.exe工具找到合适的值。
Vtable中的第二组字段,用来描述数据是如何在metgrid和real 程序中被识别的,在下面显示的Vtable的列标题下给出。
| metgrid | metgrid | metgrid |
| Name | Units | Description |
+----------+---------+-----------------------------------------+
这三个字段中最重要的是“metgrid Name”场,其决定了当其通过ungrib写入中间文件时,将要被复制到气象场中的变量的名字。这个名字同样应当与METGRID.TBL文件的条目对应。所以,metgrid 程序可以确定气象场是如何水平的插值的。“metgrid Units”和“metgrid Description”字段分别定义了单位和变量简述。在这里,隆重指出,如果对于一个场没有给出描述,那么ungrib将不会将该场写入中间文件中。
字段的最后一组,提供了GRIB2特定的信息,如下表所示。
|GRIB2|GRIB2|GRIB2|GRIB2|
|Discp|Catgy|Param|Level|
+-----------------------+
虽然在Vtable中包含这些字段并不会妨碍Vtable也用于GRIB1数据,但在Vtable中,GRIB2 字段仅仅对于GRIB2格式的数据集需要。例如,Vtable.GFS文件包含GRIB2 Vtable 字段,但也适用于1度(GRIB1)GFS和0.5度(GRIB2)GFS数据集。 由于已经为大多数已知的GRIB 2数据集提供了Vtable,因此目前不在此描述相应的Vtable字段。。。
例子 Vtable.GFS
例子 (Vtable.ERA-interim.pl)
注:驱动WRF需要的变量http://www2.mmm.ucar.edu/wrf/OnLineTutorial/Basics/UNGRIB/ungrib_req_fields.php
注:ERA5的变量字段可在官网查询https://apps.ecmwf.int/codes/grib/param-db
经过与ERA-Interm 的GRIB code对比,可以发现,ERA-Interim中GRIB码为39~42的变量描述为“土壤湿度“soil moisture,而在ERA5中,相应的GRIB码对应的变量描述为Volumetric soil water。所以,用ERA5驱动WRF时候下载土壤湿度时,应该下载的变量名是这个。
根据以上,照葫芦画瓢,相信可以成功ungrib ERA5 气压层的数据,具体信息成功后再更。