Skip to content

Commit

Permalink
Merge pull request #959 from mpaiao/mpaiao-pr-allom-stmode
Browse files Browse the repository at this point in the history
New allometry option for storage
  • Loading branch information
glemieux authored Jan 30, 2023
2 parents 0e74107 + e27dd99 commit a0028dd
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 5 deletions.
11 changes: 8 additions & 3 deletions biogeochem/FatesAllometryMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1085,10 +1085,10 @@ subroutine bstore_allom(d,ipft,crowndamage, canopy_trim,bstore,dbstoredd)

real(r8) :: bl ! Allometric target leaf biomass
real(r8) :: dbldd ! Allometric target change in leaf biomass per cm
real(r8) :: blmax ! Allometric target leaf biomass (UNTRIMMED)
real(r8) :: dblmaxdd ! Allometric target change in leaf biomass per cm (UNTRIMMED)


! TODO: allom_stmode needs to be added to the parameter file

associate( allom_stmode => prt_params%allom_stmode(ipft), &
cushion => prt_params%cushion(ipft) )

Expand All @@ -1098,7 +1098,12 @@ subroutine bstore_allom(d,ipft,crowndamage, canopy_trim,bstore,dbstoredd)

call bleaf(d,ipft, crowndamage, canopy_trim, bl, dbldd)
call bstore_blcushion(d,bl,dbldd,cushion,ipft,bstore,dbstoredd)


case(2) ! Storage is constant proportionality of untrimmed maximum leaf
! biomass (ie cushion * bleaf_max)
call blmax_allom(d,ipft,blmax,dblmaxdd)
call bstore_blcushion(d,blmax,dblmaxdd,cushion,ipft,bstore,dbstoredd)

case DEFAULT
write(fates_log(),*) 'An undefined fine storage allometry was specified: ', &
allom_stmode
Expand Down
2 changes: 1 addition & 1 deletion parameter_files/fates_params_default.cdl
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ variables:
fates_allom_smode:long_name = "sapwood allometry function index." ;
double fates_allom_stmode(fates_pft) ;
fates_allom_stmode:units = "index" ;
fates_allom_stmode:long_name = "storage allometry function index." ;
fates_allom_stmode:long_name = "storage allometry function index: 1) Storage proportional to leaf biomass (with trimming), 2) Storage proportional to maximum leaf biomass (not trimmed)" ;
double fates_allom_zroot_k(fates_pft) ;
fates_allom_zroot_k:units = "unitless" ;
fates_allom_zroot_k:long_name = "scale coefficient of logistic rooting depth model" ;
Expand Down
6 changes: 5 additions & 1 deletion parteh/PRTParametersMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,11 @@ module PRTParametersMod
real(r8), allocatable :: allom_amode(:) ! AGB allometry function type
real(r8), allocatable :: allom_cmode(:) ! Coarse root allometry function type
real(r8), allocatable :: allom_smode(:) ! sapwood allometry function type
real(r8), allocatable :: allom_stmode(:) ! storage allometry functional type
real(r8), allocatable :: allom_stmode(:) ! storage allometry functional type
! 0 - storage is proportional to maximum leaf biomass
! (considering trimmed)
! 1 - storage is proportional to maximum leaf biomass
! (untrimmed)
! (HARD-CODED FOR TIME BEING, RGK 11-2017)
real(r8), allocatable :: allom_la_per_sa_int(:) ! Leaf area to sap area conversion, intercept
! (sapwood area / leaf area) [cm2/m2]
Expand Down

0 comments on commit a0028dd

Please sign in to comment.