diff --git a/README.md b/README.md index 0db7eb41..18a0e752 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ Noah-MP Community Repository This is the official Noah-MP unified Github repository for code downloading and contribution. Note that Noah-MP is a community model contributed by the whole Noah-MP scientific community. For maintenance and release of this GitHub, please contact: Cenlin He (cenlinhe@ucar.edu) and Fei Chen (feichen@ucar.edu). -Some changes have been made to the structure of archiving the stand-alone version of Noah-MP/HRLDAS code in the Github repository. Now, it separately archives the core Noah-MP source code and parameter table (module_sf_noahmplsm.F & MPTABLE.TBL) in this unified Noah-MP Github repository and the rest of the driver and related files (e.g., module_sf_noahmpdrv.F, etc.) in another unified HRLDAS Github repository (https://github.com/NCAR/hrldas). The HRLDAS Github repo is already linked to this unified core Noah-MP code repository. This new archiving structure will allow different host model platforms/systems (e.g., HRLDAS, WRF, UFS, NWM, LIS, etc.) to connect to the core Noah-MP source code and develop their own host model drivers. +Some changes have been made to the structure of archiving the stand-alone version of Noah-MP/HRLDAS code in the Github repository. Now, it separately archives the core Noah-MP source code, Noah-MP driver, and parameter tables in this unified Noah-MP Github repository and the rest of the HRLDAS related files (e.g., module_sf_urban.F, etc.) in another unified HRLDAS Github repository (https://github.com/NCAR/hrldas). The HRLDAS Github repo is already linked to this unified core Noah-MP code repository. This new archiving structure will allow different host model platforms/systems (e.g., HRLDAS, WRF, UFS, NWM, LIS, etc.) to connect to the core Noah-MP source code and develop their own host model drivers. Model developers can make code development based on the develop branch and create pull request to the develop branch. The pull request will be reviewed by Noah-MP model release team and if everything looks good, the new code development will be merged to the develop branch. Eventually, the updates in the develop branch will be merged to the master branch for official Noah-MP model release. @@ -36,4 +36,4 @@ Some suggestions for model developers to contribute to Noah-MP code through the 7. Step (7) The Noah-MP release team will merge the updated "develop" branch to the master branch and version-release branch during the annual model release. -Note: If updates are made to both the core NoahMP source code (module_sf_noahmplsm.F & MPTABLE.TBL) and other driver files (e.g., module_sf_noahmpdrv.F), two separate pull requests need to be submitted to this NoahMP repository and the HRLDAS repository (https://github.com/NCAR/hrldas), respectively, regarding the changes in the core code file and other driver files. This could be done by using the same titles for the two pull requests to ensure that the submitted code changes are handled together by the release team in the two repositories. +Note: If updates are made to both the core NoahMP source codes and other HRLDAS files, two separate pull requests need to be submitted to this NoahMP repository and the HRLDAS repository (https://github.com/NCAR/hrldas), respectively, regarding the changes in the Noah-MP code files and other HRLDAS-related files. This could be done by using the same titles for the two pull requests to ensure that the submitted code changes are handled together by the release team in the two repositories. diff --git a/drv_WRF/module_sf_noahmpdrv.F b/drivers/wrf/module_sf_noahmpdrv.F similarity index 100% rename from drv_WRF/module_sf_noahmpdrv.F rename to drivers/wrf/module_sf_noahmpdrv.F diff --git a/parameters/MPTABLE.TBL b/parameters/MPTABLE.TBL index 50f767c1..54bdbb34 100644 --- a/parameters/MPTABLE.TBL +++ b/parameters/MPTABLE.TBL @@ -373,12 +373,12 @@ &noahmp_irrigation_parameters IRR_FRAC = 0.10 ! irrigation Fraction IRR_HAR = 20 ! number of days before harvest date to stop irrigation -IRR_LAI = 0.50 ! Minimum lai to trigger irrigation -IRR_MAD = 0.60 ! management allowable deficit (0-1) -FILOSS = 0.10 ! fraction of flood irrigation loss (0-1) +IRR_LAI = 0.10 ! Minimum lai to trigger irrigation +IRR_MAD = 0.60 ! management allowable deficit (0.0-1.0) +FILOSS = 0.50 ! flood irrigation loss fraction (0.0-0.99) SPRIR_RATE = 6.40 ! mm/h, sprinkler irrigation rate MICIR_RATE = 1.38 ! mm/h, micro irrigation rate -FIRTFAC = 1.00 ! flood application rate factor +FIRTFAC = 1.20 ! flood application rate factor IR_RAIN = 1.00 ! maximum precipitation to stop irrigation trigger / diff --git a/src/module_sf_noahmplsm.F b/src/module_sf_noahmplsm.F index 45bfaa70..a72bd588 100644 --- a/src/module_sf_noahmplsm.F +++ b/src/module_sf_noahmplsm.F @@ -9186,11 +9186,11 @@ SUBROUTINE TRIGGER_IRRIGATION(parameters,NSOIL,ZSOIL,SH2O,FVEG, ! another, surface layers will be saturated. ! flood irrigation amount (m) based on 2D FIFAC IF((IRAMTFI .EQ. 0.0) .AND. (FIFAC .GT. 0.0) .AND. (OPT_IRRM .EQ. 0)) THEN - IRAMTFI = FIFAC*(IRRWATAMT)*(parameters%FILOSS+1) + IRAMTFI = FIFAC*(IRRWATAMT)*(1.0/(1.0-parameters%FILOSS)) IRCNTFI = IRCNTFI + 1 !flood irrigation amount (m) based on namelist choice ELSE IF((IRAMTFI .EQ. 0.0) .AND. (OPT_IRRM .EQ. 3)) THEN - IRAMTFI = (IRRWATAMT)*(parameters%FILOSS+1) + IRAMTFI = (IRRWATAMT)*(1.0/(1.0-parameters%FILOSS)) IRCNTFI = IRCNTFI + 1 END IF ELSE @@ -12078,6 +12078,11 @@ subroutine read_mp_irrigation_parameters() read(15,noahmp_irrigation_parameters) close(15) + if (FILOSS < 0.0 .or. FILOSS > 0.99 ) then + write(*,'("WARNING: FILOSS should be >0.0 and <0.99")') + call wrf_error_fatal("STOP in NoahMP_irrigation_parameters") + endif + IRR_FRAC_TABLE = IRR_FRAC ! irrigation Fraction IRR_HAR_TABLE = IRR_HAR ! number of days before harvest date to stop irrigation IRR_LAI_TABLE = IRR_LAI ! Minimum lai to trigger irrigation