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
ElementSubdomainModifier should not modify SubdomainIDs during the element loop #23371
Comments
Nice finding! |
Caching is a fix. The ultimate fix in my opinion is to set up a dependency graph for runtime mesh modifiers (including this element subdomain modifier), pretty much like the current |
Yeah, multiple options here
I was going for the lowest hanging fruit. |
Several things we frequently use at hand could be unified in to the runtime mesh modifier system, such as XFEM and CZM. I know I'm dreaming right now, but if we are heading towards that direction, I'd be happy to help. |
I like that idea. The scope is not small though and would require some funding. Maybe we can propose a workpackage that could cover this activity for next FY? |
Sure, let's talk before FY24 planning. |
Reason
ElementSubdomainModifier
is currently changingelement->subdomain_id()
inexecute()
. This will cause UOs in the same execution stage operating on the same element (or face of the same element), see a subdomain ID that is inconsistent with the current subdomain set inonSubdomainChange
. This will trip this assertion for example.Design
Store all subdomain id reassignments in a list first and only apply them to the elements in finalize.
Impact
More robust capability. Ping @dewenyushu
The text was updated successfully, but these errors were encountered: