INTERFACE:
subroutine CombineSnowLayers(lbc, ubc, num_snowc, filter_snowc)DESCRIPTION:
Combine snow layers that are less than a minimum thickness or mass If the snow element thickness or mass is less than a prescribed minimum, then it is combined with a neighboring element. The subroutine clm_combo.f90 then executes the combination of mass and energy.
USES:
use clmtype
use clm_varcon, only : istsoil, isturb
use clm_varcon, only : istcrop
ARGUMENTS:
implicit none
integer, intent(in) :: lbc, ubc ! column bounds
integer, intent(inout) :: num_snowc ! number of column snow points in column filter
integer, intent(inout) :: filter_snowc(ubc-lbc+1) ! column filter for snow points
CALLED FROM:
subroutine Hydrology2 in module Hydrology2ModREVISION HISTORY:
15 September 1999: Yongjiu Dai; Initial code 15 December 1999: Paul Houser and Jon Radakovich; F90 Revision 2/28/02, Peter Thornton: Migrated to new data structures. 03/28/08, Mark Flanner: Added aerosol masses and snow grain radiusLOCAL VARIABLES:
local pointers to implicit in arguments
integer, pointer :: clandunit(:) !landunit index for each column
integer, pointer :: ltype(:) !landunit type
local pointers to implicit inout arguments
integer , pointer :: snl(:) !number of snow layers
real(r8), pointer :: h2osno(:) !snow water (mm H2O)
real(r8), pointer :: snowdp(:) !snow height (m)
real(r8), pointer :: dz(:,:) !layer depth (m)
real(r8), pointer :: zi(:,:) !interface level below a "z" level (m)
real(r8), pointer :: t_soisno(:,:) !soil temperature (Kelvin)
real(r8), pointer :: h2osoi_ice(:,:) !ice lens (kg/m2)
real(r8), pointer :: h2osoi_liq(:,:) !liquid water (kg/m2)
local pointers to implicit out arguments
real(r8), pointer :: z(:,:) ! layer thickness (m)
real(r8), pointer :: mss_bcphi(:,:) ! hydrophilic BC mass in snow (col,lyr) [kg]
real(r8), pointer :: mss_bcpho(:,:) ! hydrophobic BC mass in snow (col,lyr) [kg]
real(r8), pointer :: mss_ocphi(:,:) ! hydrophilic OC mass in snow (col,lyr) [kg]
real(r8), pointer :: mss_ocpho(:,:) ! hydrophobic OC mass in snow (col,lyr) [kg]
real(r8), pointer :: mss_dst1(:,:) ! dust species 1 mass in snow (col,lyr) [kg]
real(r8), pointer :: mss_dst2(:,:) ! dust species 2 mass in snow (col,lyr) [kg]
real(r8), pointer :: mss_dst3(:,:) ! dust species 3 mass in snow (col,lyr) [kg]
real(r8), pointer :: mss_dst4(:,:) ! dust species 4 mass in snow (col,lyr) [kg]
real(r8), pointer :: snw_rds(:,:) ! effective snow grain radius (col,lyr) [microns, m^-6]
!OTHER LOCAL VARIABLES: