Problem:
I ran my WRF simulation with sf_urban_physics =1 and sf_urban_physics =0 and seems to show no difference in T2. I also got no errors,warning, or faults in my rsl file. I am using WRF v4.6.0.
I think the urban canopy model (UCM) is not activating because it does not finds valid urban areas that matches all of the the required conditions (Frc_URB2D, UTYPE, IVGTYP, or some other factor) and only runs the Noah LSM for my domains. My best guess from looking at the modules is that I am missing UTYPE_URB2D or UTYPE, which causes WRF to default to 0 and tells the UCM to not run.
Background:
I am trying to run a Noah LSM with the single urban canopy model with my updated land use data from NLCD 2023 that I created. I am using ERA5 as my meteorological input data.
The updated land use data was created by: downloading NLCD 2023, subsetting NLCD 2023 to be slightly bigger than my domains, remapping the land use scheme to NLCD40, converting it to a binary raster, creating the index file, updating the geogrid table, and successfully ran WPS. I looked at the geogrid files and my LU_INDEX is correct for my study area domains. The table below shows the LULC in my domain and how I reclassed them.
I am not using NUDAPT44_1KM and urbfrac_NLCD 2011 because the WRF Static Data Download page it said they were optional.
From my understanding not using NUDAPT44_1KM will make the UCM default to the URBPARM.TBL where I can modify the values in that TBL if necessarry. I am not using urbfrac_NLCD 2011 because a FRC_URB2D is produced in Real.exe using the Developed Low (24), medium (25), and high Intensity (26) LU_INDEX grid locations and set those locations as 0.9 for the FRC_URB2D in my wrfinput files (module_initialize_real.F). I created my own FRC_URB2D to test as well, where LU_INDEX 24 = 0.5, LU_INDEX 25 =.90 and LU_INDEX 26 =.95.
I did noticed that there is some old documentation from 2007 talking about NLCD reclassification for the developed low, medium, and high intensity Urban Categories to 31, 32, 33. (https://ral.ucar.edu/sites/default/files/public/product-tool/WRF-LSM-Urban.pdf) I test this reclass method as well.
I also modified my WRF registry by adding and h to the 8th column to output the TS_URB2D, FRC_URB2D, and UTYPE_URB2D to help with diagnostics in my wrfout file.
Overview of what happens currently in my tests
I attached my namelist files. I also attached the rsl.error files for test 1 and 4.
My thoughts:
There might be something wrong with the way I created my FRC_URB2D because it triggers something in Real (module_initialize_real.F) to reclass LU_INDEX 13. I created the FRC_URB2D following the users guide's "NLCD Urban Fraction Field" but this is something I will look more into.
However I feel like the FRC_URB2D created from Real should have been fine to run the UCM in test 1 at least. I think my biggest issue and the thing I least understand is UTYPE_URB2D or UTYPE because I see that in module_physics_init.F that BOTH FRC_URB2d and UTYPE_URB2D need to be present to call/active other processes to run the UCM. I also UTYPE and UTYPE_URB2D required in module_sf_urban.F.
I am unsure about the reclassing of 31,32,33 because of the already existing LU_INDEX, however the FRC_URB2D does outline the correct/valid urban areas. I feel like I might be overlooking something.
After thinking about it more, I think the root of the issue is that 32 and 33 already had a valid LU_INDEX locations, by reclassing the developed low, medium, and high intensity to 31,32,33 causes confusion in WRF because the FRC_URB2D I created only has values for the developed low, medium, and high intensity area inside 31,32,33 causing the “FRC_URB2D = 0 BUT IVGTYP IS URBAN”.
Main Questions:
I ran my WRF simulation with sf_urban_physics =1 and sf_urban_physics =0 and seems to show no difference in T2. I also got no errors,warning, or faults in my rsl file. I am using WRF v4.6.0.
I think the urban canopy model (UCM) is not activating because it does not finds valid urban areas that matches all of the the required conditions (Frc_URB2D, UTYPE, IVGTYP, or some other factor) and only runs the Noah LSM for my domains. My best guess from looking at the modules is that I am missing UTYPE_URB2D or UTYPE, which causes WRF to default to 0 and tells the UCM to not run.
Background:
I am trying to run a Noah LSM with the single urban canopy model with my updated land use data from NLCD 2023 that I created. I am using ERA5 as my meteorological input data.
The updated land use data was created by: downloading NLCD 2023, subsetting NLCD 2023 to be slightly bigger than my domains, remapping the land use scheme to NLCD40, converting it to a binary raster, creating the index file, updating the geogrid table, and successfully ran WPS. I looked at the geogrid files and my LU_INDEX is correct for my study area domains. The table below shows the LULC in my domain and how I reclassed them.
NLCD In my Domains | NCLD40 (WRF) | LULC |
11 | 21 | Open Water |
21 | 23 | Developed, Open Space |
22 | 24 | Developed, Low Intensity |
23 | 25 | Developed, Medium Intensity |
24 | 26 | Developed High Intensity |
31 | 27 | Barren Land (Rock/Sand/Clay) |
41 | 28 | Deciduous Forest |
42 | 29 | Evergreen Forest |
43 | 30 | Mixed Forest |
52 | 32 | Shrub/Scrub |
71 | 33 | Grassland/Herbaceous |
81 | 37 | Pasture/Hay |
82 | 38 | Cultivated Crops |
90 | 39 | Woody Wetlands |
95 | 40 | Emergent Herbaceous Wetlands |
I am not using NUDAPT44_1KM and urbfrac_NLCD 2011 because the WRF Static Data Download page it said they were optional.
From my understanding not using NUDAPT44_1KM will make the UCM default to the URBPARM.TBL where I can modify the values in that TBL if necessarry. I am not using urbfrac_NLCD 2011 because a FRC_URB2D is produced in Real.exe using the Developed Low (24), medium (25), and high Intensity (26) LU_INDEX grid locations and set those locations as 0.9 for the FRC_URB2D in my wrfinput files (module_initialize_real.F). I created my own FRC_URB2D to test as well, where LU_INDEX 24 = 0.5, LU_INDEX 25 =.90 and LU_INDEX 26 =.95.
I did noticed that there is some old documentation from 2007 talking about NLCD reclassification for the developed low, medium, and high intensity Urban Categories to 31, 32, 33. (https://ral.ucar.edu/sites/default/files/public/product-tool/WRF-LSM-Urban.pdf) I test this reclass method as well.
I also modified my WRF registry by adding and h to the 8th column to output the TS_URB2D, FRC_URB2D, and UTYPE_URB2D to help with diagnostics in my wrfout file.
Overview of what happens currently in my tests
Test | WPS | Real | WRF |
1 | My data with Normal NLCD40 Scheme Land Use No FRC_URB2D | Creates FRC_URB2D with 0.9 for all urban areas (based on the low, medium and high intensity LU_INDEX). Do not see UTYPE_URB2D. LU_INDEX is unchanged. | FRC_URB2D is all 0 now. TS_URB2D has values but stays static. UTYPE_URB2D is all 0. |
2 | My data with Normal NLCD40 Scheme Land use With my FRC_URB2D | I see my FRC_URB2D with values of 0.5, 0.9, and 0.95 I defined. However I see that it set grid cells to new LU_INDEX class 13 and I know it has something to do to some sort of condition met in module_initialize_real.F. Do not see UTYPE_URB2D. | FRC_URB2D is all 0 now. TS_URB2D has values but stays static. UTYPE_URB2D is all 0. |
3 | My data Modified NLCD40 Scheme (Reclassed urban to 31,32,33) No FRC_URB2D | Creates FRC_URB2D with only 0. Since there is no longer Urban classes in the normal NLCD40 scheme to identify the urban areas. LU_INDEX is unchanged. Do not see UTYPE_URB2D. | FRC_URB2D is all 0 now. TS_URB2D has values but stays static. UTYPE_URB2D is all 0. |
4 | My data Modified NLCD40 Scheme (Reclassed urban to 31,32,33) With my FRC_URB2D | I see my FRC_URB2D with values of 0.5, 0.9, and 0.95 I defined. However I see that it set grid cells to new LU_INDEX class 13 and I know it has something to do to some sort of condition met in module_initialize_real.F. Do not see UTYPE_URB2D. | Crashes. Warning “FRC_URB2D = 0 BUT IVGTYP IS URBAN”. This is likely due to the reclass of 31,32,33. However I do see UTYPE_URB2D does have values 0,1,2 in wrf out file. Also segmentation faults. |
I attached my namelist files. I also attached the rsl.error files for test 1 and 4.
My thoughts:
There might be something wrong with the way I created my FRC_URB2D because it triggers something in Real (module_initialize_real.F) to reclass LU_INDEX 13. I created the FRC_URB2D following the users guide's "NLCD Urban Fraction Field" but this is something I will look more into.
However I feel like the FRC_URB2D created from Real should have been fine to run the UCM in test 1 at least. I think my biggest issue and the thing I least understand is UTYPE_URB2D or UTYPE because I see that in module_physics_init.F that BOTH FRC_URB2d and UTYPE_URB2D need to be present to call/active other processes to run the UCM. I also UTYPE and UTYPE_URB2D required in module_sf_urban.F.
I am unsure about the reclassing of 31,32,33 because of the already existing LU_INDEX, however the FRC_URB2D does outline the correct/valid urban areas. I feel like I might be overlooking something.
After thinking about it more, I think the root of the issue is that 32 and 33 already had a valid LU_INDEX locations, by reclassing the developed low, medium, and high intensity to 31,32,33 causes confusion in WRF because the FRC_URB2D I created only has values for the developed low, medium, and high intensity area inside 31,32,33 causing the “FRC_URB2D = 0 BUT IVGTYP IS URBAN”.
Main Questions:
- Is reclassing the NLCD Developed Low, Medium, and High intensity to 31,32,33 still required for the UCM?
- When should this remapping occur if necessary?
- Is the problem NLCD40? If so what should I do?
- Where, when, or how is UTYPE_URB2D or UTYPE created?
Attachments
Last edited: