next up previous contents
Next: NStateUpdate2h Up: Fortran: Module Interface NStateUpdate2Mod Previous: Fortran: Module Interface NStateUpdate2Mod   Contents

NStateUpdate2


INTERFACE:

 subroutine NStateUpdate2(num_soilc, filter_soilc, num_soilp, filter_soilp)
DESCRIPTION:

On the radiation time step, update all the prognostic nitrogen state variables affected by gap-phase mortality fluxes


USES:

    use clmtype
    use clm_time_manager, only: get_step_size
ARGUMENTS:
    implicit none
    integer, intent(in) :: num_soilc       ! number of soil columns in filter
    integer, intent(in) :: filter_soilc(:) ! filter for soil columns
    integer, intent(in) :: num_soilp       ! number of soil pfts in filter
    integer, intent(in) :: filter_soilp(:) ! filter for soil pfts
CALLED FROM:
   subroutine CNEcosystemDyn
REVISION HISTORY:
   8/1/03: Created by Peter Thornton
LOCAL VARIABLES:
   local pointers to implicit in scalars
    real(r8), pointer :: m_deadcrootn_storage_to_litr1n(:)
    real(r8), pointer :: m_deadcrootn_to_cwdn(:)
    real(r8), pointer :: m_deadcrootn_xfer_to_litr1n(:)
    real(r8), pointer :: m_deadstemn_storage_to_litr1n(:)
    real(r8), pointer :: m_deadstemn_to_cwdn(:)
    real(r8), pointer :: m_deadstemn_xfer_to_litr1n(:)
    real(r8), pointer :: m_frootn_storage_to_litr1n(:)
    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_frootn_xfer_to_litr1n(:)
    real(r8), pointer :: m_leafn_storage_to_litr1n(:)
    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_leafn_xfer_to_litr1n(:)
    real(r8), pointer :: m_livecrootn_storage_to_litr1n(:)
    real(r8), pointer :: m_livecrootn_to_cwdn(:)
    real(r8), pointer :: m_livecrootn_xfer_to_litr1n(:)
    real(r8), pointer :: m_livestemn_storage_to_litr1n(:)
    real(r8), pointer :: m_livestemn_to_cwdn(:)
    real(r8), pointer :: m_livestemn_xfer_to_litr1n(:)
    real(r8), pointer :: m_retransn_to_litr1n(:)
    real(r8), pointer :: m_deadcrootn_storage_to_litter(:)
    real(r8), pointer :: m_deadcrootn_to_litter(:)
    real(r8), pointer :: m_deadcrootn_xfer_to_litter(:)
    real(r8), pointer :: m_deadstemn_storage_to_litter(:)
    real(r8), pointer :: m_deadstemn_to_litter(:)
    real(r8), pointer :: m_deadstemn_xfer_to_litter(:)
    real(r8), pointer :: m_frootn_storage_to_litter(:)
    real(r8), pointer :: m_frootn_to_litter(:)
    real(r8), pointer :: m_frootn_xfer_to_litter(:)
    real(r8), pointer :: m_leafn_storage_to_litter(:)
    real(r8), pointer :: m_leafn_to_litter(:)
    real(r8), pointer :: m_leafn_xfer_to_litter(:)
    real(r8), pointer :: m_livecrootn_storage_to_litter(:)
    real(r8), pointer :: m_livecrootn_to_litter(:)
    real(r8), pointer :: m_livecrootn_xfer_to_litter(:)
    real(r8), pointer :: m_livestemn_storage_to_litter(:)
    real(r8), pointer :: m_livestemn_to_litter(:)
    real(r8), pointer :: m_livestemn_xfer_to_litter(:)
    real(r8), pointer :: m_retransn_to_litter(:)
   local pointers to implicit in/out scalars
    real(r8), pointer :: cwdn(:)               ! (gN/m2) coarse woody debris N
    real(r8), pointer :: litr1n(:)             ! (gN/m2) litter labile N
    real(r8), pointer :: litr2n(:)             ! (gN/m2) litter cellulose N
    real(r8), pointer :: litr3n(:)             ! (gN/m2) litter lignin N
    real(r8), pointer :: deadcrootn(:)         ! (gN/m2) dead coarse root N
    real(r8), pointer :: deadcrootn_storage(:) ! (gN/m2) dead coarse root N storage
    real(r8), pointer :: deadcrootn_xfer(:)    ! (gN/m2) dead coarse root N transfer
    real(r8), pointer :: deadstemn(:)          ! (gN/m2) dead stem N
    real(r8), pointer :: deadstemn_storage(:)  ! (gN/m2) dead stem N storage
    real(r8), pointer :: deadstemn_xfer(:)     ! (gN/m2) dead stem N transfer
    real(r8), pointer :: frootn(:)             ! (gN/m2) fine root N
    real(r8), pointer :: frootn_storage(:)     ! (gN/m2) fine root N storage
    real(r8), pointer :: frootn_xfer(:)        ! (gN/m2) fine root N transfer
    real(r8), pointer :: leafn(:)              ! (gN/m2) leaf N
    real(r8), pointer :: leafn_storage(:)      ! (gN/m2) leaf N storage
    real(r8), pointer :: leafn_xfer(:)         ! (gN/m2) leaf N transfer
    real(r8), pointer :: livecrootn(:)         ! (gN/m2) live coarse root N
    real(r8), pointer :: livecrootn_storage(:) ! (gN/m2) live coarse root N storage
    real(r8), pointer :: livecrootn_xfer(:)    ! (gN/m2) live coarse root N transfer
    real(r8), pointer :: livestemn(:)          ! (gN/m2) live stem N
    real(r8), pointer :: livestemn_storage(:)  ! (gN/m2) live stem N storage
    real(r8), pointer :: livestemn_xfer(:)     ! (gN/m2) live stem N transfer
    real(r8), pointer :: retransn(:)           ! (gN/m2) plant pool of retranslocated N
   local pointers to implicit out scalars
   !OTHER LOCAL VARIABLES:
    integer :: c,p         ! indices
    integer :: fp,fc       ! lake filter indices
    real(r8):: dt          ! radiation time step (seconds)



Erik Kluzek 2011-06-15