Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optional decoupling of fine root biomass from canopy trim logic #354

Merged
merged 2 commits into from
Apr 17, 2018

Conversation

ckoven
Copy link
Contributor

@ckoven ckoven commented Mar 19, 2018

This PR adds a new allometry mode, which sets fine root biomass independently from the canopy trim logic.

Description:

As part of the suite of hypotheses behind the persistent low LAI bias we've been noticing in FATES (#339), one possible issue is that the code has been coupling the canopy trim logic between both the leaf pool and the fine root pool. What this means in practice is that, when deciding whether an increment of leaf biomass is in the net a good thing for the plant or not, the plant compares the marginal gain from an increment of LAI against the marginal costs of both the leaf and the associated fine root. Since there is much uncertainty around the fine root biomass, it is perhaps an overly strong assumption that the two are linked so tightly. So this PR adds the option to decouple the two allometries, such that fine root biomass is tied to maximum (untrimmed) leaf biomass rather than the trimmed target biomass.

The option is triggered using the variable fates_allom_fmode in the parameter file. Previously there was only one fine root allometry mode (fates_allom_fmode=1); this behavior remains the same but the user can now set a decoupled allometry (fates_allom_fmode=2) which sets the fine root biomass as a function of the untrimmed leaf biomass. Note that what this means is that we may also want to reduce the target fine root : leaf biomass ratios (fates_allom_l2fr) as well so as to rebalance the overall investment to roots.

An outcome of this change is that by invoking the new allometry, the above:belowground NPP investment starts to become more plastic because we are no longer holding them fixed relative to each other. The implications of that are still to be explored.

Collaborators:

Chatted about this with @rgknox and @rosiealice.

Expectation of Answer Changes:

Should be b4b with the default parameter set, answer-changing if setting the new allometry.

Checklist:

  • My change requires a change to the documentation.
  • I have updated the in-code documentation AND wiki accordingly.
  • I have read the CONTRIBUTING document.
  • FATES PASS/FAIL regression tests were run
  • If answers were expected to change, evaluation was performed and provided

Test Results:

Not yet tested except to ensure that it does what it is meant to, which it does.

RK: tested cheyenne, fates test, all expected PASS, B4B with master

@ckoven ckoven assigned ckoven and rosiealice and unassigned ckoven Mar 19, 2018
if ( int(EDPftvarcon_inst%allom_fmode(ipft)) .eq. 1 ) then
! only query fine root biomass if using a fine root allometric model that takes leaf trim into account
call bfineroot(currentcohort%dbh,ipft,currentcohort%canopy_trim,tar_bfr)
bfr_per_bleaf = tar_bfr/tar_bl
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ckoven

In cases where allom_fmode is not 1, will this generate an un-initialized variable? Should this be outside the filter?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bfr_per_bleaf that is

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh, i see now, the if clause is used later on, so the variable is only used inside those clauses.

@rgknox
Copy link
Contributor

rgknox commented Mar 22, 2018

Looked through the changes. I think the concept, and that it is optional, is a great addition. We were making a pretty big assumption that roots are trimmed based on productivity, and that they were both proportional to leaf trimming and factored into the costs.

@rgknox
Copy link
Contributor

rgknox commented Apr 17, 2018

testing this now

@rgknox
Copy link
Contributor

rgknox commented Apr 17, 2018

merging, all expected PASS

@rgknox rgknox merged commit a29f894 into NGEET:master Apr 17, 2018
@jenniferholm
Copy link
Contributor

I have been playing around with changing the canopy trimming limits, and I also wanted to test this new optional decoupling of fine root and leaf biomass to see how it would effect LAI, biomass, etc.

I changed allom_fmode = 2 to trigger the decoupling and allom_l2fr = 0.7 to reduce the investment to root. I'm not sure how much lower this value should go, but that seemed like a good start (reducing from 1.0).

I'm attaching some LAI results with this new option. If you see LAI does start out a little bit higher, but then ends up dropping down to the default value again. AND there are these weird drops, and crashes in LAI when before ZF2 always stays pretty stable.

Thoughts?

lai testing_allom_fmode

@rosiealice
Copy link
Contributor

rosiealice commented May 22, 2018 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants