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

Add option to convert wetlands to land; apply it by default for CLM51 physics #1890

Merged
merged 5 commits into from
Nov 8, 2022

Conversation

billsacks
Copy link
Member

Description of changes

This PR adds a new namelist option, "convert_ocean_to_land", which converts all wetland area to natural veg (typically bare ground) at runtime. This is set to true by default when using CLM51 physics.

In addition, this PR makes a minor change to the setting of soil properties in mksurfdata: Previously, soil properties were set to some default value outside of the pctlnd_pft-determined land mask. But I can't see any reason why that needs to be done, and doing so could remove some valid soil properties in the situation where there is a grid cell that has valid soil properties even though the pctpft dataset claims the area is ocean.

Note that this PR is into the ctsm5.2.mksurfdata branch. Most of the changes could be applied directly to master, but there are some related changes to mksurfdata that motivated me to make this PR into the ctsm5.2.mksurfdata branch. However, standard f09 surface datasets don't show any changes due to the code changes in mksurfdata here, and the mksurfdata changes aren't critical anyway, so it would be reasonable to rebase the non-mksurfdata changes onto master if we want them available sooner.

Specific notes

Contributors other than yourself, if any:

CTSM Issues Fixed (include github issue #):

Are answers expected to change (and if so in what way)? Yes: changes answers for CLM51 cases in a few grid cells that used to be wetland but now are classified as bare ground.

Any User Interface Changes (namelist or namelist defaults changes)? Adds new namelist variable, "convert_ocean_to_land"

Testing performed, if any:

  • Ran the following tests with comparison against the ctsm5.2mksurfdata branch:
    • ERP_D_P36x2_Ld3.f10_f10_mg37.I1850Clm50BgcCrop.cheyenne_intel.clm-default: passes and bit-for-bit
    • ERP_Ld9.f45_g37.I2000Clm51Bgc.cheyenne_intel.clm-default: passes but changes answers, as expected
    • ERI_D_Ld9.f10_f10_mg37.I1850Clm51Bgc.cheyenne_gnu.clm-default: passes (didn't do baseline comparisons, but expect baseline comparisons to fail)
  • Also made new surface datasets with these changes in soil property mapping, 1850 f09:
    • Standard surface datasets show no differences
    • Also did a test where I temporarily set pctlnd_pft to 0 everywhere after the call to mkpft. I verified that this only leads to differences in various PCT fields: there are no longer any differences in soil properties arising from this change in pctlnd_pft. In contrast, setting pctlnd_pft to 0 before the changes in this PR leads to differences in many soil properties, because in this baseline version, soil properties were set to a constant value over grid cells outside the pctlnd_pft-based land mask.

@slevisconsulting and @ekluzek - I am assigning both of you as reviewers, but probably this only needs a review from one of you. I would especially welcome a review of my changes to mksurfdata, in case you see any reason why my change to the mapping of soil properties might be problematic. As mentioned above, this doesn't lead to any differences in an f09 1850 surface dataset, but these changes could in principle lead to differences in some surface datasets (probably those at higher resolutions).

It doesn't seem like there's any reason why we need to overwrite soil
properties with a default value just because pctlnd_pft is small. Doing
so was fine when we turned those grid cells into wetland, but now that
we aren't necessarily doing that, it makes sense to keep valid soil data
wherever we have it.

This could change answers in places where we have valid soil data
despite pctlnd_pft being near 0.
Copy link
Contributor

@slevis-lmwg slevis-lmwg left a comment

Choose a reason for hiding this comment

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

@billsacks I see nothing of concern. I suggested a cosmetic extension to a comment for people who don't quickly see the connection between 100% ocean and bare ground (like me :-))

group="clm_inparm" value=".false.">
If true, any ocean (i.e., wetland) points on the surface dataset are
converted to bare ground (or whatever vegetation is given in that grid
cell - but typically this will be bare ground).
Copy link
Contributor

Choose a reason for hiding this comment

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

The statement that this typically will be bare ground could be complemented with a simple explanation, e.g. "due to lack of vegetation in grid cells with 100% ocean."

Copy link
Member Author

Choose a reason for hiding this comment

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

Thanks for the suggestion. I just pushed a commit with your suggested change.

@billsacks billsacks merged commit 075820c into ESCOMP:ctsm5.2.mksurfdata Nov 8, 2022
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.

2 participants