Module holding routines used in allocation model for coupled carbon nitrogen code.
USES:
use shr_kind_mod, only: r8 => shr_kind_r8 use abortutils , only: endrun implicit none save privatePUBLIC MEMBER FUNCTIONS:
public :: CNAllocationInit ! Initialization public :: CNAllocation ! run methodPUBLIC DATA MEMBERS:
character(len=*), parameter, public :: suplnAll=& ! Supplemental Nitrogen for all PFT's
'ALL'
character(len=*), parameter, public :: suplnCrp=& ! Supplemental Nitrogen for prognostic Crop
'PROG_CROP_ONLY'
character(len=*), parameter, public :: suplnNon=& ! No supplemental Nitrogen
'NONE'
character(len=15), public :: suplnitro = suplnNon ! Supplemental Nitrogen mode
!PRIVATE DATA MEMBERS:
real(r8):: dt !decomp timestep (seconds)
real(r8):: bdnr !bulk denitrification rate (1/s)
real(r8):: dayscrecover !number of days to recover negative cpool
real(r8), pointer :: arepr(:) !reproduction allocation coefficient
real(r8), pointer :: aroot(:) !root allocation coefficient
real(r8), pointer:: col_plant_ndemand(:) !column-level plant N demand
logical :: Carbon_only = .false. ! Carbon only mode
! (Nitrogen is prescribed NOT prognostic)
logical :: crop_supln = .false. ! Prognostic crop receives supplemental Nitrogen
REVISION HISTORY:
8/5/03: Created by Peter Thornton