当前位置: 首页 > article >正文

【WRF教程第3.6期】预处理系统 WPS 详解:以4.5版本为例

预处理系统 WPS 详解:以4.5版本为例

  • Geogrid/Metgrid 插值选项详解
    • 1. 插值方法的工作机制
    • 2. 插值方法的详细说明
      • 2.1 四点双线性插值(four_pt)
      • 2.2 十六点重叠抛物线插值(sixteen_pt)
      • 2.3 简单四点平均插值(average_4pt)
      • 2.4 加权四点平均插值(wt_average_4pt)
      • 2.5 简单十六点平均插值(average_16pt)
      • 2.6 加权十六点平均插值(wt_average_16pt)
      • 2.7 最近邻插值(nearest_neighbor)
      • 2.8 广度优先搜索插值(search)
      • 2.9 模型网格单元平均插值(average_gcell)
    • 3. 插值方法的选择与组合
  • 静态数据中的土地利用与土壤分类
    • 土地利用分类
    • 土壤分类
  • WPS输出字段(WPS Output Fields)
    • 1. Geogrid输出(Geogrid Output)
    • 2. Metgrid 输出(Metgrid Output)
  • 参考

Geogrid/Metgrid 插值选项详解

在 WRF/WPS 模型中,GEOGRID.TBL 和 METGRID.TBL 文件用于控制静态地理数据(geogrid)或气象数据(metgrid)的插值方式。用户可以为每个变量指定一种或多种插值方法,按优先级尝试这些方法,直至某种方法成功或列表耗尽。

以下是 WPS 中可用的插值方法的详细概述,包括它们的适用场景、插值原理和计算细节。

1. 插值方法的工作机制

多种插值方法组合使用:例如,interp_option=four_pt+average_4pt 表示优先尝试四点双线性插值(four_pt),如果数据中存在缺失值导致插值失败,则退回到简单四点平均插值(average_4pt)。

连续与分类数据的区别:

  • 连续数据(continuous):适用于具有连续数值的字段(如地形高度)。
  • 分类数据(categorical):适用于离散类别字段(如土地利用类型)。

2. 插值方法的详细说明

2.1 四点双线性插值(four_pt)

方法描述:要求目标点 (x,y) 周围有四个有效数据点(a11, a12, a21, a22),以实现插值。

计算步骤:
1、对 a11 和 a12 在 x 轴方向线性插值,得到中间值;
2、对 a21 和 a22 在 x 轴方向线性插值;
3、对上述两个中间值在 y 轴方向线性插值,最终得到 (x,y) 的插值值。

适用场景:适合无缺失值的连续数据。
在这里插入图片描述

2.2 十六点重叠抛物线插值(sixteen_pt)

方法描述:使用 (x,y) 周围的 16 个有效数据点,拟合抛物线进行插值。

计算步骤:
1、对每行的四组连续点(如 ai1, ai2, ai3 和 ai2, ai3, ai4)拟合两条抛物线;
2、计算目标 x 坐标上的中间值,并对两个抛物线的结果加权平均;
3、最后,对所有行的中间值沿 y 轴方向进行类似操作。

特点:比双线性插值更平滑,但需要更多的有效点。

适用场景:适合连续数据,精度高。

在这里插入图片描述

2.3 简单四点平均插值(average_4pt)

方法描述:使用 (x,y) 周围四个点中的一部分有效数据点,计算其简单平均值。
优点:容忍部分数据缺失。
适用场景:适合数据稀疏或有缺失值的情况。

2.4 加权四点平均插值(wt_average_4pt)

方法描述:对 (x,y) 周围的四个点进行加权平均,权重由点到目标点的距离决定:
在这里插入图片描述

其中,x_i 和 y_j 是数据点的坐标。
优点:权重更精准,适合部分缺失数据且需要较高精度的场景。

2.5 简单十六点平均插值(average_16pt)

方法描述:类似于 average_4pt,但使用 (x,y) 周围的 16 个点。
适用场景:适合处理更高分辨率数据的情况。

2.6 加权十六点平均插值(wt_average_16pt)

方法描述:类似于 wt_average_4pt,但使用 (x,y) 周围的 16 个点
权重公式如下:
在这里插入图片描述
特点:精度更高,但对计算资源要求较高。

2.7 最近邻插值(nearest_neighbor)

方法描述:

  • 对连续数据:直接选取离 (x,y) 最近的源数据点值。
  • 对分类数据:计算网格中每种类别的占比,并以占比最大的类别为结果。

适用场景:适合分类数据或低分辨率数据。

2.8 广度优先搜索插值(search)

方法描述:将数据点视为二维网格图,从 (x,y) 最近的源数据点开始广度优先搜索,找到最近的有效点,使用其值进行插值。

特点:可以解决稀疏数据的插值问题,找到最近的“有效邻居”。
适用场景:适合数据缺失严重的情况。

2.9 模型网格单元平均插值(average_gcell)

方法描述:适用于源数据分辨率高于模型网格分辨率的情况。对于每个模型网格单元,计算所有靠近其中心的源数据点的简单平均值。

特点:适合高分辨率数据的降采样。
适用场景:常用于地形等静态数据的插值。

在这里插入图片描述

3. 插值方法的选择与组合

组合使用插值方法:可以通过 + 符号组合多种方法。例如:

interp_option=four_pt+average_4pt

表示优先尝试 four_pt,失败时退回到 average_4pt。

插值选项示例:
1、对地形高度数据:

interp_option=four_pt+average_4pt

2、对土地利用分类数据:

interp_option=nearest_neighbor

3、对气象场降水数据:

interp_option=wt_average_16pt

静态数据中的土地利用与土壤分类

土地利用分类

静态数据中的默认土地利用分类使用的是 MODIS 分类,与 WRF 的 VEGPARM.TBL 和 LANDUSE.TBL 文件相匹配。
用户可以下载更高分辨率的静态数据(如 USGS 数据),并确保其分类与表格文件一致。

土壤分类

静态数据中的土壤分类与 WRF 的 SOILPARM.TBL 文件匹配,用户需确保所用数据集的分类编号与表格文件一致。

WPS输出字段(WPS Output Fields)

1. Geogrid输出(Geogrid Output)

以下是写入 geogrid 程序输出文件的全局属性和字段的列表。此列表是 ncdump 程序在典型的 geo_em.d01.nc 文件上运行时输出的精简版本。

> ncdump -h geo_em.d01.nc

netcdf geo_em.d01 {
dimensions:
        Time = UNLIMITED ; // (1 currently)
        DateStrLen = 19 ;
        west_east = 73 ;
        south_north = 60 ;
        south_north_stag = 61 ;
        west_east_stag = 74 ;
        land_cat = 21 ;
        soil_cat = 16 ;
        month = 12 ;
        num_urb_params = 132 ;
variables:
      char Times(Time, DateStrLen) ;
      float XLAT_M(Time, south_north, west_east) ;
           XLAT_M:units = "degrees latitude" ;
           XLAT_M:description = "Latitude on mass grid" ;
      float XLONG_M(Time, south_north, west_east) ;
           XLONG_M:units = "degrees longitude" ;
           XLONG_M:description = "Longitude on mass grid" ;
      float XLAT_V(Time, south_north_stag, west_east) ;
           XLAT_V:units = "degrees latitude" ;
           XLAT_V:description = "Latitude on V grid" ;
      float XLONG_V(Time, south_north_stag, west_east) ;
           XLONG_V:units = "degrees longitude" ;
           XLONG_V:description = "Longitude on V grid" ;
      float XLAT_U(Time, south_north, west_east_stag) ;
           XLAT_U:units = "degrees latitude" ;
           XLAT_U:description = "Latitude on U grid" ;
      float XLONG_U(Time, south_north, west_east_stag) ;
           XLONG_U:units = "degrees longitude" ;
           XLONG_U:description = "Longitude on U grid" ;
      float CLAT(Time, south_north, west_east) ;
           CLAT:units = "degrees latitude" ;
           CLAT:description = "Computational latitude on mass grid" ;
      float CLONG(Time, south_north, west_east) ;
           CLONG:units = "degrees longitude" ;
           CLONG:description = "Computational longitude on mass grid" ;
      float MAPFAC_M(Time, south_north, west_east) ;
           MAPFAC_M:units = "none" ;
           MAPFAC_M:description = "Mapfactor on mass grid" ;
      float MAPFAC_V(Time, south_north_stag, west_east) ;
           MAPFAC_V:units = "none" ;
           MAPFAC_V:description = "Mapfactor on V grid" ;
      float MAPFAC_U(Time, south_north, west_east_stag) ;
           MAPFAC_U:units = "none" ;
           MAPFAC_U:description = "Mapfactor on U grid" ;
      float MAPFAC_MX(Time, south_north, west_east) ;
           MAPFAC_MX:units = "none" ;
           MAPFAC_MX:description = "Mapfactor (x-dir) on mass grid" ;
      float MAPFAC_VX(Time, south_north_stag, west_east) ;
           MAPFAC_VX:units = "none" ;
           MAPFAC_VX:description = "Mapfactor (x-dir) on V grid" ;
      float MAPFAC_UX(Time, south_north, west_east_stag) ;
           MAPFAC_UX:units = "none" ;
           MAPFAC_UX:description = "Mapfactor (x-dir) on U grid" ;
      float MAPFAC_MY(Time, south_north, west_east) ;
           MAPFAC_MY:units = "none" ;
           MAPFAC_MY:description = "Mapfactor (y-dir) on mass grid" ;
      float MAPFAC_VY(Time, south_north_stag, west_east) ;
           MAPFAC_VY:units = "none" ;
           MAPFAC_VY:description = "Mapfactor (y-dir) on V grid" ;
      float MAPFAC_UY(Time, south_north, west_east_stag) ;
           MAPFAC_UY:units = "none" ;
           MAPFAC_UY:description = "Mapfactor (y-dir) on U grid" ;
      float E(Time, south_north, west_east) ;
           E:units = "-" ;
           E:description = "Coriolis E parameter" ;
      float F(Time, south_north, west_east) ;
           F:units = "-" ;
           F:description = "Coriolis F parameter" ;
      float SINALPHA(Time, south_north, west_east) ;
           SINALPHA:units = "none" ;
           SINALPHA:description = "Sine of rotation angle" ;
      float COSALPHA(Time, south_north, west_east) ;
           COSALPHA:units = "none" ;
           COSALPHA:description = "Cosine of rotation angle" ;
      float LANDMASK(Time, south_north, west_east) ;
           LANDMASK:units = "none" ;
           LANDMASK:description = "Landmask : 1=land, 0=water" ;
      float XLAT_C(Time, south_north_stag, west_east_stag) ;
           XLAT_C:units = "degrees latitude" ;
           XLAT_C:description = "Latitude at grid cell corners" ;
      float XLONG_C(Time, south_north_stag, west_east_stag) ;
           XLONG_C:units = "degrees longitude" ;
           XLONG_C:description = "Longitude at grid cell corners" ;
      float LANDUSEF(Time, land_cat, south_north, west_east) ;
           LANDUSEF:units = "category" ;
           LANDUSEF:description = "Noah-modified 21-category IGBP-MODIS landuse" ;
      float LU_INDEX(Time, south_north, west_east) ;
           LU_INDEX:units = "category" ;
           LU_INDEX:description = "Dominant category" ;
      float HGT_M(Time, south_north, west_east) ;
           HGT_M:units = "meters MSL" ;
           HGT_M:description = "GMTED2010 30-arc-second topography height" ;
      float SOILTEMP(Time, south_north, west_east) ;
           SOILTEMP:units = "Kelvin" ;
           SOILTEMP:description = "Annual mean deep soil temperature" ;
      float SOILCTOP(Time, soil_cat, south_north, west_east) ;
           SOILCTOP:units = "category" ;
           SOILCTOP:description = "16-category top-layer soil type" ;
      float SCT_DOM(Time, south_north, west_east) ;
           SCT_DOM:units = "category" ;
           SCT_DOM:description = "Dominant category" ;
      float SOILCBOT(Time, soil_cat, south_north, west_east) ;
           SOILCBOT:units = "category" ;
           SOILCBOT:description = "16-category top-layer soil type" ;
      float SCB_DOM(Time, south_north, west_east) ;
           SCB_DOM:units = "category" ;
           SCB_DOM:description = "Dominant category" ;
      float ALBEDO12M(Time, month, south_north, west_east) ;
           ALBEDO12M:units = "percent" ;
           ALBEDO12M:description = "Monthly surface albedo" ;
      float GREENFRAC(Time, month, south_north, west_east) ;
           GREENFRAC:units = "fraction" ;
           GREENFRAC:description = "MODIS FPAR" ;
      float LAI12M(Time, month, south_north, west_east) ;
           LAI12M:units = "m^2/m^2" ;
           LAI12M:description = "MODIS LAI" ;
      float SNOALB(Time, south_north, west_east) ;
           SNOALB:units = "percent" ;
           SNOALB:description = "Maximum snow albedo" ;
      float SLOPECAT(Time, south_north, west_east) ;
           SLOPECAT:units = "category" ;
           SLOPECAT:description = "Dominant category" ;
      float CON(Time, south_north, west_east) ;
           CON:units = "" ;
           CON:description = "Subgrid-scale orographic convexity" ;
      float VAR(Time, south_north, west_east) ;
           VAR:units = "" ;
           VAR:description = "Subgrid-scale orographic variance" ;
      float OA1(Time, south_north, west_east) ;
           OA1:units = "" ;
           OA1:description = "Subgrid-scale orographic asymmetry" ;
      float OA2(Time, south_north, west_east) ;
           OA2:units = "" ;
           OA2:description = "Subgrid-scale orographic asymmetry" ;
      float OA3(Time, south_north, west_east) ;
            OA3:units = "" ;
           OA3:description = "Subgrid-scale orographic asymmetry" ;
      float OA4(Time, south_north, west_east) ;
           OA4:units = "" ;
           OA4:description = "Subgrid-scale orographic asymmetry" ;
      float OL1(Time, south_north, west_east) ;
           OL1:units = "" ;
           OL1:description = "Subgrid-scale effective orographic length scale" ;
      float OL2(Time, south_north, west_east) ;
           OL2:units = "" ;
           OL2:description = "Subgrid-scale effective orographic length scale" ;
      float OL3(Time, south_north, west_east) ;
           OL3:units = "" ;
           OL3:description = "Subgrid-scale effective orographic length scale" ;
      float OL4(Time, south_north, west_east) ;
           OL4:units = "" ;
           OL4:description = "Subgrid-scale effective orographic length scale" ;
      float VAR_SSO(Time, south_north, west_east) ;
           VAR_SSO:units = "meters2 MSL" ;
           VAR_SSO:description = "Variance of Subgrid Scale Orography" ;
      float LAKE_DEPTH(Time, south_north, west_east) ;
           LAKE_DEPTH:units = "meters MSL" ;
           LAKE_DEPTH:description = "Topography height" ;
      float URB_PARAM(Time, num_urb_params, south_north, west_east) ;
           URB_PARAM:units = "dimensionless" ;
           URB_PARAM:description = "Urban_Parameters" ;

// global attributes:
           :TITLE = "OUTPUT FROM GEOGRID V4.0" ;
           :SIMULATION_START_DATE = "0000-00-00_00:00:00" ;
           :WEST-EAST_GRID_DIMENSION = 74 ;
           :SOUTH-NORTH_GRID_DIMENSION = 61 ;
           :BOTTOM-TOP_GRID_DIMENSION = 0 ;
           :WEST-EAST_PATCH_START_UNSTAG = 1 ;
           :WEST-EAST_PATCH_END_UNSTAG = 73 ;
           :WEST-EAST_PATCH_START_STAG = 1 ;
           :WEST-EAST_PATCH_END_STAG = 74 ;
           :SOUTH-NORTH_PATCH_START_UNSTAG = 1 ;
           :SOUTH-NORTH_PATCH_END_UNSTAG = 60 ;
           :SOUTH-NORTH_PATCH_START_STAG = 1 ;
           :SOUTH-NORTH_PATCH_END_STAG = 61 ;
           :GRIDTYPE = "C" ;
           :DX = 30000.f ;
           :DY = 30000.f ;
           :DYN_OPT = 2 ;
           :CEN_LAT = 34.83001f ;
           :CEN_LON = -81.03f ;
           :TRUELAT1 = 30.f ;
           :TRUELAT2 = 60.f ;
           :MOAD_CEN_LAT = 34.83001f ;
           :STAND_LON = -98.f ;
           :POLE_LAT = 90.f ;
           :POLE_LON = 0.f ;
           :corner_lats = 28.17127f, 44.36657f, 39.63231f, 24.61906f, 28.17842f, 44.37617f, \
           39.57812f, 24.57806f, 28.03771f, 44.50592f, 39.76032f, 24.49431f, 28.04485f, \
           44.51553f, 39.70599f, 24.45341f ;
           :corner_lons = -93.64893f, -92.39661f, -66.00165f, -72.64047f, -93.80048f, \
           -92.59155f, -65.83557f, -72.5033f, -93.65717f, -92.3829f, -65.9313f, \
           -72.68539f, -93.80841f, -92.57831f, -65.76495f, -72.54843f ;
           :MAP_PROJ = 1 ;
           :MMINLU = "MODIFIED_IGBP_MODIS_NOAH" ;
           :NUM_LAND_CAT = 21 ;
           :ISWATER = 17 ;
           :ISLAKE = 21 ;
           :ISICE = 15 ;
           :ISURBAN = 13 ;
           :ISOILWATER = 14 ;
           :grid_id = 1 ;
           :parent_id = 1 ;
           :i_parent_start = 1 ;
           :j_parent_start = 1 ;
           :i_parent_end = 74 ;
           :j_parent_end = 61 ;
           :parent_grid_ratio = 1 ;
           :FLAG_MF_XY = 1 ;
           :FLAG_LAI12M = 1 ;
           :FLAG_LAKE_DEPTH = 1 ;
}

全局属性 corner_lats 和 corner_lons 包含域角相对于不同网格交错(质量、u、v 和无交错)的纬度-经度位置。 corner_lats 和 corner_lons 数组中每个元素所指的位置总结在下表和图中。
在这里插入图片描述
在这里插入图片描述

2. Metgrid 输出(Metgrid Output)

除了地理网格输出文件(例如 geo_em.d01.nc)中的字段外,以下字段和全局属性也将出现在 metgrid 程序的典型输出文件中,使用默认的 METGRID.TBL 文件和来自 NCEP 的 GFS 模型的气象数据运行。

> ncdump met_em.d01.2016-04-07_00:00:00.nc

netcdf met_em.d01.2016-04-07_00\:00\:00 {
dimensions:
Time = UNLIMITED ; // (1 currently)
      DateStrLen = 19 ;
      west_east = 73 ;
      south_north = 60 ;
      num_metgrid_levels = 27 ;
      num_st_layers = 4 ;
      num_sm_layers = 4 ;
      south_north_stag = 61 ;
      west_east_stag = 74 ;
      z-dimension0132 = 132 ;
      z-dimension0012 = 12 ;
      z-dimension0016 = 16 ;
      z-dimension0021 = 21 ;
variables:
      char Times(Time, DateStrLen) ;
      float PRES(Time, num_metgrid_levels, south_north, west_east) ;
           PRES:units = "" ;
           PRES:description = "" ;
      float SOIL_LAYERS(Time, num_st_layers, south_north, west_east) ;
           SOIL_LAYERS:units = "" ;
           SOIL_LAYERS:description = "" ;
      float SM(Time, num_sm_layers, south_north, west_east) ;
           SM:units = "" ;
           SM:description = "" ;
      float ST(Time, num_st_layers, south_north, west_east) ;
           ST:units = "" ;
           ST:description = "" ;
      float GHT(Time, num_metgrid_levels, south_north, west_east) ;
           GHT:units = "m" ;
           GHT:description = "Height" ;
      float HGTTROP(Time, south_north, west_east) ;
           HGTTROP:units = "m" ;
           HGTTROP:description = "Height of tropopause" ;
      float TTROP(Time, south_north, west_east) ;
           TTROP:units = "K" ;
           TTROP:description = "Temperature at tropopause" ;
      float PTROPNN(Time, south_north, west_east) ;
           PTROPNN:units = "Pa" ;
           PTROPNN:description = "PTROP, used for nearest neighbor interp" ;
      float PTROP(Time, south_north, west_east) ;
           PTROP:units = "Pa" ;
           PTROP:description = "Pressure of tropopause" ;
      float VTROP(Time, south_north_stag, west_east) ;
           VTROP:units = "m s-1" ;
           VTROP:description = "V at tropopause" ;
      float UTROP(Time, south_north, west_east_stag) ;
           UTROP:units = "m s-1" ;
           UTROP:description = "U at tropopause" ;
      float HGTMAXW(Time, south_north, west_east) ;
           HGTMAXW:units = "m" ;
           HGTMAXW:description = "Height of max wind level" ;
      float TMAXW(Time, south_north, west_east) ;
           TMAXW:units = "K" ;
           TMAXW:description = "Temperature at max wind level" ;
      float PMAXWNN(Time, south_north, west_east) ;
           PMAXWNN:units = "Pa" ;
           PMAXWNN:description = "PMAXW, used for nearest neighbor interp" ;
      float PMAXW(Time, south_north, west_east) ;
           PMAXW:units = "Pa" ;
           PMAXW:description = "Pressure of max wind level" ;
      float VMAXW(Time, south_north_stag, west_east) ;
           VMAXW:units = "m s-1" ;
           VMAXW:description = "V at max wind" ;
      float UMAXW(Time, south_north, west_east_stag) ;
           UMAXW:units = "m s-1" ;
           UMAXW:description = "U at max wind" ;
      float SNOWH(Time, south_north, west_east) ;
           SNOWH:units = "m" ;
           SNOWH:description = "Physical Snow Depth" ;
      float SNOW(Time, south_north, west_east) ;
           SNOW:units = "kg m-2" ;
           SNOW:description = "Water equivalent snow depth" ;
      float SKINTEMP(Time, south_north, west_east) ;
           SKINTEMP:units = "K" ;
           SKINTEMP:description = "Skin temperature" ;
      float SOILHGT(Time, south_north, west_east) ;
           SOILHGT:units = "m" ;
           SOILHGT:description = "Terrain field of source analysis" ;
      float LANDSEA(Time, south_north, west_east) ;
           LANDSEA:units = "proprtn" ;
           LANDSEA:description = "Land/Sea flag (1=land, 0 or 2=sea)" ;
      float SEAICE(Time, south_north, west_east) ;
           SEAICE:units = "proprtn" ;
           SEAICE:description = "Ice flag" ;
      float ST100200(Time, south_north, west_east) ;
           ST100200:units = "K" ;
           ST100200:description = "T 100-200 cm below ground layer (Bottom)" ;
      float ST040100(Time, south_north, west_east) ;
           ST040100:units = "K" ;
           ST040100:description = "T 40-100 cm below ground layer (Upper)" ;
      float ST010040(Time, south_north, west_east) ;
           ST010040:units = "K" ;
           ST010040:description = "T 10-40 cm below ground layer (Upper)" ;
      float ST000010(Time, south_north, west_east) ;
           ST000010:units = "K" ;
           ST000010:description = "T 0-10 cm below ground layer (Upper)" ;
      float SM100200(Time, south_north, west_east) ;
           SM100200:units = "fraction" ;
           SM100200:description = "Soil Moist 100-200 cm below gr layer" ;
      float SM040100(Time, south_north, west_east) ;
           SM040100:units = "fraction" ;
           SM040100:description = "Soil Moist 40-100 cm below grn layer" ;
      float SM010040(Time, south_north, west_east) ;
           SM010040:units = "fraction" ;
           SM010040:description = "Soil Moist 10-40 cm below grn layer" ;
      float SM000010(Time, south_north, west_east) ;
           SM000010:units = "fraction" ;
           SM000010:description = "Soil Moist 0-10 cm below grn layer (Up)" ;
      float PSFC(Time, south_north, west_east) ;
           PSFC:units = "Pa" ;
           PSFC:description = "Surface Pressure" ;
      float RH(Time, num_metgrid_levels, south_north, west_east) ;
           RH:units = "%" ;
           RH:description = "Relative Humidity" ;
      float VV(Time, num_metgrid_levels, south_north_stag, west_east) ;
           VV:units = "m s-1" ;
           VV:description = "V" ;
      float UU(Time, num_metgrid_levels, south_north, west_east_stag) ;
           UU:units = "m s-1" ;
           UU:description = "U" ;
      float TT(Time, num_metgrid_levels, south_north, west_east) ;
           TT:units = "K" ;
           TT:description = "Temperature" ;
      float PMSL(Time, south_north, west_east) ;
           PMSL:units = "Pa" ;
           PMSL:description = "Sea-level Pressure" ;

// global attributes:
           :TITLE = "OUTPUT FROM METGRID V4.0" ;
           :SIMULATION_START_DATE = "2016-04-07_00:00:00" ;
           :WEST-EAST_GRID_DIMENSION = 74 ;
           :SOUTH-NORTH_GRID_DIMENSION = 61 ;
           :BOTTOM-TOP_GRID_DIMENSION = 27 ;
           :WEST-EAST_PATCH_START_UNSTAG = 1 ;
           :WEST-EAST_PATCH_END_UNSTAG = 73 ;
           :WEST-EAST_PATCH_START_STAG = 1 ;
           :WEST-EAST_PATCH_END_STAG = 74 ;
           :SOUTH-NORTH_PATCH_START_UNSTAG = 1 ;
           :SOUTH-NORTH_PATCH_END_UNSTAG = 60 ;
           :SOUTH-NORTH_PATCH_START_STAG = 1 ;
           :SOUTH-NORTH_PATCH_END_STAG = 61 ;
           :GRIDTYPE = "C" ;
           :DX = 30000.f ;
           :DY = 30000.f ;
           :DYN_OPT = 2 ;
           :CEN_LAT = 34.83001f ;
           :CEN_LON = -81.03f ;
           :TRUELAT1 = 30.f ;
           :TRUELAT2 = 60.f ;
           :MOAD_CEN_LAT = 34.83001f ;
           :STAND_LON = -98.f ;
           :POLE_LAT = 90.f ;
           :POLE_LON = 0.f ;
           :corner_lats = 28.17127f, 44.36657f, 39.63231f, 24.61906f, 28.17842f, \
           44.37617f, 39.57812f, 24.57806f, 28.03771f, 44.50592f, 39.76032f, 24.49431f, \
           28.04485f, 44.51553f, 39.70599f, 24.45341f ;
           :corner_lons = -93.64893f, -92.39661f, -66.00165f, -72.64047f, -93.80048f, \
           -92.59155f, -65.83557f, -72.5033f, -93.65717f, -92.3829f, -65.9313f, \
           -72.68539f, -93.80841f, -92.57831f, -65.76495f, -72.54843f ;
           :MAP_PROJ = 1 ;
           :MMINLU = "MODIFIED_IGBP_MODIS_NOAH" ;
           :NUM_LAND_CAT = 21 ;
           :ISWATER = 17 ;
           :ISLAKE = 21 ;
           :ISICE = 15 ;
           :ISURBAN = 13 ;
           :ISOILWATER = 14 ;
           :grid_id = 1 ;
           :parent_id = 1 ;
           :i_parent_start = 1 ;
           :j_parent_start = 1 ;
           :i_parent_end = 74 ;
           :j_parent_end = 61 ;
           :parent_grid_ratio = 1 ;
           :NUM_METGRID_SOIL_LEVELS = 4 ;
           :FLAG_METGRID = 1 ;
           :FLAG_EXCLUDED_MIDDLE = 0 ;
           :FLAG_SOIL_LAYERS = 1 ;
           :FLAG_SNOW = 1 ;
           :FLAG_PSFC = 1 ;
           :FLAG_SM000010 = 1 ;
           :FLAG_SM010040 = 1 ;
           :FLAG_SM040100 = 1 ;
           :FLAG_SM100200 = 1 ;
           :FLAG_ST000010 = 1 ;
           :FLAG_ST010040 = 1 ;
           :FLAG_ST040100 = 1 ;
           :FLAG_ST100200 = 1 ;
           :FLAG_SLP = 1 ;
           :FLAG_SNOWH = 1 ;
           :FLAG_SOILHGT = 1 ;
           :FLAG_UTROP = 1 ;
           :FLAG_VTROP = 1 ;
           :FLAG_TTROP = 1 ;
           :FLAG_PTROP = 1 ;
           :FLAG_PTROPNN = 1 ;
           :FLAG_HGTTROP = 1 ;
           :FLAG_UMAXW = 1 ;
           :FLAG_VMAXW = 1 ;
           :FLAG_TMAXW = 1 ;
           :FLAG_PMAXW = 1 ;
           :FLAG_PMAXWNN = 1 ;
           :FLAG_HGTMAXW = 1 ;
           :FLAG_MF_XY = 1 ;
           :FLAG_LAI12M = 1 ;
           :FLAG_LAKE_DEPTH = 1 ;
}

参考


http://www.kler.cn/a/448502.html

相关文章:

  • OpenTK 中帧缓存的深度解析与应用实践
  • springboot463学生信息管理系统论文(论文+源码)_kaic
  • 集成自然语言理解服务,让应用 “听得懂人话”
  • 2023年下半年软考信息安全工程师案例分析及答案解析
  • R 常用的内置软件包及功能介绍
  • STM32-笔记5-按键点灯(中断方法)
  • 使用插件时要注意
  • C语言——实现字符分类统计
  • Linux 使用的小细节
  • Webpack简单介绍及安装
  • 深度学习试题及答案解析(二)
  • 【ETCD】【实操篇(三)】【ETCDCTL】如何向集群中写入数据
  • LeetCode 583. 两个字符串的删除操作 java题解
  • KAFKA消費數據的三種方式
  • vue3项目中遇到的问题及解决方案
  • 信奥赛四种算法描述
  • Saprk和Flink的区别
  • Debian环境安装Docker Engine
  • 详解磁盘IO、网络IO、零拷贝IO、BIO、NIO、AIO、IO多路复用(select、poll、epoll)
  • MySQL 中的常见错误与排查
  • 分类模型的预测概率解读:3D概率分布可视化的直观呈现
  • 从零开始学Java,学习笔记Day24
  • 前端自动化部署更新,自动化打包部署
  • centos单机部署seata
  • 不同数据中心间海量数据的安全加密传输方案
  • Spring Boot教程之三十二:自定义 Jackson ObjectMapper