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

【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.ncnetcdf 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.ncnetcdf 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 ;
}

参考

相关文章:

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

预处理系统 WPS 详解:以4.5版本为例 Geogrid/Metgrid 插值选项详解1. 插值方法的工作机制2. 插值方法的详细说明2.1 四点双线性插值(four_pt)2.2 十六点重叠抛物线插值(sixteen_pt)2.3 简单四点平均插值(av…...

linux 安装redis

下载地址 通过网盘分享的文件:redis-7.2.3.tar.gz 链接: https://pan.baidu.com/s/1KjGJB1IRIr9ehGRKBLgp4w?pwd0012 提取码: 0012 解压 tar -zxvf redis-7.2.3.tar.gz mv redis-7.2.3 /usr/local/ cd /usr/local/redis-7.2.3 安装 make install 修改配置文件 /搜索…...

Linux - rpm yum 工具及命令总结

RPM 概述 定义:RPM(RedHat Package Manager),是一个功能强大的软件包管理系统,用于在 Linux 系统中安装、升级和管理软件包采用系统:主要用于基于 RPM 的 Linux 发行版,如 Red Hat、CentOS、S…...

电子应用设计方案-58:智能沙发系统方案设计

智能沙发系统方案设计 一、引言 智能沙发作为一种融合了舒适与科技的家居产品,旨在为用户提供更加便捷、舒适和个性化的体验。本方案将详细介绍智能沙发系统的设计思路和功能实现。 二、系统概述 1. 系统目标 - 实现多种舒适的姿势调节,满足不同用户的…...

复习打卡Linux篇

目录 1. Linux常用操作命令 2. vim编辑器 3. 用户权限 4. Linux系统信息查看 1. Linux常用操作命令 基础操作: 命令说明history查看历史执行命令ls查看指定目录下内容ls -a查看所有文件 包括隐藏文件ls -l ll查看文件详细信息,包括权限类型时间大小…...

在Ubuntu 22.04 LTS中使用PyTorch深度学习框架并调用多GPU时遇到indexSelectLargeIndex相关的断言失败【笔记】

在Ubuntu 22.04 LTS系统中,已安装配置好CUDA 12.4、cuDNN 9.1.1以及PyTorch环境 export CUDA_VISIBLE_DEVICES0,1,2,3,4,5,6,7 在PyTorch深度学习框架训练调用多GPU时,提示 indexSelectLargeIndex: block: [x, 0, 0], thread: [x, 0, 0] Assertion src…...

qt 类中的run线程

在Qt中,QThread类的run()方法是线程的执行入口,它是由QThread内部自动调用的,而不是用户直接调用。 详细解释: QThread类: QThread是Qt的线程类,提供了用于多线程操作的接口。我们可以创建QThread对象并将…...

Vue3父子组件传属性和方法调用Demo

Vue3父子组件传属性和方法调用Demo 说明目录父组件给子组件传值和方法 父组件给子组件传值-使用defineProps接受父组件属性值父组件给子组件传值-使用defineModel接受父组件v-model值 当子组件只需要接收父组件一个v-model值时,写法1如下:子组件接收单个v-model写法2如下:当子…...

aac怎么转为mp3?操作起来很简单的几种aac转mp3的方法

aac怎么转为mp3?aac格式的优势主要体现在音质和压缩效率,尤其是在较低比特率下,能够实现更清晰的音质,这也是为何许多现代设备和应用偏爱aac格式的原因之一。特别是在手机、平板以及智能音响等设备中,aac文件几乎可以无…...

结合mybatis-plus实现Function获取java实体类的属性名

1、工具类 package com.yh.tunnel.util;import com.baomidou.mybatisplus.core.toolkit.support.SFunction; import com.google.common.base.CaseFormat; import com.yh.tunnel.domain.Plan;import java.lang.invoke.SerializedLambda; import java.lang.reflect.Field; import…...

vue 响应式数据原理

发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【宝藏入口】。 Vue 的响应式数据原理是其核心功能之一,它使得 Vue 应用能够自动响应数据的变化,并在数据变化时自动更新…...

android 计算CRC

<?php /** * 将一个字符按比特位进行反转 eg: 65 (01000001) --> 130(10000010) * param $char * return $char */ function reverseChar($char) { $byte ord($char); $tmp 0; for ($i 0; $i < 8; $i) { if ($byte & (1 << $i)…...

Linux tinyproxy 使用教程

简介 Tinyproxy 是一款轻量级 HTTP 代理服务器&#xff0c;使用最少的资源&#xff0c;非常适合硬件有限的系统。尽管体积小&#xff0c;但它可以处理大量流量&#xff0c;而不会出现明显的性能问题。旨在处理简单的代理任务。它通常用于路由网络流量以保护隐私、缓存或访问受…...

局部规划器设计思路

本文参考知乎文章:如何设计局部规划器 0 引言 局部规划器设计通用方法:生成路径——>寻找最优路径——>后处理优化 1 路径生成 四个问题: ① 如果全局路径中突然出现动态障碍物 ② 如果全局路径非常靠近障碍物 ③ 如果全局路径不容易跟踪(B样条平滑) ④ 如果全局…...

数字图像处理技术期末复习

1. 已知图像的分辨率和深度&#xff0c;怎么求图像的存储空间&#xff08;位&#xff0c;字节&#xff0c;KB&#xff09;&#xff1f; 题目&#xff1a; 已知图像的分辨率和深度&#xff0c;怎么求图像的存储空间&#xff08;位&#xff0c;字节&#xff0c;KB&#xff09;&a…...

UITableView显示数据,增加数据,删除数据及移动数据行

UITableView和html中的table有点类似的&#xff0c;也有header和footer和body&#xff0c;row。下面给出一个demo // // TableViewTestViewController.m // iosstudy2024 // // Created by figo on 2024/12/9. //#import "TableViewTestViewController.h"interfa…...

金智塔科技喜获CCF中国数字金融大会 GraphRAG竞赛二等奖

12月7日&#xff0c;CCF 首届中国数字金融大会GraphRAG竞赛在上海落下帷幕&#xff0c;金智塔科技&#xff08;团队名称&#xff1a;塔塔向前冲&#xff09;从众多参赛队伍中脱颖而出&#xff0c;喜获二等奖。 CCF 首届中国数字金融大会由中国计算机学会主办&#xff0c;中国计…...

方案解读:数字化扩展中如何提升多云应用安全能力?

越来越多企业选择上云&#xff0c;拥抱数字化转型。数据显示&#xff0c;在过去一年中&#xff0c;将应用托管至六种不同环境中的企业比例已经翻倍&#xff0c;达到令人震惊的38%。与此同时&#xff0c;应用和流经其的关键数据已成为日益复杂的网络攻击的首选目标&#xff0c;且…...

“年轻科技旗舰”爱玛A7 Plus正式发布,全国售价4999元

12月18日&#xff0c;备受行业瞩目的“A7上场 一路超神”爱玛旗舰新品发布会在爱玛台州智造工厂盛大举行。 作为年末“压轴产品”的“两轮豪华轿跑”爱玛A7Plus重磅上场&#xff0c;以“快、稳、帅、炫、智、爽”六大超神技惊艳四座&#xff0c;不仅践行了爱玛科技的精品战略&…...

oracle开窗函数笔记、over()笔记

文章目录 开窗函数、组函数、分析函数概念聚合函数和分析函数的区别partition by后面也可以跟多个字段 开窗函数一定要加 聚合函数、或分析函数吗&#xff0c;否则会报错lag()和lead()的用法lag和lead实战开窗函数可以和其他函数一起使用吗? TODO开窗函数中的count(1)是什么意…...

【HarmonyOS】HarmonyOS 和 Flutter混合开发 (一)之鸿蒙Flutter环境安装

【HarmonyOS】HarmonyOS 和 Flutter混合开发 &#xff08;一&#xff09;之鸿蒙Flutter环境安装 一、前言 flutter作为开源适配框架方案&#xff0c;已经在Android&#xff0c;IOS&#xff0c;Web&#xff0c;Window四大平台进行了适配&#xff0c;一套代码&#xff0c;可以同…...

海外招聘丨卢森堡大学—人工智能和机器学习中的 PI 用于图像分析

雇主简介 卢森堡大学立志成为欧洲最受推崇的大学之一&#xff0c;具有鲜明的国际化、多语言和跨学科特色。 她促进研究和教学的相互影响&#xff0c;与国家息息相关&#xff0c;因其在特定领域的研究和教学而闻名于世&#xff0c;并成为当代欧洲高等教育的创新典范。 她的核…...

LeetCode hot100-85

https://leetcode.cn/problems/coin-change/?envTypestudy-plan-v2&envIdtop-100-liked 322. 零钱兑换 已解答 中等 相关标签 相关企业 给你一个整数数组 coins &#xff0c;表示不同面额的硬币&#xff1b;以及一个整数 amount &#xff0c;表示总金额。计算并返回可以凑…...

linux 内核数据包处理中的一些坑和建议

1、获取IP头部 iph ip_hdr(skb); struct sk_buff { ...... sk_buff_data_t transport_header; /* Transport layer header */ sk_buff_data_t network_header; /* Network layer header */ sk_buff_data_t mac_header; /* Link layer header */ ...... } 1&#xff0…...

C++ 的衰退复制(decay-copy)

目录 1.什么是衰退复制&#xff08;decay-copy&#xff09; 1.1.推导规则 1.2.LWG issue 929 1.3.想象中的 decay_copy 2.decay-copy 与 auto 2.1.为什么引入衰退复制 2.2. 成为 C 23 的语言特性 3.应用场景 4.总结 1.什么是衰退复制&#xff08;decay-copy&#xff0…...

vue-cli 5接入模块联邦 module federation

vue-cli 5接入模块联邦 module federation 模块联邦概念实现思路配置遇到的问题: 模块联邦概念 模块联邦由webpack 5最先推出的,让应用加载远程的代码模块来实现不同的Web应用共享代码片段.模块联邦分为两个角色,一个是生产者,一个是消费者.生产者暴露代码供消费者消费 (用一个…...

【Rust自学】3.6. 控制流:循环

3.6.0. 写在正文之前 欢迎来到Rust自学的第三章&#xff0c;一共有6个小节&#xff0c;分别是: 变量与可变性数据类型&#xff1a;标量类型数据类型&#xff1a;复合类型函数和注释控制流&#xff1a;if else控制流&#xff1a;循环&#xff08;本文&#xff09; 通过第二章…...

【第八节】git与github

目录 前言 一、 远程仓库概述 二、 创建、配置、连接推送远程仓库 2.1 在 GitHub 上创建仓库 2.2 生成 SSH Key 2.3 验证 SSH 连接 2.4 本地初始化仓库 2.5 推送本地仓库到远程 三、 管理远程仓库 3.1 查看远程仓库 3.2 提取远程仓库更新 3.3 推送更新到远程仓库 …...

win如何访问Linux数据库(本地)

对于数据库的学习&#xff0c;我们都是在localhost主机上进行操作&#xff0c;当我们在Linux系统上安装数据库时&#xff0c;我们就有了尝试在win上去访问Linux上的数据库的想法。 数据库中的用户&#xff1a; 我们都知道数据库中顶级的用户为root&#xff0c;在做创建用户的联…...

Windows设置所有软件默认以管理员身份运行

方法一、修改注册表 winr打开运行&#xff0c;输入“regedit”打开注册表&#xff1b; 打开此路径“计算机HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem”&#xff1b; 在右侧找到“EnableLUA”&#xff0c;将其值改为0&#xff0c;重启电脑。 …...