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

[Fang summer '24 PR 1.1] Fix bugs and develop crop fire modeling #2684

Merged
merged 7 commits into from
Aug 14, 2024

Conversation

samsrabin
Copy link
Collaborator

@samsrabin samsrabin commented Aug 12, 2024

(Supersedes #2576, which I'm replacing so as to put these changes in a new fire module rather than changing CNFireLi2021Mod.F90.)

Description of changes

Copied CNFireLi2021Mod.F90 to new CNFireLi2024Mod.F90. In the latter (original description by @lifang0209 in #2576):

  1. Fixed the bug described in bug in crop fire modeling #2566 to avoid incorrect accumulation of baf_crop and ensure that crop fires do not occur during the crop growing season;
  2. Confined crop fires to periods after harvest and before planting when crop module is active;
  3. Removed the dependency of baf_crop on fuel availability;
  4. Improved the modeling of the influence of socio-economic factors on crop burned area
  5. Recalibrated the cropfire_a1 constant based on GFED5 crop burned area;
  6. Modify the declaration of CNFireArea in these F90 files to include the variable crop_inst, declare the variable crop_inst, and import and utilize crop_type from the module CropType.

In addition, the modules CNDriverMod.F90, CNFireLi2014Mod.F90, CNFireLi2016Mod.F90, [CNFireLi2021Mod.F90,] CNFireNoFireMod.F90, FATESFireBase.F90, and FireMethodType.F90 include the subroutine CNFireArea. (6) is implemented in these modules.

The new fire module is not on by default; it requires setting fire_method to li2024gswpfrc. This will become the default only after #2615 is merged.

Specific notes

Contributors other than yourself, if any: @lifang0209

CTSM Issues Fixed (include github issue #):

Are answers expected to change (and if so in what way)? Only when manually setting fire_method to li2024gswpfrc. Global burned area increases about 30 Mha/yr. Crop fires only occur after harvest and before planting.

Any User Interface Changes (namelist or namelist defaults changes)? Yes:

  • Adds optional fire_method li2024gswpfrc.

Does this create a need to change or add documentation? Did you do so? New documentation will be needed when li2024gswpfrc becomes the default, but not yet.

Testing performed, if any:

  • @lifang0209 performed historic Bgc and BgcCrop runs to check scientific performance with li2024gswpfrc
  • aux_clm test suite passes bit-for-bit, since by default li2024gswpfrc is off.

Includes new fire_method li2024gswpfrc.
In the CNFireLi2024Mod.F90, (1) fixed the bug described in ESCOMP#2566 to avoid incorrect accumulation of baf_crop and ensure that crop fires do not occur during the crop growing season; (2) confined crop fires to periods after harvest and before planting when crop module is active; (3) removed the dependency of baf_crop on fuel availability; (4) improved the modeling of the influence of socio-economic factors on crop burned area; (5) recalibrated the cropfire_a1 constant based on GFED5 crop burned area; (6) modify the declaration of CNFireArea in these F90 files to include the variable crop_inst, declare the variable crop_inst, and import and utilize crop_type from the module CropType.

In addition, the modules CNDriverMod.F90, CNFireLi2014Mod.F90, CNFireLi2016Mod.F90, CNFireLi2021Mod.F90, CNFireNoFireMod.F90, FATESFireBase.F90, and FireMethodType.F90 include the subroutine CNFireArea. (6) is implemented in these modules.

(Original commit by Fang Li, lifang@mail.iap.ac.cn.)
(Original commit by Fang Li, lifang@mail.iap.ac.cn.)
@samsrabin samsrabin added enhancement new capability or improved behavior of existing capability bug something is working incorrectly labels Aug 12, 2024
@samsrabin samsrabin self-assigned this Aug 12, 2024
@samsrabin
Copy link
Collaborator Author

samsrabin commented Aug 12, 2024

  • Add comment in all other fire modules that crop_inst is just being used as a dummy.

@samsrabin
Copy link
Collaborator Author

samsrabin commented Aug 12, 2024

Oh, also:

  • What do you think of the fire_method test coverage I added? Specifically, a 65-day 10x15 derecho intel run with each fire_method.
  • I had some differences in some tests that were marked as expected failures. There were also two FATES tests that had diffs due to infinity in FATES_TRANSITION_MATRIX_LULU. Are those okay?

@slevis-lmwg
Copy link
Contributor

I will start with what I know:
The "infinity" result is expected in these FATES tests. Greg has a fix that should be coming in soon.

Regarding test coverage, I could form an opinion if we discussed it, or I'm happy to let others weigh in.

@samsrabin
Copy link
Collaborator Author

@slevis-lmwg I think the test coverage is fine for now. We can maybe add more later, perhaps when I make li2024gswpfrc the default. Would you mind clicking approve?

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.

@samsrabin thank you for working on this.

@samsrabin
Copy link
Collaborator Author

aux_clm passes. Note that this adds four new tests (2 Derecho, 2 Izumi).

@samsrabin samsrabin merged commit bbb702c into ESCOMP:b4b-dev Aug 14, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug something is working incorrectly enhancement new capability or improved behavior of existing capability
Projects
Status: Ready to eat (Done!)
Status: Done (non release/external)
Status: Done
Development

Successfully merging this pull request may close these issues.

2 participants