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

Adding two new arctic shrub PFTs, and some arctic grass parameter updates #1236

Merged
merged 7 commits into from
Oct 4, 2024

Conversation

jenniferholm
Copy link
Contributor

@jenniferholm jenniferholm commented Aug 17, 2024

Description:

To help improve the representation of arctic traits we are introducing two new shrubs that have been parameterized with an initial set of traits that more closely matches arctic observations, but improvements could still be made. We have also updated a subset of parameter traits for the default c3 arctic grass PFT.

These updates are based on the work done by Yanlan Liu and her 2024 parameter sensitive manuscript "Large divergence of projected high latitude vegetation composition and productivity due to functional trait uncertainty" https://agupubs.onlinelibrary.wiley.com/doi/full/10.1029/2024EF004563
We introduce the new "broadleaf_evergreen_arctic_shrub" and "broadleaf_colddecid_arctic_shrub" PFTs, and update the proportional breakdown of only the "broadleaf deciduous boreal shrub" in the hlm_pft_map.
This is so that non-arctic shrubs can still exist and compete with arctic shrubs, and to distinguish the traits/characteristics between the arctic environments that are pretty distinct.

This PR addresses the discussion in Issue #1204

Collaborators:

Help from @rgknox, @YanlanLiu, and conversations with @ckoven, and others.

Expectation of Answer Changes:

Will change the results of shrubs in 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

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:

@glemieux
Copy link
Contributor

@jenniferholm and @rgknox to coordinate on running a long-term f45 smoke test. If the results look good we'll go ahead and update the default parameter file with this instead of having a second param file.

@rgknox
Copy link
Contributor

rgknox commented Aug 27, 2024

@jenniferholm and I are running some long-term smoke tests. I generated the following error in a fixed-biogeography & no-comp type simulation:

The distribution of this host land model PFT :          10
 into FATES PFTs, does not add up to 1.0.
 Error is:  -1.00000000000000
 and the hlm_pft_map is:  0.000000000000000E+000  0.000000000000000E+000
  0.000000000000000E+000  0.000000000000000E+000  0.000000000000000E+000
  0.000000000000000E+000  0.000000000000000E+000  0.000000000000000E+000
  0.000000000000000E+000  0.000000000000000E+000  0.000000000000000E+000
  0.000000000000000E+000  0.000000000000000E+000  0.000000000000000E+000
 Aborting
 ENDRUN:
 ERROR in EDPftvarcon.F90 at line 2244

This means that the 10th pft from the ELM set, has nothing to map to in the FATES set. This is a problem because we have areas in the surface file that will have no patches to assign to in FATES.

@rgknox
Copy link
Contributor

rgknox commented Aug 27, 2024

Note that previously, this ELM PFT was mapping to: 9 broadleaf_colddecid_extratrop_shrub

@rgknox
Copy link
Contributor

rgknox commented Aug 27, 2024

@jenniferholm, I see that the CDL I've generated is inconsistent with the hlm_pft_map you specified in the XML file. So this is either a problem with the batch-pathch script, or I did something wrong while creating the new cdl file.

<!-- into 0.1 for the evergreen arctic, and 0.8 for cold-decid arctic -->
<!-- and leaves 0.1 in the orginial non-arctic extratrop cold-decid shrub -->
<pft_group ids="9" >
<fates_hlm_pft_map> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.0, 0.1, 0, 0, 0 </fates_hlm_pft_map>
Copy link
Contributor

@rgknox rgknox Aug 27, 2024

Choose a reason for hiding this comment

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

here's the problem @jenniferholm , we zerod out the 10'th index in this vector. It should have stayed as 1.0.

Can you confirm?

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 - Yep, you're exactly right. The 10th index in this vector should have remained as 1.0 (as it always has been in previous versions). I was only thinking about ELM index 11 changes, and forgot to keep this as is.

@jenniferholm
Copy link
Contributor Author

@jenniferholm and I are running some long-term smoke tests. I generated the following error in a fixed-biogeography & no-comp type simulation:

The distribution of this host land model PFT :          10
 into FATES PFTs, does not add up to 1.0.
 Error is:  -1.00000000000000
 and the hlm_pft_map is:  0.000000000000000E+000  0.000000000000000E+000
  0.000000000000000E+000  0.000000000000000E+000  0.000000000000000E+000
  0.000000000000000E+000  0.000000000000000E+000  0.000000000000000E+000
  0.000000000000000E+000  0.000000000000000E+000  0.000000000000000E+000
  0.000000000000000E+000  0.000000000000000E+000  0.000000000000000E+000
 Aborting
 ENDRUN:
 ERROR in EDPftvarcon.F90 at line 2244

This means that the 10th pft from the ELM set, has nothing to map to in the FATES set. This is a problem because we have areas in the surface file that will have no patches to assign to in FATES.

Oops! Oversight on my part that the ELM 10th PFT didn't add up to 1.0. Thanks for finding this

@rgknox
Copy link
Contributor

rgknox commented Aug 28, 2024

The 40 year f45 smoke test with fixed biogeography and no-competition completed on perlmutter. Output here:
/global/cfs/cdirs/m2420/rgknox
I'll update later with some simple analysis. Note the run was purely a smoke test to see if this created any model crashes, this is not to test the fidelity of the new parameterizations.

@glemieux
Copy link
Contributor

Per fates software meeting today: @jenniferholm and @rgknox to coordinate on assessing long-duration smoke test results.

@rgknox
Copy link
Contributor

rgknox commented Sep 17, 2024

A 40 year smoke test was ran. Settings were pretty generic, but used fixed biogeography, no competition, and the new PFT set. The following analysis reports gridded mean values on the 40th and last year of simulation:

https://drive.google.com/file/d/1YkwGd9gUz9zoc4C8AwpFl3LBM-l1xrdT/view?usp=sharing

@rgknox
Copy link
Contributor

rgknox commented Sep 18, 2024

There isn't much coverage of PFTS 3,8 and 10. The broadleaf arctic shrub 10 has a very small share of the total leaf mass. And those needleleaf deciduous (larches?) are only in a few cells in siberia. Also, we are still not mapping any ELM surface file classes to PFT 8 (broadleaf_hydrodecid_extratrop_shrub). Should we use this opportunity to remove PFT 8?

@jenniferholm
Copy link
Contributor Author

jenniferholm commented Sep 19, 2024

Hi @rgknox - related to your PFT 8 comment, I think we should discuss that in another issue and PR. I tried to bring it up before, not it's not really related to the topic here, which is just the two arctic shrubs with more arctic traits.

For the global sanity check, I think everything looks oaky with the two new PFTs. At least nothing crazy going on. With the now PFT # 10 (broadleaf_evergreen_arctic_shrub), we already knew that would have low coverage, and low leaf mass. So that's expected. I just wanted to make sure the now PFT # 11 didn't take over too much (or out compete other cold deciduous plants), and I think it seems okay

@glemieux
Copy link
Contributor

glemieux commented Sep 26, 2024

Apologies if I missed this discussion earlier @jenniferholm. I noticed in comparing the patch file update in #1136, which includes the grass allometry updates from @XiulinGao #1206, that the arctic shrub patch file has two values that conflict for the c3 arctic grass (PFT 10 in #1136 and PFT 12 in #1236).

Conflict 1: fates_leaf_slatop

PFT 12 (was PFT 10) from this PR updated to 0.027:

<fates_leaf_slatop> 0.027 </fates_leaf_slatop>

PFT 10 from #1136 (now PFT 12) showing 0.05:

<mod type="variable_change" name="fates_leaf_slatop">
<val>0.012, 0.005, 0.024, 0.009, 0.03, 0.03, 0.012, 0.03, 0.03, 0.05, 0.05, 0.05 </val>

Conflict 2: fates_recruit_height_min:

PFT 12 (was PFT 10) from this PR update to 0.11:

<fates_recruit_height_min> 0.11 </fates_recruit_height_min>

PFT 10 from #1136 (now PFT 12) showing 0.2:
<mod type="variable_change" name="fates_recruit_height_min">
<val>1.3, 1.3, 1.3, 1.3, 1.3, 1.3, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2 </val>

My assumption is that we want to use the updates from @YanlanLiu publication, but I wanted to double check.
Particularly in light of reviewing the conversation in #1204 and seeing #1204 (comment) noting the source of the updates from #1206:

Yes, the data for developing those new grass allometry are all from Mediterranean grasses.

@jenniferholm
Copy link
Contributor Author

Hi Greg, thanks for double checking these values. Your assumption is correct that we are further updating a few of the arctic c3 grass parameter beyond what was done in #1136, since we have values that are better suited for Arctic environments instead of Mediterranean grasses. For example, the fates_recruit_height_min value of 0.2 from #1136 is too high for arctic grasses. So it should be updated to 0.11 based on Yanlan's work.

@glemieux
Copy link
Contributor

Thanks for the clarification @jenniferholm.

@XiulinGao
Copy link
Contributor

@glemieux @jenniferholm yeah look great to me! I think it totally makes sense to change the parameter when there is much better data for arctic grasses!

@glemieux
Copy link
Contributor

glemieux commented Oct 2, 2024

Regression testing with just these updates to the parameter file results in expected b4b differences across multiple fates tests. Spot checking the global SP test shows that the differences are located in the arctic as expected:

image
image

There was one failure due to ESCOMP/CTSM#2783; this is currently being retested on its own.

Location: /glade/u/home/glemieux/scratch/ctsm-tests/tests_pr1236-ctsm5029

@glemieux glemieux mentioned this pull request Oct 2, 2024
4 tasks
glemieux added a commit to glemieux/fates that referenced this pull request Oct 2, 2024
This is the result of following the workflow to combine patch file
updates from NGEET#1136 and NGEET#1236
@glemieux glemieux merged commit 309075c into NGEET:main Oct 4, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Ready to Integrate
Development

Successfully merging this pull request may close these issues.

4 participants