From 9507bb8c6f7150d011b49e7c28926f7bf7d68884 Mon Sep 17 00:00:00 2001 From: helin wei Date: Fri, 17 Dec 2021 02:26:48 +0000 Subject: [PATCH 1/3] fix the tsurf issue in Noah MP driver --- physics/sfc_noahmp_drv.F90 | 4 +++- physics/sfc_noahmp_drv.meta | 8 ++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/physics/sfc_noahmp_drv.F90 b/physics/sfc_noahmp_drv.F90 index 7ef542f42..1fd9773ff 100644 --- a/physics/sfc_noahmp_drv.F90 +++ b/physics/sfc_noahmp_drv.F90 @@ -118,7 +118,7 @@ subroutine noahmpdrv_run & ! --- in/outs: weasd, snwdph, tskin, tprcp, srflag, smc, stc, slc, & - canopy, trans, zorl, & + canopy, trans, tsurf, zorl, & rb1, fm1, fh1, ustar1, stress1, fm101, fh21, & ! --- Noah MP specific @@ -245,6 +245,7 @@ subroutine noahmpdrv_run & real(kind=kind_phys), dimension(:,:) , intent(inout) :: slc ! liquid soil moisture [m3/m3] real(kind=kind_phys), dimension(:) , intent(inout) :: canopy ! canopy moisture content [mm] real(kind=kind_phys), dimension(:) , intent(inout) :: trans ! total plant transpiration [m/s] + real(kind=kind_phys), dimension(:) , intent(inout) :: tsurf ! surface skin temperature [K] real(kind=kind_phys), dimension(:) , intent(inout) :: zorl ! surface roughness [cm] real(kind=kind_phys), dimension(:) , intent(inout) :: rb1 ! bulk richardson # @@ -921,6 +922,7 @@ subroutine noahmpdrv_run & sncovr1 (i) = snow_cover_fraction ! qsurf (i) = spec_humidity_surface + tsurf (i) = tskin(i) tvxy (i) = temperature_leaf tgxy (i) = temperature_ground diff --git a/physics/sfc_noahmp_drv.meta b/physics/sfc_noahmp_drv.meta index c9a6c0258..e37036c32 100644 --- a/physics/sfc_noahmp_drv.meta +++ b/physics/sfc_noahmp_drv.meta @@ -662,6 +662,14 @@ type = real kind = kind_phys intent = inout +[tsurf] + standard_name = surface_skin_temperature_after_iteration_over_land + long_name = surface skin temperature after iteration over land + units = K + dimensions = (horizontal_loop_extent) + type = real + kind = kind_phys + intent = inout [zorl] standard_name = surface_roughness_length_over_land long_name = surface roughness length over land (temporary use as interstitial) From 3c0e2e6da5146cec362a470902d18c3ee9774b84 Mon Sep 17 00:00:00 2001 From: Michael Barlage Date: Mon, 20 Dec 2021 14:02:29 -0700 Subject: [PATCH 2/3] change eta0 to slow snow compaction --- physics/module_sf_noahmp_glacier.f90 | 2 +- physics/module_sf_noahmplsm.f90 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/physics/module_sf_noahmp_glacier.f90 b/physics/module_sf_noahmp_glacier.f90 index b5abd871b..9dd79b347 100644 --- a/physics/module_sf_noahmp_glacier.f90 +++ b/physics/module_sf_noahmp_glacier.f90 @@ -2657,7 +2657,7 @@ subroutine compact_glacier (nsnow ,nsoil ,dt ,stc ,snice , & !in real (kind=kind_phys), parameter :: c4 = 0.04 !< [1/k] real (kind=kind_phys), parameter :: c5 = 2.0 !< real (kind=kind_phys), parameter :: dm = 100.0 !< upper limit on destructive metamorphism compaction [kg/m3] - real (kind=kind_phys), parameter :: eta0 = 0.8e+6 !< viscosity coefficient [kg-s/m2] + real (kind=kind_phys), parameter :: eta0 = 1.8e+6 !< viscosity coefficient [kg-s/m2] !according to anderson, it is between 0.52e6~1.38e6 real (kind=kind_phys) :: burden !< pressure of overlying snow [kg/m2] real (kind=kind_phys) :: ddz1 !< rate of settling of snow pack due to destructive metamorphism. diff --git a/physics/module_sf_noahmplsm.f90 b/physics/module_sf_noahmplsm.f90 index 81dd1dceb..1d95b0c0e 100644 --- a/physics/module_sf_noahmplsm.f90 +++ b/physics/module_sf_noahmplsm.f90 @@ -7365,7 +7365,7 @@ subroutine compact (parameters,nsnow ,nsoil ,dt ,stc ,snice , & !in real (kind=kind_phys), parameter :: c4 = 0.04 ![1/k] real (kind=kind_phys), parameter :: c5 = 2.0 ! real (kind=kind_phys), parameter :: dm = 100.0 !upper limit on destructive metamorphism compaction [kg/m3] - real (kind=kind_phys), parameter :: eta0 = 0.8e+6 !viscosity coefficient [kg-s/m2] + real (kind=kind_phys), parameter :: eta0 = 1.8e+6 !viscosity coefficient [kg-s/m2] !according to anderson, it is between 0.52e6~1.38e6 real (kind=kind_phys) :: burden !pressure of overlying snow [kg/m2] real (kind=kind_phys) :: ddz1 !rate of settling of snow pack due to destructive metamorphism. From 289cf01f3fc4e28a4869a185c5b4ac4bcb9d9eb6 Mon Sep 17 00:00:00 2001 From: Michael Barlage Date: Mon, 20 Dec 2021 14:03:13 -0700 Subject: [PATCH 3/3] change snow thermal conductivity to verseghy --- physics/module_sf_noahmp_glacier.f90 | 4 ++-- physics/module_sf_noahmplsm.f90 | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/physics/module_sf_noahmp_glacier.f90 b/physics/module_sf_noahmp_glacier.f90 index 9dd79b347..4c3a53c88 100644 --- a/physics/module_sf_noahmp_glacier.f90 +++ b/physics/module_sf_noahmp_glacier.f90 @@ -738,10 +738,10 @@ subroutine csnow_glacier (isnow ,nsnow ,nsoil ,snice ,snliq ,dzsnso , ! thermal conductivity of snow do iz = isnow+1, 0 - tksno(iz) = 3.2217e-6*bdsnoi(iz)**2. ! stieglitz(yen,1965) +! tksno(iz) = 3.2217e-6*bdsnoi(iz)**2. ! stieglitz(yen,1965) ! tksno(iz) = 2e-2+2.5e-6*bdsnoi(iz)*bdsnoi(iz) ! anderson, 1976 ! tksno(iz) = 0.35 ! constant -! tksno(iz) = 2.576e-6*bdsnoi(iz)**2. + 0.074 ! verseghy (1991) + tksno(iz) = 2.576e-6*bdsnoi(iz)**2. + 0.074 ! verseghy (1991) ! tksno(iz) = 2.22*(bdsnoi(iz)/1000.)**1.88 ! douvill(yen, 1981) enddo diff --git a/physics/module_sf_noahmplsm.f90 b/physics/module_sf_noahmplsm.f90 index 1d95b0c0e..944446085 100644 --- a/physics/module_sf_noahmplsm.f90 +++ b/physics/module_sf_noahmplsm.f90 @@ -2532,10 +2532,10 @@ subroutine csnow (parameters,isnow ,nsnow ,nsoil ,snice ,snliq ,dzsnso ! thermal conductivity of snow do iz = isnow+1, 0 - tksno(iz) = 3.2217e-6*bdsnoi(iz)**2. ! stieglitz(yen,1965) +! tksno(iz) = 3.2217e-6*bdsnoi(iz)**2. ! stieglitz(yen,1965) ! tksno(iz) = 2e-2+2.5e-6*bdsnoi(iz)*bdsnoi(iz) ! anderson, 1976 ! tksno(iz) = 0.35 ! constant -! tksno(iz) = 2.576e-6*bdsnoi(iz)**2. + 0.074 ! verseghy (1991) + tksno(iz) = 2.576e-6*bdsnoi(iz)**2. + 0.074 ! verseghy (1991) ! tksno(iz) = 2.22*(bdsnoi(iz)/1000.)**1.88 ! douvill(yen, 1981) enddo