Skip to content

Comments

Update hydraulic failure mortality for places with frozen soils#1533

Open
JessicaNeedham wants to merge 11 commits intoNGEET:mainfrom
JessicaNeedham:jfn-ngeet-boreal-hydromort
Open

Update hydraulic failure mortality for places with frozen soils#1533
JessicaNeedham wants to merge 11 commits intoNGEET:mainfrom
JessicaNeedham:jfn-ngeet-boreal-hydromort

Conversation

@JessicaNeedham
Copy link
Contributor

@JessicaNeedham JessicaNeedham commented Feb 10, 2026

This PR address issue #1492.
Hydraulic failure mortality (hmort) occurs when btran is less than a soil moisture threshold. If soils are frozen then btran is zero. To prevent hmort of plants at high latitude during winter there is an if statement that prevents hmort being calculated if any soil layer is frozen. However, in regions with permafrost this essentially turns off hmort entirely, even in summer months when plants may actually be water stressed.

This PR adds additional logic so that we still calculate hmort if soil layers with 90% of the root biomass are not frozen.

Collaborators:

@mvdebolskiy @rosiealice @kjetil

Expectation of Answer Changes:

This will change hmort rates of plants at high latitudes.

Checklist

If this is your first time contributing, please read the CONTRIBUTING document.

All checklist items must be checked to enable merging this pull request:

Contributor

  • The in-code documentation has been updated with descriptive comments
  • The documentation has been assessed to determine if updates are necessary

Integrator

  • FATES PASS/FAIL regression tests were run
  • Evaluation of test results for answer changes was performed and results provided
  • FATES-CLM6 Code Freeze: satellite phenology regression tests are b4b

If satellite phenology regressions are not b4b, please hold merge and notify the FATES development team.

Documentation

Test Results:

Not tested

@JessicaNeedham
Copy link
Contributor Author

I'm wondering if there should be a new function that gets the maximum soil layer index with 90% of root biomass so that we don't have to duplicate that chunk of code before each call to mortality_rates?

@JessicaNeedham
Copy link
Contributor Author

For reference, here is global btran by season from a recent historic run.

DJF:
image

MAM:
image

JJA:
image

SON:
image

@JessicaNeedham
Copy link
Contributor Author

Here are differences from a 5 year run (with hmort scalar set to 0.6 for all PFTs). Changes don't seem to be having a huge impact.
image

@JessicaNeedham
Copy link
Contributor Author

We could also simplify things a lot by evaluating only the active layers. i.e. calculate hmort if

( ( minval(bc_in%t_soisno_sl(1: bc_in%max_rooting_depth_index_col) - tfrz ) > soil_tfrz_thresh ) ) then

@JessicaNeedham
Copy link
Contributor Author

JessicaNeedham commented Feb 10, 2026

Here's fineroot carbon by soil layer (historic run - mean of last year)
image

And active layer thickness by month (1850 simulation - only one where this was turned on)
image

@JessicaNeedham
Copy link
Contributor Author

Using active layer thickness is much simpler and seems to be the same as calculating the maximum soil layer with 90% of the root biomass. These are 5 year runs from bareground - with hmort scalar set to 0.6 for all PFTs.

image

@JessicaNeedham
Copy link
Contributor Author

A 50 year run with the default parameter file (fates_mort_scalar_hydrfailure = 0.1 for all PFTs) shows little difference in hydraulic failure mortality from the current logic (mean over last ten years). Mostly because there doesn't seem to be much hydraulic failure mortality at high latitudes anyway with this parameter file and forcing.

image

Copy link
Contributor

@mpaiao mpaiao left a comment

Choose a reason for hiding this comment

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

@JessicaNeedham thanks for submitting this PR! I think your implementation makes total sense and is simple and elegant. It is also consistent with how btran is calculated.

@JessicaNeedham
Copy link
Contributor Author

Thanks @mpaiao ! I am also testing a version now where only 50% of the active layer need to be thawed before we allow hydraulic failure. Discussing with @rosiealice we thought maybe the whole active layer having to be thawed was a bit restrictive.

@JessicaNeedham
Copy link
Contributor Author

JessicaNeedham commented Feb 12, 2026

With the condition that we calculate hydraulic failure when 50% of the soil layers in the active layer are thawed (~0.6 m with CLM soil layers) we see increased mortality - especially in NE China, SE Russia. Cold-deciduous broad leaf and needleleaf tree PFTs.

image

Here are changes in LAI as a result:

image

@glemieux glemieux added science: mortality Pertaining to changes to plant mortality science: hydrology labels Feb 12, 2026
@glemieux glemieux linked an issue Feb 12, 2026 that may be closed by this pull request
else
! When FATES-Hydro is off, hydraulic failure mortality occurs only when btran
! falls below a threshold and plants have leaves.
n_layer_thawed = count((bc_in%t_soisno_sl - tfrz ) > soil_tfrz_thresh)
Copy link
Contributor

Choose a reason for hiding this comment

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

@JessicaNeedham , could we also perform this logic based off of the fraction of non-frozen depth, or the fraction of non-frozen fine-root biomass? That might buffer this calculation from artificial model constructs like how we decide on layering.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@rgknox yes it also occurred to me we could get quite different behaviour here if the HLM layering scheme changed. I might have missed something, but it looked to me like FATES doesn't actually see the thickness of each HLM soil layer, which makes it hard to do this by depth, rather than number of soil layers. Making it by root biomass works, and that was what I originally wrote. It is a bit clunkier but maybe safer (see this first commit).

if ( (.not. is_decid_dormant) .and. &
( btran_ft(cohort_in%pft) <= hf_sm_threshold ) .and. &
( ( minval(bc_in%t_soisno_sl) - tfrz ) > soil_tfrz_thresh ) ) then
( n_layer_thawed .ge. (0.5_r8 * nlev_eff_soil) )) then
Copy link
Contributor

Choose a reason for hiding this comment

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

Recommend setting 0.5 to a named constant like "hmort_thaw_frac_threshold" or whatever you deem appropriate

@JessicaNeedham
Copy link
Contributor Author

@rgknox - this is back to being based on root biomass. Tests running with NorESM.

@JessicaNeedham
Copy link
Contributor Author

I ran two simulations where soil layers with either 25% or 75% of root biomass thawed before hydraulic failure mortality is allowed. All PFTs had hydraulic failure mortality set to 0.25. There is very little difference except for at the highest latitudes.

Hydraulic mortality rate:
image

Hydraulic mortality carbon flux:
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

science: hydrology science: mortality Pertaining to changes to plant mortality

Projects

Status: Finding Reviewers

Development

Successfully merging this pull request may close these issues.

Hydraulic failure mortality is 0.0 for the whole permafrost region

4 participants