-
-
Notifications
You must be signed in to change notification settings - Fork 64
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
Move grouping of integral from build_integral_data
to group_form_integrals
#305
Move grouping of integral from build_integral_data
to group_form_integrals
#305
Conversation
Seems like one should use the ufl/ufl/algorithms/renumbering.py Lines 35 to 39 in 004a678
@wence- do you have any ideas on how to improve it? |
It doesn't look that bad. I would forward-port the model to the What you want to know is "are two dags equal to each other, up to index relabelling?". This is achievable by visiting the dag, child before parent, and replacing free indices with a unique new index.
Would probably work, untested. |
Thanks Lawrence! I will test this tomorrow! |
Thanks for the suggestions @wence- . I have now implemented this in the code, replacing the old transformer. |
@jorgensd is this ready, or does it need more feedback? |
…uilding-integral-data
Yes, this has resolved FEniCS/ffcx#716! |
Co-authored-by: Joe Dean <jpd62@cam.ac.uk>
…ing.renumber_indices in FEniCS/ufl#305 Regolding only plain ufl and dolfinx tests. firedrake tests will be regolded after its ufl fork gets updated to include the above PR.
…ing.renumber_indices in FEniCS/ufl#305
Move group to resolve #304 by grouping prior to pull-back.
This will resolve FEniCS/ffcx#716 as well.
I think this is a better fix than what I came up with in https://github.com/FEniCS/ufl/pull/92/files
as we now group the integrals in the function that is supposed to do grouping, and it will reduce the load of the other functions (pull-back, geometry_lowering etc.) since it happens at the start of
compute_form_data
.