INTERFACE:
subroutine HydrologyLake (c)DESCRIPTION:
Calculate lake hydrologyUSES:
use shr_kind_mod, only: r8 => shr_kind_r8
use clmtype
use globals, only: dtime
use clm_varcon, only : hfus, tfrz, spval
ARGUMENTS:
implicit none
type (column_type),target,intent(inout) :: c !column derived type
CALLED FROM:
subroutine driverREVISION HISTORY:
Author: Gordon Bonan 15 September 1999: Yongjiu Dai; Initial code 15 December 1999: Paul Houser and Jon Radakovich; F90 Revision 3/4/02: Peter Thornton; Migrated to new data structures.LOCAL VARIABLES:
local pointers to implicit in scalars
real(r8), pointer :: begwb !water mass begining of the time step
real(r8), pointer :: forc_snow !snow rate [mm/s]
real(r8), pointer :: forc_rain !rain rate [mm/s]
logical , pointer :: do_capsnow !true => do snow capping
real(r8), pointer :: t_grnd !ground temperature (Kelvin)
real(r8), pointer :: qmelt !snow melt [mm/s]
real(r8), pointer :: qflx_evap_soi !soil evaporation (mm H2O/s) (+ = to atm)
real(r8), pointer :: qflx_evap_tot !qflx_evap_soi + qflx_evap_veg + qflx_tran_veg
local pointers to implicit inout scalars
real(r8), pointer :: h2osno !snow water (mm H2O)
local pointers to implicit out scalars
real(r8), pointer :: endwb !water mass end of the time step
real(r8), pointer :: snowdp !snow height (m)
real(r8), pointer :: snowice !average snow ice lens
real(r8), pointer :: snowliq !average snow liquid water
real(r8), pointer :: eflx_snomelt !snow melt heat flux (W/m**2)
real(r8), pointer :: qflx_infl !infiltration (mm H2O /s)
real(r8), pointer :: qflx_snomelt !snow melt (mm H2O /s)
real(r8), pointer :: qflx_surf !surface runoff (mm H2O /s)
real(r8), pointer :: qflx_drain !sub-surface runoff (mm H2O /s)
real(r8), pointer :: qflx_qrgwl !qflx_surf at glaciers, wetlands, lakes
local pointers to implicit out arrays
real(r8), dimension(:), pointer :: rootr_column !effective fraction of roots in each soil layer
real(r8), dimension(:), pointer :: h2osoi_vol !volumetric soil water (0<=h2osoi_vol<=watsat) [m3/m3]
real(r8), dimension(:), pointer :: h2osoi_ice !ice lens (kg/m2)
real(r8), dimension(:), pointer :: h2osoi_liq !liquid water (kg/m2)