CLASSIC
Canadian Land Surface Scheme including Biogeochemical Cycles
|
Initializes subarea variables for surface water budget calculations, and performs preliminary calculations for diagnostic variables. More...
Functions/Subroutines | |
subroutine | watercalcprep (THLQCO, THLQGO, THLQCS, THLQGS, THICCO, THICGO, THICCS, THICGS, HCPCO, HCPGO, HCPCS, HCPGS, GRKSC, GRKSG, GRKSCS, GRKSGS, SPCC, SPCG, SPCCS, SPCGS, TSPCC, TSPCG, TSPCCS, TSPCGS, RPCC, RPCG, RPCCS, RPCGS, TRPCC, TRPCG, TRPCCS, TRPCGS, EVPIC, EVPIG, EVPICS, EVPIGS, ZPONDC, ZPONDG, ZPNDCS, ZPNDGS, XSNOWC, XSNOWG, XSNOCS, XSNOGS, ZSNOWC, ZSNOWG, ZSNOCS, ZSNOGS, ALBSC, ALBSG, ALBSCS, ALBSGS, RHOSC, RHOSG, HCPSC, HCPSG, HCPSCS, HCPSGS, RUNFC, RUNFG, RUNFCS, RUNFGS, TRUNFC, TRUNFG, TRNFCS, TRNFGS, TBASC, TBASG, TBASCS, TBASGS, GFLXC, GFLXG, GFLXCS, GFLXGS, SUBLC, SUBLCS, WLOSTC, WLOSTG, WLSTCS, WLSTGS, RAC, RACS, SNC, SNCS, TSNOWC, TSNOWG, OVRFLW, SUBFLW, BASFLW, TOVRFL, TSUBFL, TBASFL, PCFC, PCLC, PCPN, PCPG, QFCF, QFCL, QFN, QFG, QFC, HMFG, ROVG, ROFC, ROFN, TRUNOF, THLIQX, THICEX, THLDUM, THIDUM, DT, RDUMMY, ZERO, IZERO, DELZZ, FC, FG, FCS, FGS, THLIQC, THLIQG, THICEC, THICEG, HCPC, HCPG, TBARC, TBARG, TBARCS, TBARGS, TBASE, TSURX, FSVF, FSVFS, RAICAN, SNOCAN, RAICNS, SNOCNS, EVAPC, EVAPCG, EVAPG, EVAPCS, EVPCSG, EVAPGS, RPCP, TRPCP, SPCP, TSPCP, RHOSNI, ZPOND, ZSNOW, ALBSNO, WSNOCS, WSNOGS, RHOSCS, RHOSGS, THPOR, HCPS, GRKSAT, ISAND, DELZW, DELZ, ILG, IL1, IL2, JL, IG, IGP1, NLANDCS, NLANDGS, NLANDC, NLANDG, RADD, SADD) |
Initializes subarea variables for surface water budget calculations, and performs preliminary calculations for diagnostic variables.
subroutine watercalcprep | ( | real, dimension(ilg,ig), intent(out) | THLQCO, |
real, dimension(ilg,ig), intent(out) | THLQGO, | ||
real, dimension(ilg,ig), intent(out) | THLQCS, | ||
real, dimension(ilg,ig), intent(out) | THLQGS, | ||
real, dimension(ilg,ig), intent(out) | THICCO, | ||
real, dimension(ilg,ig), intent(out) | THICGO, | ||
real, dimension(ilg,ig), intent(out) | THICCS, | ||
real, dimension(ilg,ig), intent(out) | THICGS, | ||
real, dimension (ilg,ig), intent(out) | HCPCO, | ||
real, dimension (ilg,ig), intent(out) | HCPGO, | ||
real, dimension (ilg,ig), intent(out) | HCPCS, | ||
real, dimension (ilg,ig), intent(out) | HCPGS, | ||
real, dimension (ilg,ig), intent(out) | GRKSC, | ||
real, dimension (ilg,ig), intent(out) | GRKSG, | ||
real, dimension(ilg,ig), intent(out) | GRKSCS, | ||
real, dimension(ilg,ig), intent(out) | GRKSGS, | ||
real, dimension (ilg), intent(out) | SPCC, | ||
real, dimension (ilg), intent(out) | SPCG, | ||
real, dimension (ilg), intent(out) | SPCCS, | ||
real, dimension (ilg), intent(out) | SPCGS, | ||
real, dimension (ilg), intent(out) | TSPCC, | ||
real, dimension (ilg), intent(out) | TSPCG, | ||
real, dimension(ilg), intent(out) | TSPCCS, | ||
real, dimension(ilg), intent(out) | TSPCGS, | ||
real, dimension (ilg), intent(out) | RPCC, | ||
real, dimension (ilg), intent(out) | RPCG, | ||
real, dimension (ilg), intent(out) | RPCCS, | ||
real, dimension (ilg), intent(out) | RPCGS, | ||
real, dimension (ilg), intent(out) | TRPCC, | ||
real, dimension (ilg), intent(out) | TRPCG, | ||
real, dimension(ilg), intent(out) | TRPCCS, | ||
real, dimension(ilg), intent(out) | TRPCGS, | ||
real, dimension (ilg), intent(out) | EVPIC, | ||
real, dimension (ilg), intent(out) | EVPIG, | ||
real, dimension(ilg), intent(out) | EVPICS, | ||
real, dimension(ilg), intent(out) | EVPIGS, | ||
real, dimension(ilg), intent(out) | ZPONDC, | ||
real, dimension(ilg), intent(out) | ZPONDG, | ||
real, dimension(ilg), intent(out) | ZPNDCS, | ||
real, dimension(ilg), intent(out) | ZPNDGS, | ||
real, dimension(ilg), intent(out) | XSNOWC, | ||
real, dimension(ilg), intent(out) | XSNOWG, | ||
real, dimension(ilg), intent(out) | XSNOCS, | ||
real, dimension(ilg), intent(out) | XSNOGS, | ||
real, dimension(ilg), intent(out) | ZSNOWC, | ||
real, dimension(ilg), intent(out) | ZSNOWG, | ||
real, dimension(ilg), intent(out) | ZSNOCS, | ||
real, dimension(ilg), intent(out) | ZSNOGS, | ||
real, dimension (ilg), intent(out) | ALBSC, | ||
real, dimension (ilg), intent(out) | ALBSG, | ||
real, dimension(ilg), intent(out) | ALBSCS, | ||
real, dimension(ilg), intent(out) | ALBSGS, | ||
real, dimension (ilg), intent(out) | RHOSC, | ||
real, dimension (ilg), intent(out) | RHOSG, | ||
real, dimension (ilg), intent(out) | HCPSC, | ||
real, dimension (ilg), intent(out) | HCPSG, | ||
real, dimension(ilg), intent(out) | HCPSCS, | ||
real, dimension(ilg), intent(out) | HCPSGS, | ||
real, dimension (ilg), intent(out) | RUNFC, | ||
real, dimension (ilg), intent(out) | RUNFG, | ||
real, dimension(ilg), intent(out) | RUNFCS, | ||
real, dimension(ilg), intent(out) | RUNFGS, | ||
real, dimension(ilg), intent(out) | TRUNFC, | ||
real, dimension(ilg), intent(out) | TRUNFG, | ||
real, dimension(ilg), intent(out) | TRNFCS, | ||
real, dimension(ilg), intent(out) | TRNFGS, | ||
real, dimension (ilg), intent(out) | TBASC, | ||
real, dimension (ilg), intent(out) | TBASG, | ||
real, dimension(ilg), intent(out) | TBASCS, | ||
real, dimension(ilg), intent(out) | TBASGS, | ||
real, dimension (ilg,ig), intent(out) | GFLXC, | ||
real, dimension (ilg,ig), intent(out) | GFLXG, | ||
real, dimension(ilg,ig), intent(out) | GFLXCS, | ||
real, dimension(ilg,ig), intent(out) | GFLXGS, | ||
real, dimension (ilg), intent(inout) | SUBLC, | ||
real, dimension(ilg), intent(inout) | SUBLCS, | ||
real, dimension(ilg), intent(out) | WLOSTC, | ||
real, dimension(ilg), intent(out) | WLOSTG, | ||
real, dimension(ilg), intent(out) | WLSTCS, | ||
real, dimension(ilg), intent(out) | WLSTGS, | ||
real, dimension (ilg), intent(out) | RAC, | ||
real, dimension (ilg), intent(out) | RACS, | ||
real, dimension (ilg), intent(out) | SNC, | ||
real, dimension (ilg), intent(out) | SNCS, | ||
real, dimension(ilg), intent(out) | TSNOWC, | ||
real, dimension(ilg), intent(out) | TSNOWG, | ||
real, dimension(ilg), intent(out) | OVRFLW, | ||
real, dimension(ilg), intent(out) | SUBFLW, | ||
real, dimension(ilg), intent(out) | BASFLW, | ||
real, dimension(ilg), intent(out) | TOVRFL, | ||
real, dimension(ilg), intent(out) | TSUBFL, | ||
real, dimension(ilg), intent(out) | TBASFL, | ||
real, dimension (ilg), intent(inout) | PCFC, | ||
real, dimension (ilg), intent(inout) | PCLC, | ||
real, dimension (ilg), intent(inout) | PCPN, | ||
real, dimension (ilg), intent(inout) | PCPG, | ||
real, dimension (ilg), intent(inout) | QFCF, | ||
real, dimension (ilg), intent(inout) | QFCL, | ||
real, dimension (ilg), intent(inout) | QFN, | ||
real, dimension (ilg), intent(inout) | QFG, | ||
real, dimension (ilg,ig), intent(out) | QFC, | ||
real, dimension (ilg,ig), intent(out) | HMFG, | ||
real, dimension (ilg), intent(out) | ROVG, | ||
real, dimension (ilg), intent(out) | ROFC, | ||
real, dimension (ilg), intent(out) | ROFN, | ||
real, dimension(ilg), intent(out) | TRUNOF, | ||
real, dimension(ilg,igp1), intent(out) | THLIQX, | ||
real, dimension(ilg,igp1), intent(out) | THICEX, | ||
real, dimension(ilg,ig), intent(out) | THLDUM, | ||
real, dimension(ilg,ig), intent(out) | THIDUM, | ||
real, dimension (ilg), intent(out) | DT, | ||
real, dimension(ilg), intent(out) | RDUMMY, | ||
real, dimension (ilg), intent(out) | ZERO, | ||
integer, dimension (ilg), intent(out) | IZERO, | ||
real, dimension (ilg,ig), intent(out) | DELZZ, | ||
real, dimension (ilg), intent(in) | FC, | ||
real, dimension (ilg), intent(in) | FG, | ||
real, dimension (ilg), intent(in) | FCS, | ||
real, dimension (ilg), intent(in) | FGS, | ||
real, dimension(ilg,ig), intent(in) | THLIQC, | ||
real, dimension(ilg,ig), intent(in) | THLIQG, | ||
real, dimension(ilg,ig), intent(in) | THICEC, | ||
real, dimension(ilg,ig), intent(in) | THICEG, | ||
real, dimension (ilg,ig), intent(in) | HCPC, | ||
real, dimension (ilg,ig), intent(in) | HCPG, | ||
real, dimension (ilg,ig), intent(in) | TBARC, | ||
real, dimension (ilg,ig), intent(in) | TBARG, | ||
real, dimension(ilg,ig), intent(in) | TBARCS, | ||
real, dimension(ilg,ig), intent(in) | TBARGS, | ||
real, dimension (ilg), intent(in) | TBASE, | ||
real, dimension(ilg,4), intent(in) | TSURX, | ||
real, dimension (ilg), intent(in) | FSVF, | ||
real, dimension (ilg), intent(in) | FSVFS, | ||
real, dimension(ilg), intent(in) | RAICAN, | ||
real, dimension(ilg), intent(in) | SNOCAN, | ||
real, dimension(ilg), intent(in) | RAICNS, | ||
real, dimension(ilg), intent(in) | SNOCNS, | ||
real, dimension (ilg), intent(inout) | EVAPC, | ||
real, dimension(ilg), intent(in) | EVAPCG, | ||
real, dimension (ilg), intent(inout) | EVAPG, | ||
real, dimension(ilg), intent(inout) | EVAPCS, | ||
real, dimension(ilg), intent(in) | EVPCSG, | ||
real, dimension(ilg), intent(inout) | EVAPGS, | ||
real, dimension (ilg), intent(in) | RPCP, | ||
real, dimension (ilg), intent(in) | TRPCP, | ||
real, dimension (ilg), intent(in) | SPCP, | ||
real, dimension (ilg), intent(in) | TSPCP, | ||
real, dimension(ilg), intent(in) | RHOSNI, | ||
real, dimension (ilg), intent(in) | ZPOND, | ||
real, dimension (ilg), intent(in) | ZSNOW, | ||
real, dimension(ilg), intent(in) | ALBSNO, | ||
real, dimension(ilg), intent(in) | WSNOCS, | ||
real, dimension(ilg), intent(in) | WSNOGS, | ||
real, dimension(ilg), intent(in) | RHOSCS, | ||
real, dimension(ilg), intent(in) | RHOSGS, | ||
real, dimension (ilg,ig), intent(in) | THPOR, | ||
real, dimension (ilg,ig), intent(in) | HCPS, | ||
real, dimension(ilg,ig), intent(in) | GRKSAT, | ||
integer, dimension (ilg,ig), intent(in) | ISAND, | ||
real, dimension (ilg,ig), intent(in) | DELZW, | ||
real, dimension (ig), intent(in) | DELZ, | ||
integer, intent(in) | ILG, | ||
integer, intent(in) | IL1, | ||
integer, intent(in) | IL2, | ||
integer, intent(in) | JL, | ||
integer, intent(in) | IG, | ||
integer, intent(in) | IGP1, | ||
integer, intent(in) | NLANDCS, | ||
integer, intent(in) | NLANDGS, | ||
integer, intent(in) | NLANDC, | ||
integer, intent(in) | NLANDG, | ||
real, dimension(ilg), intent(inout) | RADD, | ||
real, dimension(ilg), intent(inout) | SADD | ||
) |
[out] | thlqco | Subarea volumetric liquid water content of soil layers \([m^3 m^{-3}]\) |
[out] | thlqgo | Subarea volumetric liquid water content of soil layers \([m^3 m^{-3}]\) |
[out] | thlqcs | Subarea volumetric liquid water content of soil layers \([m^3 m^{-3}]\) |
[out] | thlqgs | Subarea volumetric liquid water content of soil layers \([m^3 m^{-3}]\) |
[out] | thicco | Subarea volumetric frozen water content of soil layers \([m^3 m^{-3}] (\theta_i)\) |
[out] | thicgo | Subarea volumetric frozen water content of soil layers \([m^3 m^{-3}] (\theta_i)\) |
[out] | thiccs | Subarea volumetric frozen water content of soil layers \([m^3 m^{-3}] (\theta_i)\) |
[out] | thicgs | Subarea volumetric frozen water content of soil layers \([m^3 m^{-3}] (\theta_i)\) |
[out] | hcpco | Subarea heat capacity of soil layers \([J m^{-3} K^{-1}]\) |
[out] | hcpgo | Subarea heat capacity of soil layers \([J m^{-3} K^{-1}]\) |
[out] | hcpcs | Subarea heat capacity of soil layers \([J m^{-3} K^{-1}]\) |
[out] | hcpgs | Subarea heat capacity of soil layers \([J m^{-3} K^{-1}]\) |
[out] | grksc | Subarea saturated hydraulic conductivity \([m s^{-1}] (K_{sat})\) |
[out] | grksg | Subarea saturated hydraulic conductivity \([m s^{-1}] (K_{sat})\) |
[out] | grkscs | Subarea saturated hydraulic conductivity \([m s^{-1}] (K_{sat})\) |
[out] | grksgs | Subarea saturated hydraulic conductivity \([m s^{-1}] (K_{sat})\) |
[out] | gflxc | Subarea heat flux between soil layers \([W m^{-2}]\) |
[out] | gflxg | Subarea heat flux between soil layers \([W m^{-2}]\) |
[out] | gflxcs | Subarea heat flux between soil layers \([W m^{-2}]\) |
[out] | gflxgs | Subarea heat flux between soil layers \([W m^{-2}]\) |
[out] | thldum | Internal waterBudgetDriver dummy variable for soil frozen water \([m^3 m^{-3}]\) |
[out] | thidum | Internal waterBudgetDriver dummy variable for soil frozen water \([m^3 m^{-3}]\) |
[out] | qfc | Water removed from soil layers by transpiration \([kg m^{-2} s^{-1}]\) |
[out] | hmfg | Energy associated with phase change of water in soil layers \([W m^{-2}]\) |
[out] | thliqx | Internal waterBudgetDriver work array for soil frozen water \([m^3 m^{-3}]\) |
[out] | thicex | Internal waterBudgetDriver work array for soil frozen water \([m^3 m^{-3}]\) |
[out] | spcc | Subarea snowfall rate \([m s^{-1}]\) |
[out] | spcg | Subarea snowfall rate \([m s^{-1}]\) |
[out] | spccs | Subarea snowfall rate \([m s^{-1}]\) |
[out] | spcgs | Subarea snowfall rate \([m s^{-1}]\) |
[out] | tspcc | Subarea snowfall temperature [K/C] |
[out] | tspcg | Subarea snowfall temperature [K/C] |
[out] | tspccs | Subarea snowfall temperature [K/C] |
[out] | tspcgs | Subarea snowfall temperature [K/C] |
[out] | rpcc | Subarea rainfall rate \([m s^{-1}]\) |
[out] | rpcg | Subarea rainfall rate \([m s^{-1}]\) |
[out] | rpccs | Subarea rainfall rate \([m s^{-1}]\) |
[out] | rpcgs | Subarea rainfall rate \([m s^{-1}]\) |
[out] | trpcc | Subarea rainfall temperature [K/C] |
[out] | trpcg | Subarea rainfall temperature [K/C] |
[out] | trpccs | Subarea rainfall temperature [K/C] |
[out] | trpcgs | Subarea rainfall temperature [K/C] |
[out] | evpic | Subarea evapotranspiration rate going into waterBudgetDriver \([m s^{-1}]\) |
[out] | evpig | Subarea evapotranspiration rate going into waterBudgetDriver \([m s^{-1}]\) |
[out] | evpics | Subarea evapotranspiration rate going into waterBudgetDriver \([m s^{-1}]\) |
[out] | evpigs | Subarea evapotranspiration rate going into waterBudgetDriver \([m s^{-1}]\) |
[out] | zpondc | Subarea depth of surface ponded water [m] |
[out] | zpondg | Subarea depth of surface ponded water [m] |
[out] | zpndcs | Subarea depth of surface ponded water [m] |
[out] | zpndgs | Subarea depth of surface ponded water [m] |
[out] | xsnowc | Subarea fractional snow coverage [ ] |
[out] | xsnowg | Subarea fractional snow coverage [ ] |
[out] | xsnocs | Subarea fractional snow coverage [ ] |
[out] | xsnogs | Subarea fractional snow coverage [ ] |
[out] | zsnowc | Subarea depth of snow pack |
[out] | zsnowg | Subarea depth of snow pack |
[out] | zsnocs | Subarea depth of snow pack |
[out] | zsnogs | Subarea depth of snow pack |
[out] | albsc | Subarea snow albedo [ ] |
[out] | albsg | Subarea snow albedo [ ] |
[out] | albscs | Subarea snow albedo [ ] |
[out] | albsgs | Subarea snow albedo [ ] |
[out] | rhosc | Subarea snow density \([kg m^{-3}]\) |
[out] | rhosg | Subarea snow density \([kg m^{-3}]\) |
[out] | hcpsc | Subarea heat capacity of snow \([J m^{-3} K^{-1}] (C_s)\) |
[out] | hcpsg | Subarea heat capacity of snow \([J m^{-3} K^{-1}] (C_s)\) |
[out] | hcpscs | Subarea heat capacity of snow \([J m^{-3} K^{-1}] (C_s)\) |
[out] | hcpsgs | Subarea heat capacity of snow \([J m^{-3} K^{-1}] (C_s)\) |
[out] | runfc | Subarea total runoff [m] |
[out] | runfg | Subarea total runoff [m] |
[out] | runfcs | Subarea total runoff [m] |
[out] | runfgs | Subarea total runoff [m] |
[out] | trunfc | Subarea total runoff temperature [K] |
[out] | trunfg | Subarea total runoff temperature [K] |
[out] | trnfcs | Subarea total runoff temperature [K] |
[out] | trnfgs | Subarea total runoff temperature [K] |
[out] | tbasc | Subarea temperature of bedrock in third soil layer [C] |
[out] | tbasg | Subarea temperature of bedrock in third soil layer [C] |
[out] | tbascs | Subarea temperature of bedrock in third soil layer [C] |
[out] | tbasgs | Subarea temperature of bedrock in third soil layer [C] |
[in,out] | sublc | Subarea sublimation rate from vegetation \([m s^{-1}]\) |
[in,out] | sublcs | Subarea sublimation rate from vegetation \([m s^{-1}]\) |
[out] | wlostc | Subarea residual water not met by surface stores \([kg m^{-2}]\) |
[out] | wlostg | Subarea residual water not met by surface stores \([kg m^{-2}]\) |
[out] | wlstcs | Subarea residual water not met by surface stores \([kg m^{-2}]\) |
[out] | wlstgs | Subarea residual water not met by surface stores \([kg m^{-2}]\) |
[out] | rac | Subarea liquid water on canopy going into waterBudgetDriver \([kg m^{-2}]\) |
[out] | racs | Subarea liquid water on canopy going into waterBudgetDriver \([kg m^{-2}]\) |
[out] | snc | Subarea frozen water on canopy going into waterBudgetDriver \([kg m^{-2}]\) |
[out] | sncs | Subarea frozen water on canopy going into waterBudgetDriver \([kg m^{-2}]\) |
[out] | tsnowc | Subarea snowpack temperature [K] |
[out] | tsnowg | Subarea snowpack temperature [K] |
[out] | ovrflw | Overland flow from top of soil column [m] |
[out] | subflw | Interflow from sides of soil column [m] |
[out] | basflw | Base flow from bottom of soil column [m] |
[out] | tovrfl | Temperature of overland flow from top of soil column [K] |
[out] | tsubfl | Temperature of interflow from sides of soil column [K] |
[out] | tbasfl | Temperature of base flow from bottom of soil column [K] |
[in,out] | pcfc | Frozen precipitation intercepted by vegetation \([kg m^{-2} s^{-1}]\) |
[in,out] | pclc | Liquid precipitation intercepted by vegetation \([kg m^{-2} s^{-1}]\) |
[in,out] | pcpn | Precipitation incident on snow pack \([kg m^{-2} s^{-1}]\) |
[in,out] | pcpg | Precipitation incident on ground \([kg m^{-2} s^{-1}]\) |
[in,out] | qfcf | Sublimation from frozen water on vegetation \([kg m^{-2} s^{-1}]\) |
[in,out] | qfcl | Evaporation from liquid water on vegetation \([kg m^{-2} s^{-1}]\) |
[in,out] | qfn | Sublimation from snow pack \([kg m^{-2} s^{-1}]\) |
[in,out] | qfg | Evaporation from ground \([kg m^{-2} s^{-1}]\) |
[out] | rovg | Liquid/frozen water runoff from vegetation to ground surface \([kg m^{-2} s^{-1}]\) |
[out] | rofc | Liquid/frozen water runoff from vegetation \([kg m^{-2} s^{-1}]\) |
[out] | rofn | Liquid water runoff from snow pack \([kg m^{-2} s^{-1}]\) |
[out] | trunof | Temperature of total runoff [K] |
[out] | dt | Time stepping variable used in waterFlowInfiltrate/waterFlowNonInfiltrate [s] |
[out] | rdummy | Dummy variable |
[out] | zero | Zero vector used in several subroutines [ ] |
[out] | izero | Zero integer :: flag used in waterFlowInfiltrate |
[in] | fc | Subarea fractional coverage of modelled area [ ] |
[in] | fg | Subarea fractional coverage of modelled area [ ] |
[in] | fcs | Subarea fractional coverage of modelled area [ ] |
[in] | fgs | Subarea fractional coverage of modelled area [ ] |
[in] | fsvf | Sky view factor of ground under vegetation canopy [ ] |
[in] | fsvfs | Sky view factor of snow under vegetation canopy [ ] |
[in] | raican | Intercepted liquid water stored on canopy over ground \([kg m^{-2}]\) |
[in] | snocan | Intercepted frozen water stored on canopy over ground \([kg m^{-2}]\) |
[in] | raicns | Intercepted liquid water stored on canopy over snow \([kg m^{-2}]\) |
[in] | snocns | Intercepted frozen water stored on canopy over snow \([kg m^{-2}]\) |
[in,out] | evapc | Evaporation from vegetation over ground \([m s^{-1}]\) |
[in] | evapcg | Evaporation from ground under vegetation \([m s^{-1}]\) |
[in,out] | evapg | Evaporation from bare ground \([m s^{-1}]\) |
[in,out] | evapcs | Evaporation from vegetation over snow \([m s^{-1}]\) |
[in] | evpcsg | Evaporation from snow under vegetation \([m s^{-1}]\) |
[in,out] | evapgs | Evaporation from snow on bare ground \([m s^{-1}]\) |
[in] | rpcp | Rainfall rate over modelled area \([m s^{-1}]\) |
[in] | trpcp | Rainfall temperature over modelled area [C] |
[in] | spcp | Snowfall rate over modelled area \([m s^{-1}]\) |
[in] | tspcp | Snowfall temperature over modelled area [C] |
[in] | rhosni | Density of fresh snow \([kg m^{-3}]\) |
[in] | zpond | Depth of ponded water on surface [m] |
[in] | zsnow | Depth of snow pack \([m] (z_s)\) |
[in] | albsno | Albedo of snow [ ] |
[in] | wsnocs | Liquid water content of snow pack under vegetation \([kg m^{-2}] (w_s)\) |
[in] | wsnogs | Liquid water content of snow pack in bare areas \([kg m^{-2}] (w_s)\) |
[in] | rhoscs | Density of snow under vegetation \([kg m^{-3}] (\rho_s)\) |
[in] | rhosgs | Density of snow in bare areas \([kg m^{-3}] (\rho_s)\) |
[in] | tbase | Temperature of bedrock in third soil layer [K] |
[in] | tsurx | Ground surface temperature over subarea [K] |
[in] | thliqc | Liquid water content of soil layers under vegetation \([m^3 m^{-3}]\) |
[in] | thliqg | Liquid water content of soil layers in bare areas \([m^3 m^{-3}]\) |
[in] | thicec | Frozen water content of soil layers under vegetation \([m^3 m^{-3}]\) |
[in] | thiceg | Frozen water content of soil layers in bare areas \([m^3 m^{-3}]\) |
[in] | tbarc | Subarea temperatures of soil layers \([C] (T_g)\) |
[in] | tbarg | Subarea temperatures of soil layers \([C] (T_g)\) |
[in] | tbarcs | Subarea temperatures of soil layers \([C] (T_g)\) |
[in] | tbargs | Subarea temperatures of soil layers \([C] (T_g)\) |
[in] | hcpc | Heat capacity of soil layers under vegetation \([J m^{-3} K^{-1}]\) |
[in] | thpor | Pore volume in soil layer \([m^3 m^{-3}] (\theta_p)\) |
[in] | hcps | Heat capacity of soil material \([J m^{-3} K^{-1}]\) |
[in] | grksat | Saturated hydraulic conductivity of soil layers \([m s^{-1}]\) |
[out] | delzz | Soil layer depth variable used in soilWaterPhaseChg/waterUpdates [m] |
[in] | delzw | Permeable thickness of soil layer [m] |
[in] | delz | Overall thickness of soil layer [m] |
[in] | isand | Sand content flag |
In the first three loops, various subarea arrays and internal waterBudgetDriver variables are initialized.
At the end of the 100 loop, a preliminary calculation of the precipitation diagnostics over the four subareas is carried out, as follows:
The rainfall incident on the vegetation, PCLC, is summed over the vegetated subareas FC and FCS, minus the fraction that falls through the gaps in the canopy (denoted by the sky view factors FSVF and FSVFS respectively). The rainfall incident on the snowpack PCPN is the sum of the rainfall on the snow- covered bare area FGS, and that on the snow under the gaps in the canopy in subarea FCS. The rainfall incident on bare ground, PCPG, is the sum of the rainfall on the snow-free bare area FG, and that on the ground under the gaps in the canopy in subarea FC. The snowfall incident on the vegetation, PCFC, as in the case of rainfall, is summed over the vegetation subareas FC and FCS, minus the fraction that falls through the gaps in the canopy. The remaining amount is assigned to snowfall incident on the snow pack, PCPN.
In loops 200 to 550, each of the four subareas is addressed in turn. Additional variables are initialized, and an empirical correction is applied to the saturated hydraulic conductivity in each of the soil layers over the subarea, to account for the viscosity of water at the layer temperature (Dingman, 2002) [56] :
\(K_{sat}' = (1.7915 * 10^{-3}) K_{sat} / [(2.0319 * 10^{-4})+(1.5883 * 10^{-3}) exp(-T_g^{0.9}/22.0)]\)
Next, a preliminary calculation of the water vapour flux diagnostics for each subarea is carried out. Over the vegetated subareas, first the canopy evaporative flux is assigned to sublimation if there is snow present on the canopy (since it is assumed that any water present exists within or underneath the snow). Then, if the sublimation rate is upward, it is assigned to the diagnostic variable QFCF; if it is downward, the portion of the flux corresponding to the canopy-covered area is assigned to QFCF and that corresponding to the gap area to QFN. Similarly, if the evaporation rate is upward it is assigned to the diagnostic variable QFCL; if it is downward, the flux corresponding to the canopy-covered area is assigned to QFCL and that corresponding to the gap area to QFN over subarea FCS and to QFG over subarea FC. Over the non-vegetated subareas, the evaporation rates are assigned to QFN for subarea GS, and to QFG for subarea G.
For the purposes of the subsequent water balance calculations done in the other waterBudgetDriver subroutines, the subarea snowfall is lumped together with any simultaneously occurring sublimation, and the subarea rainfall with any simultaneously occurring evaporation. Depending on whether the sum of the snowfall and the sublimation, and the sum of the rainfall and the evaporation, are positive (downward) or negative (upward), corrections are applied to the appropriate diagnostic variables, and the snowfall/rainfall are set to the net flux if downward and the sublimation/evaporation are set to the net flux if upward. The smaller of the two fluxes in the sums are set to zero.
Finally, ponded water and snow pack physical characteristics are set, including the snow heat capacity, which is calculated from the heat capacities of ice and water \(C_i\) and \(C_w\), the snow, ice and water densities \(\rho_s\) \(\rho_i\), and \(\rho_w\), and the water content and depth of the snow pack \(w_s\) and \(z_s\), as follows:
\(C_s = C_i [\rho_s /\rho_i] + C_w w_s /[\rho_w z_s]\)