INTERFACE:
subroutine CNPhenologyClimate (num_soilp, filter_soilp, num_pcropp, filter_pcropp)DESCRIPTION:
For coupled carbon-nitrogen code (CN).
USES:
use clm_time_manager, only: get_days_per_year use clm_time_manager, only: get_curr_date use CropRestMod , only: CropRestYear, CropRestIncYearARGUMENTS:
integer, intent(in) :: num_soilp ! number of soil pfts in filter integer, intent(in) :: filter_soilp(:) ! filter for soil pfts integer, intent(in) :: num_pcropp ! number of prognostic crops in filter integer, intent(in) :: filter_pcropp(:)! filter for prognostic crop pftsCALLED FROM:
subroutine CNPhenologyREVISION HISTORY:
3/13/07: Created by Peter ThorntonLOCAL VARIABLES:
local pointers to implicit in scalars integer , pointer :: ivt(:) ! pft vegetation type ! ecophysiological constants real(r8), pointer :: t_ref2m(:) ! 2m air temperature (K) real(r8), pointer :: tempavg_t2m(:) ! temp. avg 2m air temperature (K) real(r8), pointer :: gdd0(:) ! growing deg. days base 0 deg C (ddays) real(r8), pointer :: gdd8(:) ! " " " " 8 " " " real(r8), pointer :: gdd10(:) ! " " " " 10 " " " real(r8), pointer :: gdd020(:) ! 20-yr mean of gdd0 (ddays) real(r8), pointer :: gdd820(:) ! 20-yr mean of gdd8 (ddays) real(r8), pointer :: gdd1020(:) ! 20-yr mean of gdd10 (ddays) integer , pointer :: pgridcell(:) ! pft's gridcell index local pointers to implicit in/out scalars local pointers to implicit out scalars !OTHER LOCAL VARIABLES: integer :: p ! indices integer :: fp ! lake filter pft index integer, save :: nyrs = -999 ! number of years prognostic crop has run real(r8):: dayspyr ! days per year (days) integer kyr ! current year integer kmo ! month of year (1, ..., 12) integer kda ! day of month (1, ..., 31) integer mcsec ! seconds of day (0, ..., seconds/day) real(r8), parameter :: yravg = 20.0_r8 ! length of years to average for gdd real(r8), parameter :: yravgm1 = yravg-1.0_r8 ! minus 1 of above