next up previous contents
Next: allocFilters Up: Routine/Function Prologues Previous: relavu   Contents

Fortran: Module Interface filterMod (Source File: filterMod.F90)

Module of filters used for processing columns and pfts of particular types, including lake, non-lake, urban, soil, snow, non-snow, and naturally-vegetated patches.


USES:

   use shr_kind_mod, only: r8 => shr_kind_r8
   use abortutils, only : endrun
   use clm_varctl, only : iulog
PUBLIC TYPES:
   implicit none
   save
 
   private
 
   type clumpfilter
 #if (defined CNDV)
      integer, pointer :: natvegp(:)      ! CNDV nat-vegetated (present) filter (pfts)
      integer :: num_natvegp              ! number of pfts in nat-vegetated filter
 #endif
      integer, pointer :: pcropp(:)       ! prognostic crop filter (pfts)
      integer :: num_pcropp               ! number of pfts in prognostic crop filter
      integer, pointer :: soilnopcropp(:) ! soil w/o prog. crops (pfts)
      integer :: num_soilnopcropp         ! number of pfts in soil w/o prog crops
 
      integer, pointer :: lakep(:)        ! lake filter (pfts)
      integer :: num_lakep                ! number of pfts in lake filter
      integer, pointer :: nolakep(:)      ! non-lake filter (pfts)
      integer :: num_nolakep              ! number of pfts in non-lake filter
      integer, pointer :: lakec(:)        ! lake filter (columns)
      integer :: num_lakec                ! number of columns in lake filter
      integer, pointer :: nolakec(:)      ! non-lake filter (columns)
      integer :: num_nolakec              ! number of columns in non-lake filter
 
      integer, pointer :: soilc(:)        ! soil filter (columns)
      integer :: num_soilc                ! number of columns in soil filter 
      integer, pointer :: soilp(:)        ! soil filter (pfts)
      integer :: num_soilp                ! number of pfts in soil filter 
 
      integer, pointer :: snowc(:)        ! snow filter (columns) 
      integer :: num_snowc                ! number of columns in snow filter 
      integer, pointer :: nosnowc(:)      ! non-snow filter (columns) 
      integer :: num_nosnowc              ! number of columns in non-snow filter 
 
      integer, pointer :: hydrologyc(:)   ! hydrology filter (columns)
      integer :: num_hydrologyc           ! number of columns in hydrology filter 
 
      integer, pointer :: urbanl(:)       ! urban filter (landunits)
      integer :: num_urbanl               ! number of landunits in urban filter 
      integer, pointer :: nourbanl(:)     ! non-urban filter (landunits)
      integer :: num_nourbanl             ! number of landunits in non-urban filter 
 
      integer, pointer :: urbanc(:)       ! urban filter (columns)
      integer :: num_urbanc               ! number of columns in urban filter
      integer, pointer :: nourbanc(:)     ! non-urban filter (columns)
      integer :: num_nourbanc             ! number of columns in non-urban filter
 
      integer, pointer :: urbanp(:)       ! urban filter (pfts)
      integer :: num_urbanp               ! number of pfts in urban filter
      integer, pointer :: nourbanp(:)     ! non-urban filter (pfts)
      integer :: num_nourbanp             ! number of pfts in non-urban filter
 
      integer, pointer :: nolakeurbanp(:) ! non-lake, non-urban filter (pfts)
      integer :: num_nolakeurbanp         ! number of pfts in non-lake, non-urban filter
 
   end type clumpfilter
   public clumpfilter
 
   type(clumpfilter), allocatable, public :: filter(:)
   public allocFilters   ! allocate memory for filters
   public setFilters     ! set filters
REVISION HISTORY:
   Created by Mariana Vertenstein
   11/13/03, Peter Thornton: Added soilp and num_soilp
   Jan/08, S. Levis: Added crop-related filters



Subsections

Erik Kluzek 2011-06-15