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

real.exe changes LU_INDEX and LANDMASK when producing wrfinput file


New member

I am conducting a WRF simulation using ERA5 reanalysis input data. I successfully ran all programs in WPS and generated met_em files that look as I'd expect. However, when I run real.exe, the wrfinput files that get produced have changes in the LANDMASK and LU_INDEX. Specifically, a region that is lake gets converted to land when I run real.exe, and the the LU_INDEX gets changed to snow and ice from lake. Interestingly, the variable LAKEMASK in the wrfinput file does not convert that lake to land (LAKEMASK is not a variable in the met_em file). See images below:



I have attached my namelist.input file. Please let me know if you have any suggestions for how to solve this issue, and thanks for your help and time.



  • LANDMASK_compare.png
    73.1 KB · Views: 6
  • namelist.input
    4.1 KB · Views: 9
Update: It seems like this issue may be do to the soil layers or average surface temperature for inland lakes, but I'm still not totally sure how to interpret this. See screenshot from the rsl.out.0000 file (file attached).

Screen Shot 2023-09-28 at 1.21.15 PM.png


  • rsl.out.0000
    183.2 KB · Views: 4
I'm having a similar problem, the land use category of my processed data in wps is modis 21 category, but after real.exe the land use category becomes 17. if you've solved it, I'd appreciate it if you could tell me how!
I'm having a similar problem, the land use category of my processed data in wps is modis 21 category, but after real.exe the land use category becomes 17. if you've solved it, I'd appreciate it if you could tell me how!
Unfortunately I have still not solved it. What domain is your simulation being conducted for?
Can you attach your namelist.wps file so I can see what settings you use? Can you also let me know which version of WPS you're using and whether you made any modifications to the static fields or the GEOGRID.TBL? Thanks!
Hi @kwerner

My namelist.wps file is attached. I did need to manually modify the landmask values in the geo_em file, because the default MODIS data has an incorrect lake size for the Great Salt Lake, shown below:

Screen Shot 2023-10-11 at 6.24.12 PM.png

I also modified the GEOGRID.TBL, which I thought would make other corrections to the incorrect lake. That file is attached.

Thanks so much for your help.



  • namelist.wps
    909 bytes · Views: 9
    36.5 KB · Views: 7
Thanks. I ran a test case, using your namelists (with my own input data). I tried both with your modified GEOGRID.TBL and with the default GEOGRID.TBL. When I run real.exe, my LU_INDEX and LANDMASK stay the same, when comparing the met_em.d03* files to the wrfinput_d03 files. If you didn't make any modifications to the wrf code or the *.TBL files in the wrf running directory, then I suspect you're seeing these issues due to the changes you made to the geo_em* file(s). Perhaps you could try modifying the lake in the wrfinput* files instead to see if that makes a difference.
I at least thought that things had looked correct. However, the variable XLAND in the wrfout* files reverts back to land when it should be lake. Here is what I have for that variable in the wrfinput_d03 file:

Screen Shot 2023-10-17 at 9.55.46 AM.png

And in the first wrfout_d03 file for the simulation:

Screen Shot 2023-10-17 at 9.54.56 AM.png

It seems that this problem does not occur for any other variables - just for XLAND. Any thoughts on why this could be?
I just want to let you know I haven't forgotten about you. I'm seeking the opinion of a colleague and am trying to get some clarity on something they mentioned. I'll get back to you as soon as I can. I apologize for the delay.

This was a lengthy process, but I think I have now solved the issue (or at least am very close).

I think it is related to the SEAICE flag, which is specified in the ERA5. See my plot below which shows the SEAICE variable for a WRF simulation using GFS (left) and another using ERA5 (right).


In the GFS, that variable is not specified, but it is in ERA5.

At line 1995 of the program phys/module_physics_init.F, there is a code snippit stating:


and the xice_threshold is a value specified earlier in the program. The default xice_threshold was quite low so that XLAND was always set to one, meaning that the lake was converted to land. I modified the xice_threshold to a value larger than one, so that any SEAICE value is smaller than xice_threshold and the lake never gets converted to land.

The Great Salt Lake is a hypersaline lake, which lowers its freezing point and causes it to never freeze. I suspect that the ERA5 is unaware of this (thus the high SEAICE fractions), which led to the problems I was having. I am conducting a simulation now with my updates, and hopefully everything works out well.

I'm so glad to hear you were able to track down the problem, and thank you for posting an update - it may help others in the future!