Description
Describe the bug
I am running a one way nested domain (max_dom = 2,) using WRF Version 4.6.0 for the Midwest region using the traditional 3 urban categories for SLUCM. The model crashed immediately after trying to process domain 2 and getting an Fortran runtime error.
I believe that this error is caused by an incorrect processing/calculations of UTYPE and FRC_URB2D for domain 2. I looked at the wrfout files and found that domain 2’s UTYPE and FRC_URB2D values were completely different than what is expected and processed incorrectly compared to domain 1.
To Reproduce
Steps to reproduce the behavior:
- Use WRFV4.6.0
- Use my Urban 3 classes data in WPS.
- Follow the Namelist.wps and namelist.input I attached below.
Data: ERA-5 and my 3 Urban classes
Note: I did not use the 2011 FRC_URB2D and URBPARM optional data.
GEOGRID.TBL Addition
name=LANDUSEF
priority=2
dest_type=categorical
z_dim_name=land_cat
interp_option = default:nearest_neighbor
rel_path = default:urban3_51/
Expected behavior
Since I did not provide the FRC_URB2D during WPS, REAL.exe created the FRC_URB2D field and mapped the LU_INDEX 13 (urban class for MODIFIED_IGBP_MODIS_NOAH) as 0.9 and the rest as 0 which is expected (module_initialize_real.F) and worked for both domain 1 and 2. I verified the number of cells and location.
During WRF for domain 1, UTYPE would assigned based on the LU_INDEX 51,52,53 to 1,2,3 and 0 for the non-urban LU_INDEX. Then WRF would read the URBPARM.TBL to assign the FRC_URB2D based on the UTYPE 1,2, or 3. Based on the URBPARM.TBL UTYPE 1 = 0.5, UTYPE 2 = 0.9, and UTYPE 3 = 0.95.
Domain 2 should do the same calculations of assigning UTYPE 1,2,3 based on the LU_INDEX 51,52,53. Read the URBPARM.TBL and assign the FRC_URB2D.
Actual behavior
For domain 1 it works as intended, I see the correct assignment of UTYPE 0,1,2,3 and FRC_URB2D 0,0.5,0.9,0.95 based on the LU_INDEX (13,51,52,53).
For domain 2 it is completely different than expected. The UTYPE seems to be random because I saw many non-urban LU_INDEX (not 13,51,52,53) were assigned to UTYPE 1,2, or 3, when they should be 0. Even the locations with LU_INDEX 51,52,53 were not assigned correctly. Then the FRC_URB2D was different because it had 2 very small negative values. The FRC_URB2D seemed to assign the values 0.5,0.9,0.95 to the cells with the wrong UTYPE 1,2,3 then interpolated the values because it has many unique values. I am very confused.
Screenshots
I used Python to examine my wrfout files.
Small Negative Values
Attachments
I attached my namelist.wps, namelist.input, rsl.out, and my 3 Urban Categories (urban3_51) + index file inside the Reproduce Zipped file.
Reproduce.zip
Additional context
- I ran the same simulations with just 1 domain, and it ran perfectly fine.
- I also ran the simulations with the provided 2011 FRC_URB2D in WPS and the same behavior happened. Where domain 2’s UTYPE is wrong and the FRC_URB2D has even more cells with negative values.
- I tried version 4.4.2 when the traditional urban classes were first changed from 31,32,33 to 51,52,53 and got the same error.
- My urban data and namelist should be correct and I do not think they would cause the issue I am seeing. However I could be wrong since I am a new user of WRF.
- If you need additional information please let me know.