next up previous contents
Next: CNPhenology Up: Routine/Function Prologues Previous: NStateUpdate3   Contents

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

Module holding routines used in phenology model for coupled carbon nitrogen code.


   use clmtype
   use shr_kind_mod, only: r8 => shr_kind_r8
   use clm_varcon  , only: tfrz
   use clm_varctl  , only: iulog
   use clm_varpar  , only: numpft
   use shr_sys_mod , only: shr_sys_flush
   use abortutils  , only: endrun
   implicit none
   public :: CNPhenologyInit      ! Initialization
   public :: CNPhenology          ! Update
   8/1/03: Created by Peter Thornton
   10/23/03, Peter Thornton: migrated all routines to vector data structures
   2/4/08,  slevis: adding crop phenology from AgroIBIS
   real(r8)           :: dt              ! radiation time step delta t (seconds)
   real(r8)           :: fracday         ! dtime as a fraction of day
   real(r8)           :: crit_dayl       ! critical daylength for offset (seconds)
   real(r8)           :: ndays_on        ! number of days to complete onset
   real(r8)           :: ndays_off       ! number of days to complete offset
   real(r8)           :: fstor2tran      ! fraction of storage to move to transfer on each onset
   real(r8)           :: crit_onset_fdd  ! critical number of freezing days
   real(r8)           :: crit_onset_swi  ! water stress days for offset trigger
   real(r8)           :: soilpsi_on      ! water potential for onset trigger (MPa)
   real(r8)           :: crit_offset_fdd ! critical number of freezing degree days
                                         ! to trigger offset
   real(r8)           :: crit_offset_swi ! water stress days for offset trigger
   real(r8)           :: soilpsi_off     ! water potential for offset trigger (MPa)
   real(r8)           :: lwtop           ! live wood turnover proportion (annual fraction)
   ! CropPhenology variables and constants
   real(r8)           :: p1d, p1v            ! photoperiod factor constants for crop vernalization
   real(r8)           :: hti                 ! cold hardening index threshold for vernalization
   real(r8)           :: tbase               ! base temperature for vernalization
   integer, parameter :: NOT_Planted   = 999 ! If not planted   yet in year
   integer, parameter :: NOT_Harvested = 999 ! If not harvested yet in year
   integer, parameter :: inNH       = 1      ! Northern Hemisphere
   integer, parameter :: inSH       = 2      ! Southern Hemisphere
   integer, pointer   :: inhemi(:)           ! Hemisphere that pft is in
   integer            :: minplantjday(0:numpft,inSH) ! minimum planting julian day
   integer            :: maxplantjday(0:numpft,inSH) ! maximum planting julian day
   integer            :: jdayyrstart(inSH)           ! julian day of start of year


Erik Kluzek 2011-06-15