Modify stiffness using damage change#55
Open
trhille wants to merge 6 commits into
Open
Conversation
aeea288 to
aebdd62
Compare
Previously with damage-rheology coupling there was no stiffnessFactor constraint on initial damage. Now use damage = (1 - stiffnessFactor) to initialize.
Need to use domain % blocklist % structs instead of block % structs when outside loop over blocks.
Because stiffnessFactor is often >1 from the optimization, we need to update it using change in damage, rather than setting it to 1 - damage, which previously always resulted in stiffness <1.
Forgot to add Registry to previous commits!
On a restart, just use the damage field in the restart file, rather than calculating it from stiffnessFactor.
Update halos for damage before applying to stiffnessFactor. Testing showed imprinting of the decomposition on damage and stiffnessFactor fields before applying this halo update.
aebdd62 to
9a567de
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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 merge includes changes necessary to properly couple damage to ice rheology when using stiffnessFactor from an optimization. First, the damage field is initialized as damage = max(1 - stiffnessFactor, 0.0). Then, update stiffnessFactor each timestep using the change in damage, rather than as 1 - damage. The previous coupling method made it so that stiffnessFactor was essentially unused after the first solve, because damage was completely independent of stiffnessFactor and 1.0 was the assumed upper bound. This method allows for stiffnessFactor > 1.0 even with damaged ice.