-
Notifications
You must be signed in to change notification settings - Fork 360
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
Update ELM-FATES API to pass fire data to FATES #5369
Update ELM-FATES API to pass fire data to FATES #5369
Conversation
Removed WIP. Testing TBD this week. |
@rgknox waiting for you to approve. |
@rgknox just a heads up that @JessicaNeedham has a small update she wants to add to this PR. It should be orthogonal to the main thrust of this PR and is a partial solution to the issue discussed in NGEET/fates#985. The change is to update |
@glemieux, I will wait until the final changes are in. Can you ping me when its ready? |
Will do. Jessie is testing this out the changes. |
Thanks @glemieux. I'm finding that establishment from bare ground works better when we start with higher initial soil moisture. I wondered about changing the use_fates_planthydro to use_fates here:
Details are here NGEET/fates#985 although maybe I should start a separate issue? I believe @mpaiao has also found it necessary to increase soil moisture. I haven't tested yet on this branch but I will do so now. |
@JessicaNeedham We could convert the discussion to an issue if you feel like it has been fully addressed. If there are still outstanding issues in the discussion then opening a new issue (and linking back to the open discussion) would be better. Skimming the discussion, are there changes on the fates-side that need to be made as well? If so, it might be cleaner to update and integrate the fates-side first and then create new PRs for both host land model side. |
Thanks @glemieux, I'd say it is not totally resolved so I'll make a new issue for some of the solutions with a corresponding FATES PR. |
I agree @glemieux, it might be better to add those changes in another PR |
@rgknox we're going to do a different PR for Jessie's changes. I ran into a run time seg fault in the testing of spitfire in mode 2 right now. I'll ping you again when I've got things fixed up. |
This imports and adapts the clm-fates fire base types and factory method of fire type creation. The standard elm FireMod has not been changed, but could adopt this method in the future if so desired. FATES will now have access to the same lightning and population data the the FireMod make use of. The code also includes the hooks to enable the use of additonal FATES fire modes, but these require the use of data sets not currently stored on most machines.
bad2687
to
41339b9
Compare
@peterdschwartz I'm running regression testing on perlmutter currently. I'll update with the results as soon as possible. |
@peterdschwartz testing on perlmutter against the master baseline is complete. All tests are B4B. There are some failures due to namelist and compute time differences:
Folder location: |
This commit also cleans up some comments
@peterdschwartz just a heads up that I attempted to run land developer tests on summit since perlmutter is down, but I ran into a model build issue. Since this didn't come up previously, I'm guessing its a compiler-specific issue that I'll need to address. |
The IBM compiler requires a return assignment for functions.
The issue I was seeing on summit has been resolved with c94350c. The problem was that the ibm compiler didn't like that I wasn't setting a return value for two empty functions. For posterity the form of the error was:
The issue here is that the function is the intentionally empty form of a polymorphic procedure that is defined to end the run with an error message. It's setup this was to make sure that the call to the function isn't applied in an instance where it is not allowed. Intel and gnu compilers didn't seem to have a problem with this. Final land developer testing is underway again. |
Land developer tests are complete. Comparison against Folder on perlmutter: |
…pi' into next (PR #5369) This pull request updates the ELM-FATES API to provide FATES with the lightning and population density data from FireMod.F90. This provides ELM-FATES users access to the additional SPITFIRE run modes. The design is adapts the framework developed for CLM-FATES. The design document discussing the background and general design is available in the FATES Developer's Guide. All non-fates tests should be b4b as this PR only adds access to additional FATES modes which are not yet covered by existing tests. This also updates the fates pointer to tag sci.1.63.2_api.25.1.0 bring in the fix to the cray and ibm pointer deallocation issue to resolve #5001. Fixes #5001 [B4B]
merged to next |
merged to master |
This PR is already merged but I put the following bug report from one of ORNL helpdesk team in regards to this issue: The |
Thanks for posting @grnydawn This seems related to this previous issue you created: #5001 Some compilers were having trouble allocating and deallocating these derived types, one of the reasons was the "target" designation. I thought we implemented a fix, in a more updated version of the code below, we don't have the target designation. https://github.com/NGEET/fates/blob/main/biogeochem/EDCohortDynamicsMod.F90#L710-L712 Have you tried your tests with the current master version of E3SM? That should point to a more modern fates tag. |
@rgknox , No, I have not tried the tests with the latest master branch recently. I will add comment here if I still have this issue. |
This pull request updates the ELM-FATES API to provide FATES with the lightning and population density data from FireMod.F90. This provides ELM-FATES users access to the additional SPITFIRE run modes. The design is adapts the framework developed for CLM-FATES. The design document discussing the background and general design is available in the FATES Developer's Guide. All non-fates tests should be b4b as this PR only adds access to additional FATES modes which are not yet covered by existing tests.
This also updates the fates pointer to tag
sci.1.63.2_api.25.1.0
bring in the fix to the cray and ibm pointer deallocation issue to resolveFixes #5001.
[B4B]