INTERFACE:
subroutine CNGapPftToColumn (num_soilc, filter_soilc)DESCRIPTION:
called in the middle of CNGapMoratlity to gather all pft-level gap mortality fluxes to the column level and assign them to the three litter pools
USES:
use clmtype use clm_varpar, only : maxpatch_pftARGUMENTS:
implicit none integer, intent(in) :: num_soilc ! number of soil columns in filter integer, intent(in) :: filter_soilc(:) ! soil column filterCALLED FROM:
subroutine CNphenologyREVISION HISTORY:
9/8/03: Created by Peter ThorntonLOCAL VARIABLES:
local pointers to implicit in scalars integer , pointer :: ivt(:) ! pft vegetation type real(r8), pointer :: wtcol(:) ! pft weight relative to column (0-1) real(r8), pointer :: pwtgcell(:) ! weight of pft relative to corresponding gridcell real(r8), pointer :: lf_flab(:) ! leaf litter labile fraction real(r8), pointer :: lf_fcel(:) ! leaf litter cellulose fraction real(r8), pointer :: lf_flig(:) ! leaf litter lignin fraction real(r8), pointer :: fr_flab(:) ! fine root litter labile fraction real(r8), pointer :: fr_fcel(:) ! fine root litter cellulose fraction real(r8), pointer :: fr_flig(:) ! fine root litter lignin fraction integer , pointer :: npfts(:) ! number of pfts for each column integer , pointer :: pfti(:) ! beginning pft index for each column real(r8), pointer :: m_leafc_to_litter(:) real(r8), pointer :: m_frootc_to_litter(:) real(r8), pointer :: m_livestemc_to_litter(:) real(r8), pointer :: m_deadstemc_to_litter(:) real(r8), pointer :: m_livecrootc_to_litter(:) real(r8), pointer :: m_deadcrootc_to_litter(:) real(r8), pointer :: m_leafc_storage_to_litter(:) real(r8), pointer :: m_frootc_storage_to_litter(:) real(r8), pointer :: m_livestemc_storage_to_litter(:) real(r8), pointer :: m_deadstemc_storage_to_litter(:) real(r8), pointer :: m_livecrootc_storage_to_litter(:) real(r8), pointer :: m_deadcrootc_storage_to_litter(:) real(r8), pointer :: m_gresp_storage_to_litter(:) real(r8), pointer :: m_leafc_xfer_to_litter(:) real(r8), pointer :: m_frootc_xfer_to_litter(:) real(r8), pointer :: m_livestemc_xfer_to_litter(:) real(r8), pointer :: m_deadstemc_xfer_to_litter(:) real(r8), pointer :: m_livecrootc_xfer_to_litter(:) real(r8), pointer :: m_deadcrootc_xfer_to_litter(:) real(r8), pointer :: m_gresp_xfer_to_litter(:) real(r8), pointer :: m_leafn_to_litter(:) real(r8), pointer :: m_frootn_to_litter(:) real(r8), pointer :: m_livestemn_to_litter(:) real(r8), pointer :: m_deadstemn_to_litter(:) real(r8), pointer :: m_livecrootn_to_litter(:) real(r8), pointer :: m_deadcrootn_to_litter(:) real(r8), pointer :: m_retransn_to_litter(:) real(r8), pointer :: m_leafn_storage_to_litter(:) real(r8), pointer :: m_frootn_storage_to_litter(:) real(r8), pointer :: m_livestemn_storage_to_litter(:) real(r8), pointer :: m_deadstemn_storage_to_litter(:) real(r8), pointer :: m_livecrootn_storage_to_litter(:) real(r8), pointer :: m_deadcrootn_storage_to_litter(:) real(r8), pointer :: m_leafn_xfer_to_litter(:) real(r8), pointer :: m_frootn_xfer_to_litter(:) real(r8), pointer :: m_livestemn_xfer_to_litter(:) real(r8), pointer :: m_deadstemn_xfer_to_litter(:) real(r8), pointer :: m_livecrootn_xfer_to_litter(:) real(r8), pointer :: m_deadcrootn_xfer_to_litter(:) local pointers to implicit in/out arrays real(r8), pointer :: m_leafc_to_litr1c(:) real(r8), pointer :: m_leafc_to_litr2c(:) real(r8), pointer :: m_leafc_to_litr3c(:) real(r8), pointer :: m_frootc_to_litr1c(:) real(r8), pointer :: m_frootc_to_litr2c(:) real(r8), pointer :: m_frootc_to_litr3c(:) real(r8), pointer :: m_livestemc_to_cwdc(:) real(r8), pointer :: m_deadstemc_to_cwdc(:) real(r8), pointer :: m_livecrootc_to_cwdc(:) real(r8), pointer :: m_deadcrootc_to_cwdc(:) real(r8), pointer :: m_leafc_storage_to_litr1c(:) real(r8), pointer :: m_frootc_storage_to_litr1c(:) real(r8), pointer :: m_livestemc_storage_to_litr1c(:) real(r8), pointer :: m_deadstemc_storage_to_litr1c(:) real(r8), pointer :: m_livecrootc_storage_to_litr1c(:) real(r8), pointer :: m_deadcrootc_storage_to_litr1c(:) real(r8), pointer :: m_gresp_storage_to_litr1c(:) real(r8), pointer :: m_leafc_xfer_to_litr1c(:) real(r8), pointer :: m_frootc_xfer_to_litr1c(:) real(r8), pointer :: m_livestemc_xfer_to_litr1c(:) real(r8), pointer :: m_deadstemc_xfer_to_litr1c(:) real(r8), pointer :: m_livecrootc_xfer_to_litr1c(:) real(r8), pointer :: m_deadcrootc_xfer_to_litr1c(:) real(r8), pointer :: m_gresp_xfer_to_litr1c(:) real(r8), pointer :: m_leafn_to_litr1n(:) real(r8), pointer :: m_leafn_to_litr2n(:) real(r8), pointer :: m_leafn_to_litr3n(:) real(r8), pointer :: m_frootn_to_litr1n(:) real(r8), pointer :: m_frootn_to_litr2n(:) real(r8), pointer :: m_frootn_to_litr3n(:) real(r8), pointer :: m_livestemn_to_cwdn(:) real(r8), pointer :: m_deadstemn_to_cwdn(:) real(r8), pointer :: m_livecrootn_to_cwdn(:) real(r8), pointer :: m_deadcrootn_to_cwdn(:) real(r8), pointer :: m_retransn_to_litr1n(:) real(r8), pointer :: m_leafn_storage_to_litr1n(:) real(r8), pointer :: m_frootn_storage_to_litr1n(:) real(r8), pointer :: m_livestemn_storage_to_litr1n(:) real(r8), pointer :: m_deadstemn_storage_to_litr1n(:) real(r8), pointer :: m_livecrootn_storage_to_litr1n(:) real(r8), pointer :: m_deadcrootn_storage_to_litr1n(:) real(r8), pointer :: m_leafn_xfer_to_litr1n(:) real(r8), pointer :: m_frootn_xfer_to_litr1n(:) real(r8), pointer :: m_livestemn_xfer_to_litr1n(:) real(r8), pointer :: m_deadstemn_xfer_to_litr1n(:) real(r8), pointer :: m_livecrootn_xfer_to_litr1n(:) real(r8), pointer :: m_deadcrootn_xfer_to_litr1n(:) local pointers to implicit out arrays !OTHER LOCAL VARIABLES: integer :: fc,c,pi,p ! indices