Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

Land use data with lower priority unused in geogrid process while using multiple land use data

Younghoo

New member
Hi All,

I am trying to use multiple land use data during the geogrid process.
I'm using WRFv4.1(and WPSv4.1) and will be using WRF-UCM(Single Layer UCM) with 3 urban categories(31~33: low-res, high-res, commercial).
One of the multiple land use data is what I will call from now on "new data" made using GIS software and processed into a binary format appropriate for the geogrid process.
And the other one is MODIS_30s(or USGS_30s) land use data.

The geogrid process is done in the region enclosing the Korean Peninsula and the region of the most interest is Seoul, Korea which is specified by the 'new data'.
Since the new data has a higher resolution covering the interested region(Seoul, South Korea) using new data in the priority
and using MODIS_30s for the "other part" of the region (that is not covered by the new data) is desired.
So, the GEOGRID.TBL file has been edited to allocate a higher priority value to the new data and lower priority to MODIS_30s data.

The problems that I'm having are the followings:
The "other part" of the geogrid region (other than Seoul where it is specified by the high-res new data) isn't referring to the MODIS_30s data.
And the "other part" is just covered in the Water body (land use index 17 in MODIS and 16 in USGS).

Let me share the processes that have been taken.

1) Created image file of the interested region using GIS

2) converted the image file into a binary file using GDAL in windows prompt
gdal_translate -of ENVI foo.tif foo.bin
and changed the name of this binary(bin) file into 00001-00540.00001-00360 considering the column and row number of this binary file.
The new data includes land use categories ranging from 1 to 33.

3) Created the index file as below

type=categorical
category_min=1
category_max=33
projection=regular_ll
dx=0.000833000000000005
dy=0.000833000000000005
known_x=1.0
known_y=360.
known_lat=37.7248799692849
known_lon=126.749999967422
wordsize=1
row_order=top_bottom
tile_x=540
tile_y=360
tile_z=1
missing_value=0.0
mminlu="MODIFIED_IGBP_MODIS_NOAH"
iswater=17
isice=15
isurban=13
units="category"
description="33-category Urban landuse"

**
Erased the lines
"mminlu="MODIFIED_IGBP_MODIS_NOAH"
iswater=17
isice=15
isurban=13"
when using USGS.



4) Modified namelist.wps and GEOGRID.TBL is as follows:

namelist.wps
&share
wrf_core = 'ARW',
max_dom = 3,
...(omitted irrelevant part)

&geogrid
parent_id = 1, 1, 2,
parent_grid_ratio = 1, 5, 5,
i_parent_start = 1, 29, 79,
j_parent_start = 1, 32, 61,
e_we = 90, 161, 81,
e_sn = 90, 161, 81,
geog_data_res = 'EGIS+modis_30s','EGIS+modis_30s','EGIS+modis_30s',
dx = 25000,
dy = 25000,
map_proj = 'lambert',
ref_lat = 37.51,
ref_lon = 127.04,
truelat1 = 30.0,
truelat2 = 60.0,
stand_lon = 127.04,
geog_data_path = '/data1/WRF/geog4.1/'
opt_geogrid_tbl_path = './'
/

** EGIS (/data1/WRF/geog4.1/EGIS/) is a path where my 'new data' is located.

I have created 3 domains and the problems that I'm having in the geogrid process are the same among the domains and whether I use modis_30s or USGS_30s doesn't change the nature of the problem that I'm having - "other part" being prescribed as Water body (17 in MODIS and 16 in USGS).
Also, it may be seen as unreasonable to use USGS since the "new data" was classified following the MODIS land cover classification. However, it's just to check whether the problem I'm having can be fixed using USGS instead of MODIS.
Also, when I change the line
geog_data_res = 'EGIS+modis_30s','EGIS+modis_30s','EGIS+modis_30s',
into
geog_data_res = 'modis_30s+EGIS','modis_30s+EGIS','modis_30s+EGIS'
it seems like only modis_30s is used while new data(EGIS) is unused.





GEOGRID.TBL

name=LANDUSEF
priority=2
dest_type=categorical
z_dim_name=land_cat
dominant=LU_INDEX
interp_option=EGIS:nearest_neighbor
rel_path=EGIS:EGIS/

name=LANDUSEF
priority=1
dest_type=categorical
z_dim_name=land_cat
dominant = LU_INDEX
landmask_water = nlcd2006_9s:17 # Calculate a landmask from this field
landmask_water = nlcd2006_30s:17 # Calculate a landmask from this field
landmask_water = nlcd2011_9s:17 # Calculate a landmask from this field
landmask_water = nlcd2006:17 # Calculate a landmask from this field
landmask_water = ssib_10m:16 # Calculate a landmask from this field
landmask_water = ssib_5m:16 # Calculate a landmask from this field
landmask_water = modis_15s:17 # Calculate a landmask from this field
landmask_water = modis_15s_lake:17 # Calculate a landmask from this field
landmask_water = modis_30s:17 # Calculate a landmask from this field
landmask_water = modis_30s_lake:17,21 # Calculate a landmask from this field
landmask_water = usgs_30s:16 # Calculate a landmask from this field
landmask_water = usgs_lakes:16,28 # Calculate a landmask from this field
landmask_water = modis_lakes:17,21 # Calculate a landmask from this field
landmask_water = usgs_2m:16 # Calculate a landmask from this field
landmask_water = usgs_5m:16 # Calculate a landmask from this field
landmask_water = usgs_10m:16 # Calculate a landmask from this field
landmask_water = lowres:17,21 # Calculate a landmask from this field
landmask_water = default:17,21 # Calculate a landmask from this field
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
interp_option = modis_15s_lake:nearest_neighbor
interp_option = modis_30s:nearest_neighbor
interp_option = modis_30s_lake:nearest_neighbor
interp_option = usgs_30s:nearest_neighbor
interp_option = usgs_lakes:nearest_neighbor
interp_option = modis_lakes:nearest_neighbor
interp_option = usgs_2m:four_pt
interp_option = usgs_5m:four_pt
interp_option = usgs_10m:four_pt
interp_option = lowres:average_gcell(4.0)+four_pt
interp_option = default:nearest_neighbor
rel_path = nlcd2006_9s:nlcd2006_ll_9s/
rel_path = nlcd2006_30s:nlcd2006_ll_30s/
rel_path = nlcd2011_9s:nlcd2011_ll_9s/
rel_path = nlcd2006:nlcd2006_ll_30s/
rel_path = ssib_10m:ssib_landuse_10m/
rel_path = ssib_5m:ssib_landuse_5m/
rel_path = modis_15s:modis_landuse_20class_15s/
rel_path = modis_15s_lake:modis_landuse_20class_15s_with_lakes/
rel_path = modis_30s:modis_landuse_20class_30s/
rel_path = modis_30s_lake:modis_landuse_20class_30s_with_lakes/
rel_path = usgs_30s:landuse_30s/
rel_path = usgs_lakes:landuse_30s_with_lakes/
rel_path = modis_lakes:modis_landuse_21class_30s/
rel_path = usgs_2m:landuse_2m/
rel_path = usgs_5m:landuse_5m/
rel_path = usgs_10m:landuse_10m/
rel_path = lowres:modis_landuse_20class_5m_with_lakes/
rel_path = default:modis_landuse_20class_30s_with_lakes/



5) Gone through the geogrid.exe process
It works without any error.

6) LU_INDEX in geo_em.d0*.nc file looks like this (from domain 3 to domain 1)
캡처_2022_07_27_04_26_39_475.png캡처_2022_07_27_15_37_39_33.png캡처_2022_07_27_15_38_03_985.png
The colourful part shows the region (Seoul, South Korea) covered by "new data" and the green region shows the "other region" prescribed as water body.
The above 3 images are created with namelist.wps geog_data_res option
geog_data_res = 'EGIS+modis_30s','EGIS+modis_30s','EGIS+modis_30s',.

When I change the order into
geog_data_res = 'modis_30s+EGIS','modis_30s+EGIS','modis_30s+EGIS'
then the geo_em.d0*.nc file looks like below
There is no LU_INDEX value higher than 17, while the above images have values as high as 33 (commercial urban area)

캡처_2022_07_27_15_47_18_826.png캡처_2022_07_27_15_48_08_28.png캡처_2022_07_27_15_48_29_330.png

I'm curious why the MODIS(or USGS) data are unused in this geogrid process
and why the landuse index of "other region" was prescribed as 17(water body).

I've referred to a number of documents including the pdf file "Advanced Usage of the WRF Preprocessing System - Michael Duda" and relevant questions on this Forum page.
However, there seems to be not many posts that solves the problem that I'm having.
Maybe this one might be quite relevant
[SRTM 3s] Correct behavior of geogrid with multiple sources for topography data?

If there already is a post regarding this problem, I give you a sincere apology.
Also, any help would be very welcome.

Thank you.
 
Last edited:
Please take a look at the document here: https://www2.mmm.ucar.edu/wrf/users/tutorial/presentation_pdfs/201907/duda_wps_advanced.pdf
This document describes in detail how to implement new data in GEOGRID.
Thank you for your reply!
However, I've already followed this document.
I'll try again following this document.
Maybe some issue may have happened while creating/altering my new data.

Again, thank you for your help and I appreciate any more suggestions from anyone.
 
I was able to solve the problem after I simply re-compiled the WPS.
I'm not so sure how this helps the geogrid process to overlay the new map onto a basic MODIS map.
But anyway it solves the problem.

The followings are some of the links that helped me create new LULC data and apply it to WPS.

(applying newly made LULC map to WRF system)

(HOW to create new LULC data from the GIS data. written in Korean, published from the National Institute of Meteorological Science, Republic of Korea.)

(how to create and apply new LULC dataset, especially LCZ dataset)


Thank you for all the helps once again.
 
Last edited:
I was able to solve the problem after I simply re-compiled the WPS.
I'm not so sure how this helps the geogrid process to overlay the new map onto a basic MODIS map.
But anyway it solves the problem.

The followings are some of the links that helped me create new LULC data and apply it to WPS.

(applying newly made LULC map to WRF system)

(HOW to create new LULC data from the GIS data. written in Korean, published from the National Institute of Meteorological Science, Republic of Korea.)

(how to create and apply new LULC dataset, especially LCZ dataset)


Thank you for all the helps once again.
Hello, l met the same question about landuse data with lower priority when using multiple landuse data. And l met Error "cloud not find interpolator sequence for requested resolution for LANDUSEF. The sources specified in namelist.wps is not listed in GEOGRID.TBL" when run ./geogrid.exe after setting geog_data_res in namelist.wps. What can l do for this? Thanks.

lower priority unused in geogrid process while using multiple land use data​

 

Attachments

  • Screenshot from 2023-09-08 09-21-01.png
    Screenshot from 2023-09-08 09-21-01.png
    208.7 KB · Views: 17
  • Screenshot from 2023-09-08 09-21-45.png
    Screenshot from 2023-09-08 09-21-45.png
    62.4 KB · Views: 18
  • Screenshot from 2023-09-08 09-22-17.png
    Screenshot from 2023-09-08 09-22-17.png
    23.7 KB · Views: 16
If I change the default terrain elevation (HGT) to a higher resolution, I must change the resolution of the another surface parameters such as the land use?
 
Top