diff --git a/src/core_atmosphere/Registry.xml b/src/core_atmosphere/Registry.xml index 425e0349d1..2e0c1770cd 100644 --- a/src/core_atmosphere/Registry.xml +++ b/src/core_atmosphere/Registry.xml @@ -2905,7 +2905,7 @@ packages="sfclayer"/> + description="2-meter water vapor mixing ratio"/> diff --git a/src/core_atmosphere/physics/mpas_atmphys_vars.F b/src/core_atmosphere/physics/mpas_atmphys_vars.F index 134009f537..9b545e267e 100644 --- a/src/core_atmosphere/physics/mpas_atmphys_vars.F +++ b/src/core_atmosphere/physics/mpas_atmphys_vars.F @@ -574,10 +574,10 @@ module mpas_atmphys_vars pblh_p, &!PBL height [m] psih_p, &!similarity theory for heat [-] psim_p, &!similarity theory for momentum [-] - q2_p, &!specific humidity at 2m [kg/kg] + q2_p, &!water vapor mixing ratio at 2m [kg/kg] qfx_p, &!upward moisture flux at the surface [kg/m2/s] - qgh_p, &! - qsfc_p, &!specific humidity at lower boundary [kg/kg] + qgh_p, &!lowest level saturation mixing ratio [kg/kg] + qsfc_p, &!mixing ratio at lower boundary [kg/kg] regime_p, &!flag indicating PBL regime (stable_p,unstable_p,etc...) [-] rmol_p, &!1 / Monin Ob length [-] t2m_p, &!temperature at 2m [K] diff --git a/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/EnergyVarInTransferMod.F90 b/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/EnergyVarInTransferMod.F90 index f0a96a5795..e1ee310989 100644 --- a/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/EnergyVarInTransferMod.F90 +++ b/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/EnergyVarInTransferMod.F90 @@ -46,7 +46,7 @@ subroutine EnergyVarInTransfer(noahmp, NoahmpIO) ! energy state variables noahmp%energy%state%LeafAreaIndex = NoahmpIO%LAI (I) noahmp%energy%state%StemAreaIndex = NoahmpIO%XSAIXY (I) - noahmp%energy%state%SpecHumiditySfcMean = NoahmpIO%QSFC (I) + noahmp%energy%state%SpecHumiditySfcMean = NoahmpIO%QSFC (I) / (1.0+NoahmpIO%QSFC(I)) noahmp%energy%state%TemperatureGrd = NoahmpIO%TGXY (I) noahmp%energy%state%TemperatureCanopy = NoahmpIO%TVXY (I) noahmp%energy%state%SnowAgeNondim = NoahmpIO%TAUSSXY (I) diff --git a/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/EnergyVarOutTransferMod.F90 b/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/EnergyVarOutTransferMod.F90 index a150bf9b6e..75a6661812 100644 --- a/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/EnergyVarOutTransferMod.F90 +++ b/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/EnergyVarOutTransferMod.F90 @@ -104,7 +104,7 @@ subroutine EnergyVarOutTransfer(noahmp, NoahmpIO) ! energy state variables NoahmpIO%TSK (I) = noahmp%energy%state%TemperatureRadSfc NoahmpIO%EMISS (I) = noahmp%energy%state%EmissivitySfc - NoahmpIO%QSFC (I) = noahmp%energy%state%SpecHumiditySfcMean + NoahmpIO%QSFC (I) = noahmp%energy%state%SpecHumiditySfcMean/(1.0-noahmp%energy%state%SpecHumiditySfcMean) NoahmpIO%TVXY (I) = noahmp%energy%state%TemperatureCanopy NoahmpIO%TGXY (I) = noahmp%energy%state%TemperatureGrd NoahmpIO%EAHXY (I) = noahmp%energy%state%PressureVaporCanAir diff --git a/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarFinalizeMod.F90 b/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarFinalizeMod.F90 index 66458d638e..d3c275c1be 100644 --- a/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarFinalizeMod.F90 +++ b/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarFinalizeMod.F90 @@ -131,7 +131,7 @@ subroutine NoahmpIOVarFinalizeDefault(NoahmpIO) if ( allocated (NoahmpIO%acsnom) ) deallocate ( NoahmpIO%acsnom ) ! accumulated snow melt leaving pack if ( allocated (NoahmpIO%acsnow) ) deallocate ( NoahmpIO%acsnow ) ! accumulated snow on grid if ( allocated (NoahmpIO%emiss) ) deallocate ( NoahmpIO%emiss ) ! surface bulk emissivity - if ( allocated (NoahmpIO%qsfc) ) deallocate ( NoahmpIO%qsfc ) ! bulk surface specific humidity + if ( allocated (NoahmpIO%qsfc) ) deallocate ( NoahmpIO%qsfc ) ! bulk surface mixing ratio if ( allocated (NoahmpIO%smoiseq) ) deallocate ( NoahmpIO%smoiseq ) ! equilibrium volumetric soil moisture [m3/m3] if ( allocated (NoahmpIO%smois) ) deallocate ( NoahmpIO%smois ) ! volumetric soil moisture [m3/m3] if ( allocated (NoahmpIO%sh2o) ) deallocate ( NoahmpIO%sh2o ) ! volumetric liquid soil moisture [m3/m3] diff --git a/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarInitMod.F90 b/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarInitMod.F90 index 4f3c3f4f2c..2eeea6dede 100644 --- a/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarInitMod.F90 +++ b/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarInitMod.F90 @@ -135,7 +135,7 @@ subroutine NoahmpIOVarInitDefault(NoahmpIO) if ( .not. allocated (NoahmpIO%acsnom) ) allocate ( NoahmpIO%acsnom (its:ite ) ) ! accumulated snow melt leaving pack if ( .not. allocated (NoahmpIO%acsnow) ) allocate ( NoahmpIO%acsnow (its:ite ) ) ! accumulated snow on grid if ( .not. allocated (NoahmpIO%emiss) ) allocate ( NoahmpIO%emiss (its:ite ) ) ! surface bulk emissivity - if ( .not. allocated (NoahmpIO%qsfc) ) allocate ( NoahmpIO%qsfc (its:ite ) ) ! bulk surface specific humidity + if ( .not. allocated (NoahmpIO%qsfc) ) allocate ( NoahmpIO%qsfc (its:ite ) ) ! bulk surface mixing ratio if ( .not. allocated (NoahmpIO%smoiseq) ) allocate ( NoahmpIO%smoiseq (its:ite,1:nsoil) ) ! equilibrium volumetric soil moisture [m3/m3] if ( .not. allocated (NoahmpIO%smois) ) allocate ( NoahmpIO%smois (its:ite,1:nsoil) ) ! volumetric soil moisture [m3/m3] if ( .not. allocated (NoahmpIO%sh2o) ) allocate ( NoahmpIO%sh2o (its:ite,1:nsoil) ) ! volumetric liquid soil moisture [m3/m3] diff --git a/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarType.F90 b/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarType.F90 index 05a29d7035..7bb5327a63 100644 --- a/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarType.F90 +++ b/src/core_atmosphere/physics/physics_noahmp/drivers/mpas/NoahmpIOVarType.F90 @@ -174,7 +174,7 @@ module NoahmpIOVarType real(kind=kind_noahmp), allocatable, dimension(:) :: acsnom ! accumulated snow melt leaving pack real(kind=kind_noahmp), allocatable, dimension(:) :: acsnow ! accumulated snow on grid real(kind=kind_noahmp), allocatable, dimension(:) :: emiss ! surface bulk emissivity - real(kind=kind_noahmp), allocatable, dimension(:) :: qsfc ! bulk surface specific humidity + real(kind=kind_noahmp), allocatable, dimension(:) :: qsfc ! bulk surface mixing ratio ! INOUT (with no Noah LSM equivalent) (as defined in WRF) integer, allocatable, dimension(:) :: isnowxy ! actual no. of snow layers diff --git a/src/core_init_atmosphere/Registry.xml b/src/core_init_atmosphere/Registry.xml index 160774e61c..039a668c00 100644 --- a/src/core_init_atmosphere/Registry.xml +++ b/src/core_init_atmosphere/Registry.xml @@ -1381,7 +1381,7 @@ packages="met_stage_out"/>