wrf-model / WRF

The official repository for the Weather Research and Forecasting (WRF) model
Other
1.18k stars 658 forks source link

[Resubmit for PR #1971 ] Bug fix for LAI initialization for urban pixel in Noah-MP #1990

Closed cenlinhe closed 5 months ago

cenlinhe commented 5 months ago

Bug fix for LAI initialization for urban pixel in Noah-MP.

TYPE: bug fix

KEYWORDS: LAI, urban, Noah-MP

SOURCE: Cenlin He (NCAR/RAL)

DESCRIPTION OF CHANGES: Problem: Before bug fix, Noah-MP (v4.5 and earlier versions) initializes leaf mass from the table parameter based on land type. However, this causes model crash if the LCZ capability is activated for urban pixel, because the LCZ land type index (51-61) is out of the MODIS or USGS land type number. This code is in module_sf_noahmpdrv.F file.

Solution: Add an if-statement to assign default natural vegetation type for urban pixels with large land type index to represent rural portion of the urban pixel.

This is related to a reported Noah-MP issue (https://github.com/NCAR/noahmp/issues/104).

LIST OF MODIFIED FILES: phys/noahmp/drivers/wrf/module_sf_noahmpdrv.F

TESTS CONDUCTED:

RELEASE NOTE: This PR fixed a bug in Noah-MP for uninitialized leaf mass when LCZ is used.

cenlinhe commented 5 months ago

This is a re-submitted PR for this PR: https://github.com/wrf-model/WRF/pull/1971 to solve the unknown conflicting issues when merging Noah-MP updates.

cenlinhe commented 5 months ago

@weiwangncar @dudhia Can you re-approve and merge this PR first? I think it should work now. When I submitted this PR to WRF develop branch, it did not show any conflicts.

weiwangncar commented 5 months ago

The regression test results:

Test Type              | Expected  | Received |  Failed
= = = = = = = = = = = = = = = = = = = = = = = =  = = = =
Number of Tests        : 23           24
Number of Builds       : 60           57
Number of Simulations  : 158           150        0
Number of Comparisons  : 95           86        0

Failed Simulations are: 
None
Which comparisons are not bit-for-bit: 
None