FatesHydraulicsMemMod Module


Uses


Variables

Type Visibility Attributes Name Initial
integer, public, parameter :: nlevsoi_hyd_max = 40
integer, public, parameter :: n_porous_media = 4
integer, public, parameter :: n_hypool_leaf = 1
integer, public, parameter :: n_hypool_stem = 1
integer, public, parameter :: n_hypool_troot = 1
integer, public, parameter :: n_hypool_aroot = 1
integer, public, parameter :: nshell = 5
integer, public, parameter :: n_hypool_ag = n_hypool_leaf+n_hypool_stem
integer, public, parameter :: n_hypool_tot = n_hypool_ag+n_hypool_troot+n_hypool_aroot+nshell
integer, public, parameter, dimension(n_hypool_tot) :: porous_media = (/1, 2, 3, 4, 5, 5, 5, 5, 5/)
integer, public, parameter :: numLWPmem = 4
integer, public, parameter :: nlevcan_hyd = 2
real(kind=r8), public, parameter :: fine_root_radius_const = 0.001_r8
real(kind=r8), public, parameter :: C2B = 2.0_r8
real(kind=r8), public, parameter, dimension(n_porous_media) :: rwcft = (/1.0_r8, 0.958_r8, 0.958_r8, 0.958_r8/)
real(kind=r8), public, parameter, dimension(n_porous_media) :: rwccap = (/1.0_r8, 0.947_r8, 0.947_r8, 0.947_r8/)
real(kind=r8), public, dimension(n_porous_media) :: cap_slp
real(kind=r8), public, dimension(n_porous_media) :: cap_int
real(kind=r8), public, dimension(n_porous_media) :: cap_corr
real(kind=r8), public :: cohort_recruit_water_layer(nlevsoi_hyd_max)
real(kind=r8), public :: recruit_water_avail_layer(nlevsoi_hyd_max)

Derived Types

type, public ::  ed_site_hydr_type

Components

Type Visibility Attributes Name Initial
integer, public :: nlevsoi_hyd
real(kind=r8), public, allocatable :: v_shell(:,:)
real(kind=r8), public, allocatable :: v_shell_init(:,:)
real(kind=r8), public, allocatable :: v_shell_1D(:)
real(kind=r8), public, allocatable :: r_node_shell(:,:)
real(kind=r8), public, allocatable :: r_node_shell_init(:,:)
real(kind=r8), public, allocatable :: l_aroot_layer(:)
real(kind=r8), public, allocatable :: l_aroot_layer_init(:)
real(kind=r8), public, allocatable :: kmax_upper_shell(:,:)
real(kind=r8), public, allocatable :: kmax_bound_shell(:,:)
real(kind=r8), public, allocatable :: kmax_lower_shell(:,:)
real(kind=r8), public, allocatable :: r_out_shell(:,:)
real(kind=r8), public, allocatable :: r_out_shell_1D(:)
real(kind=r8), public, allocatable :: r_node_shell_1D(:)
real(kind=r8), public, allocatable :: rs1(:)
real(kind=r8), public, allocatable :: kmax_upper_shell_1D(:)
real(kind=r8), public, allocatable :: kmax_bound_shell_1D(:)
real(kind=r8), public, allocatable :: kmax_lower_shell_1D(:)
integer, public, allocatable :: supsub_flag(:)
real(kind=r8), public, allocatable :: h2osoi_liqvol_shell(:,:)
real(kind=r8), public, allocatable :: h2osoi_liq_prev(:)
real(kind=r8), public, allocatable :: psisoi_liq_innershell(:)
real(kind=r8), public, allocatable :: recruit_w_uptake(:)
real(kind=r8), public :: l_aroot_1D
real(kind=r8), public :: errh2o_hyd
real(kind=r8), public :: dwat_veg
real(kind=r8), public :: h2oveg
real(kind=r8), public :: h2oveg_recruit
real(kind=r8), public :: h2oveg_dead
real(kind=r8), public :: h2oveg_growturn_err
real(kind=r8), public :: h2oveg_pheno_err
real(kind=r8), public :: h2oveg_hydro_err

Type-Bound Procedures

procedure, public :: InitHydrSite

type, public ::  ed_cohort_hydr_type

Components

Type Visibility Attributes Name Initial
real(kind=r8), public :: z_node_ag(n_hypool_ag)
real(kind=r8), public :: z_node_troot(n_hypool_troot)
real(kind=r8), public :: z_upper_ag(n_hypool_ag)
real(kind=r8), public :: z_upper_troot(n_hypool_troot)
real(kind=r8), public :: z_lower_ag(n_hypool_ag)
real(kind=r8), public :: z_lower_troot(n_hypool_troot)
real(kind=r8), public :: kmax_upper(n_hypool_ag)
real(kind=r8), public :: kmax_lower(n_hypool_ag)
real(kind=r8), public :: kmax_upper_troot
real(kind=r8), public :: kmax_bound(n_hypool_ag)
real(kind=r8), public :: kmax_treebg_tot
real(kind=r8), public :: v_ag_init(n_hypool_ag)
real(kind=r8), public :: v_ag(n_hypool_ag)
real(kind=r8), public :: v_troot_init(n_hypool_troot)
real(kind=r8), public :: v_troot(n_hypool_troot)
real(kind=r8), public :: v_aroot_tot
real(kind=r8), public :: l_aroot_tot
real(kind=r8), public, allocatable :: z_node_aroot(:)
real(kind=r8), public, allocatable :: kmax_treebg_layer(:)
real(kind=r8), public, allocatable :: v_aroot_layer_init(:)
real(kind=r8), public, allocatable :: v_aroot_layer(:)
real(kind=r8), public, allocatable :: l_aroot_layer(:)
real(kind=r8), public, allocatable :: kmax_innershell(:)
real(kind=r8), public :: th_ag(n_hypool_ag)
real(kind=r8), public :: th_troot(n_hypool_troot)
real(kind=r8), public :: psi_ag(n_hypool_ag)
real(kind=r8), public :: psi_troot(n_hypool_troot)
real(kind=r8), public :: flc_ag(n_hypool_ag)
real(kind=r8), public :: flc_troot(n_hypool_troot)
real(kind=r8), public :: flc_min_ag(n_hypool_ag)
real(kind=r8), public :: flc_min_troot(n_hypool_troot)
real(kind=r8), public :: refill_thresh
real(kind=r8), public :: refill_days
real(kind=r8), public :: btran(nlevcan_hyd)
real(kind=r8), public :: lwp_mem(numLWPmem)
real(kind=r8), public :: lwp_stable
logical, public :: lwp_is_unstable
real(kind=r8), public :: supsub_flag
real(kind=r8), public :: iterh1
real(kind=r8), public :: iterh2
real(kind=r8), public :: errh2o
real(kind=r8), public :: errh2o_growturn_ag(n_hypool_ag)
real(kind=r8), public :: errh2o_pheno_ag(n_hypool_ag)
real(kind=r8), public :: errh2o_growturn_troot(n_hypool_troot)
real(kind=r8), public :: errh2o_pheno_troot(n_hypool_troot)
real(kind=r8), public, allocatable :: th_aroot(:)
real(kind=r8), public, allocatable :: psi_aroot(:)
real(kind=r8), public, allocatable :: flc_aroot(:)
real(kind=r8), public, allocatable :: flc_min_aroot(:)
real(kind=r8), public, allocatable :: errh2o_growturn_aroot(:)
real(kind=r8), public, allocatable :: errh2o_pheno_aroot(:)
real(kind=r8), public :: qtop_dt
real(kind=r8), public :: dqtopdth_dthdt
real(kind=r8), public :: sapflow
real(kind=r8), public :: rootuptake
real(kind=r8), public :: rootuptake01
real(kind=r8), public :: rootuptake02
real(kind=r8), public :: rootuptake03
real(kind=r8), public :: rootuptake04
real(kind=r8), public :: rootuptake05
real(kind=r8), public :: rootuptake06
real(kind=r8), public :: rootuptake07
real(kind=r8), public :: rootuptake08
real(kind=r8), public :: rootuptake09
real(kind=r8), public :: rootuptake10
logical, public :: is_newly_recruited

Type-Bound Procedures

procedure, public :: AllocateHydrCohortArrays
procedure, public :: DeallocateHydrCohortArrays

Subroutines

public subroutine InitHydraulicsDerived(numpft)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: numpft