1.通过GIS将最新地理数据替换并生成3类UCM数据分类
(1)重分类土地利用数据并输出坐标系为地理坐标系wgs1984,其中1类可以修改为31?
重分类土地利用栅格数据,将中国土地利用分类换成美国土地利用分类
将中国土地利用分类系统转换成USGS(WRF可识别) | |||||
USGS类型 | 中国土地类型 | USGS类型 | 中国土地类型 | USGS类型 | 中国土地类型 |
1 | 51,53 | 10 | 19 | 61,62,63,65,67 | |
2 | 11 | 20 | |||
3 | 11,12,52 | 12 | 21 | ||
4 | 13 | 21 | 22 | ||
5 | 14 | 23 | 66 | ||
6 | 15 | 31 | |||
7 | 31,32,33 | 16 | 41,42,43,46 | 32 | |
8 | 22,23 | 17 | 45,64 | 33 | |
9 | 24 | 18 |
其他土地利用SinoLC-1
将土地利用SinoLC-1转换成USGS(WRF可识别) | |||||
USGS类型 | 中国土地类型 | USGS类型 | 中国土地类型 | USGS类型 | 中国土地类型 |
1 | 1,6 | 10 | 19 | 7 | |
2 | 11 | 20 | 12 | ||
3 | 5 | 12 | 21 | ||
4 | 13 | 2 | 22 | ||
7 | 4 | 16 | 9 | 32 | |
8 | 3 | 17 | 10 | 33 | |
9 | 24 | 18 |
(2)在新地形的基础上继续分类,将城市建成区分为低密度住宅、高密度住宅和工商业运输,根据不透水面比例确定
(3)将新的划定区域面转栅格,再镶嵌至新栅格 (底图放在第一位,像素和波段点根据原栅格输入),将新的3类UCM镶嵌到土地利用数据中
2.制作地理数据
以下方法制作好的地理数据可以在wps中./geogrid.exe,然后再ncview查看geo文件,看landuse是否显示正确
2.1 方法一:利用gdal生成新的地理数据(推荐)
(1)将GIS中的栅格数据导出为tif格式
(2)将tif格式的文件上传到linux中
(3)安装gdal
sudo apt install gdal-bin
(4)在tif文件所在文件夹输入以下代码运行,将生成data.bil、data.bil.aux.xml和data.hdr三个文件
gdal_translate -of ENVI -co INTERLEAVE=BSQ tif文件名 data.bil
(5)对照data.hdr修改以下index文件,除以下内容都不要改,尤其是wordsize=1
category_max依据usgs33,modis24;
dx和dy来源于data.hdr;
known_lat和known_lon指的是数据左下角经纬度,GIS中可以看到;
tile_x和tile_y表示网格数,来源于data.hdr;
mminlu="USGS"表示usgs土地分类
missing_value=128 表示缺省值,GIS中可以看到;
iswater水体编号,islake湖泊编号,isice冰川编号,isurban城市编号
row_order=top_bottom表达读取顺序
type=categorical
category_min=1
category_max=33
projection=regular_ll
dx=0.000298806973579531
dy=0.000298806973579531
known_x=1.0
known_y=1.0
known_lat=28.9285626047019
known_lon=108.335623023761
wordsize=1
tile_x=27490
tile_y=14588
tile_z=1
units="category"
description="USGS 33-category land use categories"
mminlu="USGS"
missing_value=128
iswater=16
islake=28
isice=24
isurban=1
row_order=top_bottom
(6)修改data.bil文件名为00001-27490.00001-14588(对应title_x和_y)
(7)其余数据删掉,只保留index和00001-27490.00001-14588,地理数据制作成功,继续在wps修改
2.2 方法二:利用geogrid生成新的地理数据(老版本3.9)
(1)将gis中的栅格数据导出,NoDaTa值修改为255
(2)栅格转ASCII,WRF只能识别二进制数据,在GIS中进行数据转换
(3)将asciitowps.f90、write_geogrid.o和二进制的txt文件复制进wps/geogrid/src中
(4)修改asciitowps.f90中的二进制文件夹路径
(5)执行gfortran -free asciitowps.f90 writr_geogrid.o命令生成a.out文件
(6)执行./a.out命令生成地理数据,比如00001-28055.00001-14588
(7)对照地理数据修改以下index文件,除以下内容都不要改,尤其是wordsize=2,与方法1不同
category_max依据usgs33,modis24;
dx和dy来源于gis;
known_lat和known_lon指的是数据左下角经纬度,GIS中可以看到;
tile_x和tile_y表示网格数,来源于地理数据文件名
mminlu="USGS"表示usgs土地分类
iswater水体编号,islake湖泊编号,isice冰川编号,isurban城市编号
type=categorical
category_min=1
category_max=33
projection=regular_ll
dx=0.0002988
dy=0.0002988
known_x=1.0
known_y=1.0
known_lat=28.621232381209
known_lon=108.28195072514
wordsize=2
tile_x=28055
tile_y=14588
tile_z=1
tile_bdr=0
units="category"
description="24-category USGS landuse-from gis"
mminlu="USGS"
iswater=16
islake=28
isurban=1
isice=24
isoilwater=14
(8)地理数据制作成功,继续在wps修改
3 设置namelist.wps的参数调用新的地理数据
(1)在wps/geogrid里面修改GEOGRID.TBL文件,把新的地理数据加入进去(在name=LANDUSEF属性下添加)
(2)修改namelist.wps的geogrid的部分
注:所有层的土地利用数据分类必须相同,要么都是usgs,要么都是modis
(3) geog_data_res后参数解释,比如以下代码:
geog_data_res = ‘usgs_lakes+default’, ‘usgs_lakes+default’,
此更改的效果是指示geogrid程序在GEOGRID.TBL文件的每个条目中查找静态数据的分辨率,该分辨率由“usgs_lakes”表示,如果此分辨率不可用,则采用“+”后面的字符串表示的分辨率。 因此,对于LANDUSEF字段的GEOGRID.TBL条目,将使用以字符串“usgs_lakes”标识的基于USG的土地利用数据,而不是上例中的“default”分辨率。 但当在GEOGRID.TBL条目中找不到geog_data_res中为域指定的分辨率时,将使用“default”表示的分辨率。
在更改默认的21类MODIS土地利用数据时,用户还必须确保在WRF namelist.input文件的&physics namelist记录中正确设置num_land_cat namelist变量。 对于24类USGS数据,num_land_cat应设置为24。
interp_option = nlcd2006_9s:average_gcell(0.0)
interp_option = nlcd2006_30s:average_gcell(0.0)
interp_option = nlcd2011_9s:average_gcell(0.0)
interp_option = nlcd2006:nearest_neighbor
interp_option = ssib_10m:four_pt
interp_option = ssib_5m:four_pt
interp_option = modis_15s:nearest_neighbor #modis15s约450m分辨率土地利用
interp_option = modis_15s_lake:nearest_neighbor #modis土地利用带水体450m分辨率
interp_option = modis_30s:nearest_neighbor #modis30s约900m分辨率土地利用
interp_option = modis_30s_lake:nearest_neighbor #modis土地利用带水体900m分辨率
interp_option = usgs_30s:nearest_neighbor #usgs30s约900m分辨率土地利用
interp_option = usgs_lakes:nearest_neighbor #usgs土地利用带水体
interp_option = modis_lakes:nearest_neighbor #modis土地利用带水体
interp_option = usgs_2m:four_pt #usgs2分约4000m分辨率土地利用
interp_option = usgs_5m:four_pt #usgs5分约9000m分辨率土地利用
interp_option = usgs_10m:four_pt #usgs9分约19000m分辨率土地利用
interp_option = lowres:average_gcell(4.0)+four_pt
interp_option = default:nearest_neighbor #default默认数据是modis_lakes数据