Skip to content

Conversation

@mpaiao
Copy link
Contributor

@mpaiao mpaiao commented Jun 18, 2025

Description:

This is a bit tangential, but in line with the refactoring of the deciduous phenology (Issue #1385).

FATES currently has two parameters for defining hydraulic failure thresholds. When FATES-Hydro is enabled, we use fates_mort_hf_flc_threshold, which is based on the fraction of loss of conductivity (flc). When FATES-Hydro is disabled, we set fates_mort_hf_sm_threshold, which is a bit of a misnomer, because the threshold is based on btran, not soil moisture.

This pull request replaces these two parameters with a single one, fates_mort_hydrfailure_threshold, which is based on btran or the fraction of maximum conductivity (fmc), which is simply fmc = 1 - flc. The idea behind this switch is because btran is numerically equivalent to fmc when FATES-Hydro is enabled, so we can define the thresholds through a single parameter.

For FATES-Hydro simulations, this only affects how we set the threshold, because now the lower the value, the more drought resistant the plant is going to be. Otherwise, the calculation of hydraulic failure mortality is logically the same. Results will probably not be bit-for-bit, though, because the mathematical formulation was adjusted to use fmc instead of flc.

For runs without FATES-Hydro, the proposed pull request would change how mortality is calculated. Before we were applying a step function: if btran dropped below fates_mort_hf_sm_threshold, mortality would immediately become fates_mort_scalar_hydrfailure. In this pull request, it follows the same formulation as FATES-Hydro: hydraulic failure mortality increases linearly from 0 when btran = fates_mort_hydrfailure_threshold to fates_mort_scalar_hydrfailure when btran = 0. Evidently, this is a different formulation, so results will be definitely different when FATES-Hydro is disabled.

Merging this pull request will require a change in the technical documentation. The existing technical documentation is not up to date in any case: it explains how current FATES calculates hydraulic failure mortality when FATES-Hydro is disabled (but not when FATES-Hydro is enabled), and implies that the threshold (fates_mort_hf_sm_threshold) is not an adjustable parameter.

Collaborators:

Discussed this at the developer meeting with @glemieux @ckoven @JessicaNeedham @adrifoster @samsrabin

Expectation of Answer Changes:

The results will not be bit-for-bit. Changes should be just due to numerical precision when FATES-Hydro is on, but should be rather different when FATES-Hydro is off.

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:

CTSM (or) E3SM (specify which) test hash-tag:

CTSM (or) E3SM (specify which) baseline hash-tag:

FATES baseline hash-tag:

Test Output:

mpaiao added 3 commits June 16, 2025 16:02
The original code had two parameters for defining hydraulic failure thresholds, one when
FATES-Hydro was enabled (fates_mort_hf_flc_threshold) enabled, and the other when not using
FATES-Hydro (fates_mort_hf_sm_threshold). This PR replaces these parameters with a single
one (fates_mort_hydrfail_threshold) that works for both FATES-Hydro off and on. When
FATES-Hydro is on, btran is equivalent to the fraction of maximum conductivity, though in
the code we still calculate the fraction.

One additional change is that hydraulic failure mortality would increase linearly as
conductivity decreased in FATES-Hydro, but would be a step function in non-Hydro settings.
This PR removes the step function and uses the linear decrease in all simulations. Because
of this change, this PR will NOT be bit-for-bit.
@rgknox
Copy link
Contributor

rgknox commented Jun 30, 2025

cc @rosiealice , these changes would impact nocomp/fixebiogeo results (or anything non sp for that matter)

@rosiealice
Copy link
Contributor

Thanks @rgknox. I think this is good as I've been holding off calibration these parameters until this is integrated...

@rgknox
Copy link
Contributor

rgknox commented Aug 22, 2025

Cross referencing work done on noresm-fates by @rosiealice : NorESMhub#28
Intention here is to consolidate, unify efforts.

@glemieux glemieux added inputs: parameter file Pertaining to changes to the FATES parameter file science: mortality Pertaining to changes to plant mortality science: hydrology labels Aug 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

inputs: parameter file Pertaining to changes to the FATES parameter file science: hydrology science: mortality Pertaining to changes to plant mortality

Projects

Status: Finding Reviewers

Development

Successfully merging this pull request may close these issues.

4 participants