Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 12 additions & 8 deletions drivers/wrf/module_sf_noahmpdrv.F
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ SUBROUTINE noahmplsm(ITIMESTEP, YR, JULIAN, COSZIN,XLAT,XLONG, & ! IN
QDRIPRXY ,QTHROSXY ,QTHRORXY ,&
QSNSUBXY ,QSNFROXY ,QSUBCXY ,&
QFROCXY ,QEVACXY ,QDEWCXY ,QFRZCXY ,QMELTCXY ,&
QSNBOTXY ,PONDINGXY ,PAHXY ,PAHGXY, PAHVXY, PAHBXY,&
QSNBOTXY ,QMELTXY ,PONDINGXY ,PAHXY ,PAHGXY, PAHVXY, PAHBXY,&
FPICEXY,RAINLSM,SNOWLSM,FORCTLSM ,FORCQLSM,FORCPLSM,FORCZLSM,FORCWLSM,&
ACC_SSOILXY, ACC_QINSURXY, ACC_QSEVAXY, ACC_ETRANIXY, EFLXBXY, &
SOILENERGY, SNOWENERGY, CANHSXY, &
Expand Down Expand Up @@ -232,7 +232,7 @@ SUBROUTINE noahmplsm(ITIMESTEP, YR, JULIAN, COSZIN,XLAT,XLONG, & ! IN
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT) :: SNOW ! snow water equivalent [mm]
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT) :: SNOWH ! physical snow depth [m]
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT) :: CANWAT ! total canopy water + ice [mm]
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT) :: ACSNOM ! accumulated snow melt leaving pack
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT) :: ACSNOM ! accumulated snow melt (mm)
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT) :: ACSNOW ! accumulated snow on grid
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT) :: EMISS ! surface bulk emissivity
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT) :: QSFC ! bulk surface specific humidity
Expand Down Expand Up @@ -341,7 +341,8 @@ SUBROUTINE noahmplsm(ITIMESTEP, YR, JULIAN, COSZIN,XLAT,XLONG, & ! IN
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(OUT ) :: QDEWCXY
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(OUT ) :: QFRZCXY
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(OUT ) :: QMELTCXY
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(OUT ) :: QSNBOTXY
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(OUT ) :: QSNBOTXY !total liquid water (snowmelt + rain through pack)out of snowpack bottom [mm/s]
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(OUT ) :: QMELTXY !snowmelt due to phase change (mm/s)
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(OUT ) :: PONDINGXY
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(OUT ) :: FPICEXY !fraction of ice in precip
REAL, DIMENSION( ims:ime, jms:jme ), INTENT(OUT ) :: RAINLSM !rain rate (mm/s) AJN
Expand Down Expand Up @@ -588,7 +589,8 @@ SUBROUTINE noahmplsm(ITIMESTEP, YR, JULIAN, COSZIN,XLAT,XLONG, & ! IN
REAL :: FCEV ! canopy evaporation heat (w/m2) [+ to atm]
REAL :: FGEV ! ground evaporation heat (w/m2) [+ to atm]
REAL :: FCTR ! transpiration heat flux (w/m2) [+ to atm]
REAL :: QSNBOT ! snowmelt out bottom of pack [mm/s]
REAL :: QSNBOT ! total liquid water (snowmelt + rain through pack)out of snowpack bottom [mm/s]
REAL :: QMELT ! snowmelt due to phase change (mm/s)
REAL :: PONDING ! snowmelt with no pack [mm]
REAL :: PONDING1 ! snowmelt with no pack [mm]
REAL :: PONDING2 ! snowmelt with no pack [mm]
Expand Down Expand Up @@ -1054,7 +1056,7 @@ SUBROUTINE noahmplsm(ITIMESTEP, YR, JULIAN, COSZIN,XLAT,XLONG, & ! IN
FSA, FSR, FIRA, FSH, FGEV, SSOIL, & ! OUT :
TRAD, ESOIL, RUNSF, RUNSB, SAG, SALB, & ! OUT :
QSNBOT,PONDING,PONDING1,PONDING2, T2MB, Q2MB, & ! OUT :
EMISSI, FPICE, CHB2 & ! OUT :
EMISSI, FPICE, CHB2, QMELT & ! OUT :
#ifdef WRF_HYDRO
, sfcheadrt(i,j) &
#endif
Expand Down Expand Up @@ -1192,7 +1194,7 @@ SUBROUTINE noahmplsm(ITIMESTEP, YR, JULIAN, COSZIN,XLAT,XLONG, & ! IN
PAHG , PAHB , PAH , LAISUN , LAISHA , RB , & ! OUT :
QINTS , QINTR , QDRIPS , QDRIPR , QTHROS , QTHROR , & ! OUT :
QSNSUB , QSNFRO , QSUBC , QFROC , QFRZC , QMELTC , & ! OUT :
QEVAC , QDEWC , & ! OUT :
QEVAC , QDEWC , QMELT , & ! OUT :
RAININ , SNOWIN , ACC_SSOIL, ACC_QINSUR, ACC_QSEVA , & ! OUT :
ACC_ETRANI, HCPCT , EFLXB , CANHS , & ! OUT :
ACC_DWATER, ACC_PRCP, ACC_ECAN, ACC_ETRAN, ACC_EDIR & ! INOUT
Expand Down Expand Up @@ -1237,7 +1239,8 @@ SUBROUTINE noahmplsm(ITIMESTEP, YR, JULIAN, COSZIN,XLAT,XLONG, & ! IN
SNOWH (I,J) = SNDPTH
CANWAT (I,J) = CANLIQ + CANICE
ACSNOW (I,J) = ACSNOW(I,J) + PRECIP_IN(I,J) * FPICE
ACSNOM (I,J) = ACSNOM(I,J) + QSNBOT*DT + PONDING + PONDING1 + PONDING2
! ACSNOM (I,J) = ACSNOM(I,J) + QSNBOT*DT + PONDING + PONDING1 + PONDING2
ACSNOM (I,J) = ACSNOM(I,J) + QMELT*DT + PONDING + PONDING1 + PONDING2
EMISS (I,J) = EMISSI
QSFC (I,J) = QSFC1D

Expand Down Expand Up @@ -1351,7 +1354,8 @@ SUBROUTINE noahmplsm(ITIMESTEP, YR, JULIAN, COSZIN,XLAT,XLONG, & ! IN
QFRZCXY (I,J) = QFRZC
QMELTCXY (I,J) = QMELTC
QSNBOTXY (I,J) = QSNBOT
PONDINGXY (I,J) = PONDING + PONDING1 + PONDING2
QMELTXY (I,J) = QMELT
PONDINGXY(I,J) = PONDING + PONDING1 + PONDING2
FPICEXY (I,J) = FPICE
RAINLSM (I,J) = RAININ
SNOWLSM (I,J) = SNOWIN
Expand Down
14 changes: 7 additions & 7 deletions src/module_sf_noahmp_glacier.F
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ SUBROUTINE NOAHMP_GLACIER (&
FSA ,FSR ,FIRA ,FSH ,FGEV ,SSOIL , & ! OUT :
TRAD ,EDIR ,RUNSRF ,RUNSUB ,SAG ,ALBEDO , & ! OUT :
QSNBOT ,PONDING ,PONDING1,PONDING2,T2M ,Q2E , & ! OUT :
EMISSI, FPICE, CH2B & ! OUT :
EMISSI, FPICE, CH2B ,QMELT & ! OUT :
#ifdef WRF_HYDRO
, sfcheadrt &
#endif
Expand Down Expand Up @@ -182,7 +182,7 @@ SUBROUTINE NOAHMP_GLACIER (&
REAL , INTENT(OUT) :: RUNSUB !baseflow (saturation excess) [mm/s]
REAL , INTENT(OUT) :: SAG !solar rad absorbed by ground (w/m2)
REAL , INTENT(OUT) :: ALBEDO !surface albedo [-]
REAL , INTENT(OUT) :: QSNBOT !snowmelt [mm/s]
REAL , INTENT(OUT) :: QSNBOT !total liquid water (snowmelt + rain through pack)out of snowpack bottom [mm/s]
REAL , INTENT(OUT) :: PONDING!surface ponding [mm]
REAL , INTENT(OUT) :: PONDING1!surface ponding [mm]
REAL , INTENT(OUT) :: PONDING2!surface ponding [mm]
Expand All @@ -209,7 +209,7 @@ SUBROUTINE NOAHMP_GLACIER (&
REAL :: QDEW !ground surface dew rate [mm/s]
REAL :: QVAP !ground surface evap. rate [mm/s]
REAL :: LATHEA !latent heat [j/kg]
REAL :: QMELT !internal pack melt
REAL, INTENT(OUT) :: QMELT !internal pack melt due to phase change [mm/s]
REAL :: SWDOWN !downward solar [w/m2]
REAL :: BEG_WB !beginning water for error check
REAL :: ZBOT = -8.0
Expand Down Expand Up @@ -411,7 +411,7 @@ SUBROUTINE ENERGY_GLACIER (NSNOW ,NSOIL ,ISNOW ,DT ,QSNOW ,RHOAIR , & !i
REAL , DIMENSION(-NSNOW+1: 0), INTENT(OUT) :: SNICEV !partial volume ice [m3/m3]
REAL , DIMENSION(-NSNOW+1: 0), INTENT(OUT) :: SNLIQV !partial volume liq. water [m3/m3]
REAL , DIMENSION(-NSNOW+1: 0), INTENT(OUT) :: EPORE !effective porosity [m3/m3]
REAL , INTENT(OUT) :: QMELT !snowmelt [mm/s]
REAL , INTENT(OUT) :: QMELT !snowmelt due to phase change [mm/s]
REAL , INTENT(OUT) :: PONDING!pounding at ground [mm]
REAL , INTENT(OUT) :: SAG !solar rad. absorbed by ground (w/m2)
REAL , INTENT(OUT) :: FSA !tot. absorbed solar radiation (w/m2)
Expand Down Expand Up @@ -2036,7 +2036,7 @@ SUBROUTINE WATER_GLACIER (NSNOW ,NSOIL ,IMELT ,DT ,PRCP ,SFCTMP , & !in
REAL, INTENT(OUT) :: QSNOW !snow at ground srf (mm/s) [+]
REAL, INTENT(OUT) :: PONDING1
REAL, INTENT(OUT) :: PONDING2
REAL, INTENT(OUT) :: QSNBOT !melting water out of snow bottom [mm/s]
REAL, INTENT(OUT) :: QSNBOT !total liquid water (snowmelt + rain through pack)out of snowpack bottom [mm/s]
REAL, INTENT(OUT) :: FPICE !precipitation frozen fraction

! local
Expand Down Expand Up @@ -2204,7 +2204,7 @@ SUBROUTINE SNOWWATER_GLACIER (NSNOW ,NSOIL ,IMELT ,DT ,SFCTMP , & !in
REAL , INTENT(INOUT) :: FSH !total sensible heat (w/m2) [+ to atm]

! output
REAL, INTENT(OUT) :: QSNBOT !melting water out of snow bottom [mm/s]
REAL, INTENT(OUT) :: QSNBOT !total liquid water (snowmelt + rain through pack)out of snowpack bottom [mm/s]
REAL, INTENT(OUT) :: SNOFLOW!glacier flow [mm]
REAL, INTENT(OUT) :: PONDING1
REAL, INTENT(OUT) :: PONDING2
Expand Down Expand Up @@ -2829,7 +2829,7 @@ SUBROUTINE SNOWH2O_GLACIER (NSNOW ,NSOIL ,DT ,QSNFRO ,QSNSUB , & !in

! output

REAL, INTENT(OUT) :: QSNBOT !melting water out of snow bottom [mm/s]
REAL, INTENT(OUT) :: QSNBOT !total liquid water (snowmelt + rain through pack)out of snowpack bottom [mm/s]

! input and output

Expand Down
16 changes: 8 additions & 8 deletions src/module_sf_noahmplsm.F
Original file line number Diff line number Diff line change
Expand Up @@ -485,7 +485,7 @@ SUBROUTINE NOAHMP_SFLX (parameters, &
PAHG , PAHB , PAH , LAISUN , LAISHA , RB , & ! OUT
QINTS , QINTR , QDRIPS , QDRIPR , QTHROS , QTHROR , & ! OUT :
QSNSUB , QSNFRO , QSUBC , QFROC , QFRZC , QMELTC , & ! OUT :
QEVAC , QDEWC , & ! OUT
QEVAC , QDEWC , QMELT , & ! OUT
RAIN , SNOW , ACC_SSOIL, ACC_QINSUR, ACC_QSEVA , & ! OUT
ACC_ETRANI, HCPCT , EFLXB , CANHS , & ! OUT :
ACC_DWATER, ACC_PRCP, ACC_ECAN, ACC_ETRAN, ACC_EDIR & ! INOUT
Expand Down Expand Up @@ -622,7 +622,7 @@ SUBROUTINE NOAHMP_SFLX (parameters, &
REAL , INTENT(OUT) :: FVEG !green vegetation fraction [0.0-1.0]
REAL , INTENT(OUT) :: ALBEDO !surface albedo [-]
REAL :: ERRWAT !water error [kg m{-2}]
REAL , INTENT(OUT) :: QSNBOT !snowmelt out bottom of pack [mm/s]
REAL , INTENT(OUT) :: QSNBOT !total liquid water (snowmelt + rain through pack)out of snowpack bottom [mm/s]
REAL , INTENT(OUT) :: PONDING!surface ponding [mm]
REAL , INTENT(OUT) :: PONDING1!surface ponding [mm]
REAL , INTENT(OUT) :: PONDING2!surface ponding [mm]
Expand Down Expand Up @@ -680,7 +680,7 @@ SUBROUTINE NOAHMP_SFLX (parameters, &
REAL :: QVAP !ground surface evap. rate [mm/s]
REAL :: LATHEA !latent heat [j/kg]
REAL :: SWDOWN !downward solar [w/m2]
REAL :: QMELT !snowmelt [mm/s]
REAL,INTENT(OUT) :: QMELT !snowmelt due to phase change [mm/s]
REAL :: BEG_WB !water storage at begin of a step [mm]
REAL,INTENT(OUT) :: IRC !canopy net LW rad. [w/m2] [+ to atm]
REAL,INTENT(OUT) :: IRG !ground net LW rad. [w/m2] [+ to atm]
Expand Down Expand Up @@ -5658,7 +5658,7 @@ SUBROUTINE PHASECHANGE (parameters,NSNOW ,NSOIL ,ISNOW ,DT ,FACT ,
SUPERCOOL(J) = 0.0
END DO

DO J = ISNOW+1,0 ! all layers
DO J = ISNOW+1,0 ! snow layers
MICE(J) = SNICE(J)
MLIQ(J) = SNLIQ(J)
END DO
Expand Down Expand Up @@ -5699,7 +5699,7 @@ SUBROUTINE PHASECHANGE (parameters,NSNOW ,NSOIL ,ISNOW ,DT ,FACT ,
IF (MICE(J) > 0.0 .AND. STC(J) >= TFRZ) THEN !melting
IMELT(J) = 1
ENDIF
IF (MLIQ(J) > SUPERCOOL(J) .AND. STC(J) < TFRZ) THEN
IF (MLIQ(J) > SUPERCOOL(J) .AND. STC(J) < TFRZ) THEN !refreezing
IMELT(J) = 2
ENDIF

Expand Down Expand Up @@ -6052,7 +6052,7 @@ SUBROUTINE WATER (parameters,VEGTYP ,NSNOW ,NSOIL ,IMELT ,DT ,UU , &
REAL, INTENT(OUT) :: QDIS !groundwater discharge [mm/s]
REAL, INTENT(OUT) :: PONDING1
REAL, INTENT(OUT) :: PONDING2
REAL, INTENT(OUT) :: QSNBOT !melting water out of snow bottom [mm/s]
REAL, INTENT(OUT) :: QSNBOT !total liquid water (snowmelt + rain through pack)out of snowpack bottom [mm/s]
REAL , INTENT(IN) :: LATHEAV !latent heat vap./sublimation (j/kg)
REAL , INTENT(IN) :: LATHEAG !latent heat vap./sublimation (j/kg)
LOGICAL , INTENT(IN) :: FROZEN_GROUND ! used to define latent heat pathway
Expand Down Expand Up @@ -6433,7 +6433,7 @@ SUBROUTINE SNOWWATER (parameters,NSNOW ,NSOIL ,IMELT ,DT ,ZSOIL , & !in
REAL, DIMENSION(-NSNOW+1:NSOIL), INTENT(INOUT) :: DZSNSO !snow/soil layer thickness [m]

! output
REAL, INTENT(OUT) :: QSNBOT !melting water out of snow bottom [mm/s]
REAL, INTENT(OUT) :: QSNBOT !total liquid water (snowmelt + rain through pack)out of snowpack bottom [mm/s]
REAL, INTENT(OUT) :: SNOFLOW!glacier flow [mm]
REAL, INTENT(OUT) :: PONDING1
REAL, INTENT(OUT) :: PONDING2
Expand Down Expand Up @@ -7106,7 +7106,7 @@ SUBROUTINE SNOWH2O (parameters,NSNOW ,NSOIL ,DT ,QSNFRO ,QSNSUB , & !in

! output

REAL, INTENT(OUT) :: QSNBOT !melting water out of snow bottom [mm/s]
REAL, INTENT(OUT) :: QSNBOT !total liquid water (snowmelt + rain through pack)out of snowpack bottom [mm/s]

! input and output

Expand Down