-
Notifications
You must be signed in to change notification settings - Fork 15
Modular soil moisture stress, standalone canopy at fluxnet sites #1330
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
Open
ychnli
wants to merge
3
commits into
main
Choose a base branch
from
yl/soil-moisture-stress
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
df7fbc5 to
602babf
Compare
3178fa3 to
4ced716
Compare
Closed
AlexisRenchon
added a commit
that referenced
this pull request
Aug 28, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]>
AlexisRenchon
added a commit
that referenced
this pull request
Aug 28, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Aug 29, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Aug 29, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 2, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
juliasloan25
reviewed
Sep 2, 2025
Comment on lines
+9
to
12
| pmodel_cb = ClimaLand.make_PModel_callback(FT, start_date, dt, canopy) | ||
|
|
||
| # add this callback to the CallbackSet with driver, diag | ||
| cb = SciMLBase.CallbackSet(driver_cb, diag_cb, pmodel_cb); |
Member
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since this is handled within LandSimulation after the callback changes, we can omit this here
AlexisRenchon
added a commit
that referenced
this pull request
Sep 3, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 3, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 3, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. NOTE: some new formatting it seems using JuliaFormatter v1 Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 3, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. NOTE: some new formatting it seems using JuliaFormatter v1 Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 3, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. NOTE: some new formatting it seems using JuliaFormatter v1 Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 3, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. NOTE: some new formatting it seems using JuliaFormatter v1 Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 5, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. NOTE: some new formatting it seems using JuliaFormatter v1 Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 5, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. NOTE: some new formatting it seems using JuliaFormatter v1 Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 5, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. NOTE: some new formatting it seems using JuliaFormatter v1 Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 5, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. NOTE: some new formatting it seems using JuliaFormatter v1 Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 5, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. NOTE: some new formatting it seems using JuliaFormatter v1 Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]> [skip ci]
AlexisRenchon
added a commit
that referenced
this pull request
Sep 5, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. NOTE: some new formatting it seems using JuliaFormatter v1 Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: ychnli <[email protected]>
AlexisRenchon
added a commit
that referenced
this pull request
Sep 8, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: kmdeck <[email protected]> Co-authored-by: AlexisRenchon <[email protected]>
AlexisRenchon
added a commit
that referenced
this pull request
Sep 8, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: kmdeck <[email protected]> Co-authored-by: AlexisRenchon <[email protected]>
juliasloan25
pushed a commit
that referenced
this pull request
Sep 12, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractSoilMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: kmdeck <[email protected]> Co-authored-by: AlexisRenchon <[email protected]>
juliasloan25
added a commit
that referenced
this pull request
Sep 12, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component type: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: kmdeck <[email protected]> Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: juliasloan25 <[email protected]>
juliasloan25
added a commit
that referenced
this pull request
Sep 12, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: kmdeck <[email protected]> Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: juliasloan25 <[email protected]>
juliasloan25
added a commit
that referenced
this pull request
Sep 12, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: kmdeck <[email protected]> Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: juliasloan25 <[email protected]>
4 tasks
juliasloan25
added a commit
that referenced
this pull request
Sep 12, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: kmdeck <[email protected]> Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: juliasloan25 <[email protected]>
juliasloan25
added a commit
that referenced
this pull request
Sep 12, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: kmdeck <[email protected]> Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: juliasloan25 <[email protected]>
juliasloan25
added a commit
that referenced
this pull request
Sep 12, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: kmdeck <[email protected]> Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: juliasloan25 <[email protected]>
juliasloan25
added a commit
that referenced
this pull request
Sep 13, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: kmdeck <[email protected]> Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: juliasloan25 <[email protected]>
kmdeck
added a commit
that referenced
this pull request
Sep 14, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: juliasloan25 <[email protected]> Co-authored-by: kmdeck <[email protected]>
kmdeck
added a commit
that referenced
this pull request
Sep 15, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: juliasloan25 <[email protected]> Co-authored-by: kmdeck <[email protected]>
kmdeck
added a commit
that referenced
this pull request
Sep 15, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: juliasloan25 <[email protected]> Co-authored-by: kmdeck <[email protected]>
juliasloan25
added a commit
that referenced
this pull request
Sep 15, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: kmdeck <[email protected]> Co-authored-by: AlexisRenchon <[email protected]> Co-authored-by: juliasloan25 <[email protected]>
ThanhNguyen428
pushed a commit
that referenced
this pull request
Oct 29, 2025
This commits adds a portion of Yuchen Li PR #1330, a new Canopy component: AbstractMoistureStressModel, with 3 methods: the existing one (Tuzet) which was previously in PlantHydraulics, a Piecewise method using dry to wet soil moisture, and no moisture stress. Co-authored-by: ychnli <[email protected]> Co-authored-by: juliasloan25 <[email protected]> Co-authored-by: kmdeck <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Purpose
This PR closes #1205 and #1185 and implements methods for running standalone canopy at Fluxnet sites.
To-do
PlantHydraulics.jlinto soil moisture stress.Content
Main changes
TuzetMoistureStressModel.where$\theta$ , $\theta_w$ , and $\theta_c$ are (possibly depth-dependent) soil water content, wilting point, and field capacity. The latter are two thresholds that can either be specified by the user or by the soil hydrology model using standard matric potentials. $c > 0$ is a curvature parameter and $\beta_0 \in [0, 1]$ is an "intrinsic moisture stress" used in Mengoli et al. (2025). $R(z)$ is the root probability distribution and integrates to 1.
get_data_datesandprescribed_forcing_fluxnet, false by default.PrescribedGroundConditions. This was used in our plant hydraulics scheme to compute leaf water potential. Now, we instead take the soil water contentSWC) provided by most Fluxnet sites. This is converted toSmaller changes
FrequencyBasedCallbacktoPeriodicCallback, which makes more senseLandSimulation, we callmake_PModel_callbackif we are using the P-model via a new methodrequired_model_callbackswhich dispatches on the land component models.start_dateandstop_date.Dates.Period