patch fusion fix to prevent patch heterogeneity collapse #553
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.
This code slightly changes the patch fusion code to prevent an edge case that has been happening fairly frequently, whereby the patches would all get fused, thereby losing all the heterogeneity.
Description:
basically this just resets the patch fusion tolerance after every fusion event, so that if the code had encountered a situation where it needed to fuse two patches that were dissimilar enough that the worst biomass bin comparison between the two patches was that one patch had some biomass in a given bin and the other didn't, the looping structure would then proceed to fuse all of the patches. now that shouldn't happen.
note this also changes the outcome of inventory initialization. earlier code was tending to collapse all the quadrats at BCI into a single patch. This code leaves several patches after the initial round of patch fusion during inventory initialization using the BCI census data.
fixes #323.
Collaborators:
some email discussion with @rgknox and @rosiealice.
Expectation of Answer Changes:
this should change answers, but possibly only for long runs.
Checklist:
Test Results:
CTSM (or) E3SM (specify which) test hash-tag:
CTSM (or) E3SM (specify which) baseline hash-tag:
FATES baseline hash-tag:
Test Output: