diff --git a/drivers/hrldas/ConfigVarInTransferMod.F90 b/drivers/hrldas/ConfigVarInTransferMod.F90 index 9dfe4ba7..f71caa17 100644 --- a/drivers/hrldas/ConfigVarInTransferMod.F90 +++ b/drivers/hrldas/ConfigVarInTransferMod.F90 @@ -129,11 +129,12 @@ subroutine ConfigVarInTransfer(noahmp, NoahmpIO) ! treatment for urban point if ( (NoahmpIO%IVGTYP(I,J) == NoahmpIO%ISURBAN_TABLE) .or. (NoahmpIO%IVGTYP(I,J) > NoahmpIO%URBTYPE_beg) ) then - noahmp%config%domain%FlagUrban = .true. - if(NoahmpIO%SF_URBAN_PHYSICS == 0 ) then - noahmp%config%domain%VegType = NoahmpIO%ISURBAN_TABLE + if ( NoahmpIO%SF_URBAN_PHYSICS == 0 ) then + noahmp%config%domain%VegType = NoahmpIO%ISURBAN_TABLE ! treat as bulk urban point + noahmp%config%domain%FlagUrban = .true. else - noahmp%config%domain%VegType = NoahmpIO%NATURAL_TABLE ! set urban vegetation type based on table natural + noahmp%config%domain%VegType = NoahmpIO%NATURAL_TABLE ! set rural vegetation type based on table natural + ! urban is handled by explicit urban scheme outside Noah-MP NoahmpIO%GVFMAX(I,J) = 0.96 * 100.0 ! unit: % endif endif diff --git a/drivers/hrldas/NoahmpInitMainMod.F90 b/drivers/hrldas/NoahmpInitMainMod.F90 index 339e2a23..af11f3b1 100644 --- a/drivers/hrldas/NoahmpInitMainMod.F90 +++ b/drivers/hrldas/NoahmpInitMainMod.F90 @@ -187,8 +187,13 @@ subroutine NoahmpInitMain(NoahmpIO) NoahmpIO%LAI(I,J) = 0.0 NoahmpIO%LAI(I,J) = max(NoahmpIO%LAI(I,J), 0.05) ! at least start with 0.05 for arbitrary initialization (v3.7) NoahmpIO%XSAIXY(I,J) = max(0.1*NoahmpIO%LAI(I,J), 0.05) ! MB: arbitrarily initialize SAI using input LAI (v3.7) - NoahmpIO%LFMASSXY(I,J) = NoahmpIO%LAI(I,J) * 1000.0 / & - max(NoahmpIO%SLA_TABLE(NoahmpIO%IVGTYP(I,J)),1.0) ! use LAI to initialize (v3.7) + if ( NoahmpIO%SF_URBAN_PHYSICS == 0 ) then + NoahmpIO%LFMASSXY(I,J) = NoahmpIO%LAI(I,J) * 1000.0 / & + max(NoahmpIO%SLA_TABLE(NoahmpIO%IVGTYP(I,J)),1.0) ! use LAI to initialize (v3.7) + else + NoahmpIO%LFMASSXY(I,J) = NoahmpIO%LAI(I,J) * 1000.0 / & + max(NoahmpIO%SLA_TABLE(NoahmpIO%NATURAL_TABLE),1.0)! use LAI to initialize (v3.7) + endif NoahmpIO%STMASSXY(I,J) = NoahmpIO%XSAIXY(I,J) * 1000.0 / 3.0 ! use SAI to initialize (v3.7) NoahmpIO%RTMASSXY(I,J) = 500.0 ! these are all arbitrary and probably should be NoahmpIO%WOODXY(I,J) = 500.0 ! in the table or read from initialization diff --git a/parameters/NoahmpTable.TBL b/parameters/NoahmpTable.TBL index d0ecdcd1..c9d37c5b 100644 --- a/parameters/NoahmpTable.TBL +++ b/parameters/NoahmpTable.TBL @@ -47,7 +47,7 @@ ISCROP = 2 ! crop land type in USGS EBLFOREST = 13 ! evergreen broadleaf forest land type in USGS NATURAL = 5 ! natural vegation type in urban pixel in USGS - URBTYPE_beg = 40 ! land type number above which are urban (e.g., LCZ) + URBTYPE_beg = 50 ! land type number above which are urban (e.g., LCZ) LCZ_1 = 51 ! urban local climate zone (LCZ) type 1: compact highrise LCZ_2 = 52 ! urban local climate zone (LCZ) type 2: compact midrise LCZ_3 = 53 ! urban local climate zone (LCZ) type 3: compact lowrise @@ -243,7 +243,7 @@ ISCROP = 12 ! crop land type in MODIS EBLFOREST = 2 ! evergreen broadleaf forest land type in MODIS NATURAL = 14 ! natural vegation type in urban pixel in MODIS - URBTYPE_beg = 40 ! land type number above which are urban (e.g., LCZ) + URBTYPE_beg = 50 ! land type number above which are urban (e.g., LCZ) LCZ_1 = 51 ! urban local climate zone (LCZ) type 1: compact highrise LCZ_2 = 52 ! urban local climate zone (LCZ) type 2: compact midrise LCZ_3 = 53 ! urban local climate zone (LCZ) type 3: compact lowrise