Skip to content
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

DoFAccessor: Streamline access to dof indices #14063

Merged
merged 1 commit into from Jun 28, 2022

Conversation

kronbichler
Copy link
Member

In preparation for #2000, this PR does three related things:

  • Extract array pointers for simpler access to objects when FE::n_dofs_per_object is larger than 1, rather than forcing the compiler to deduce these properties. Note that sometimes the compiler is able to make these deductions by itself (when we do not write data anywhere, so no possible pointer aliasing), but often it is not. This is similar to a change used in DoFHandlerPolicy: Speed up function renumber_face_mg_dofs #14051.
  • Inline the process_object function to get all code in one place, and make it work with the pointers rather than some additional index for better code generation.
  • Move the get_dof_indices and get_mg_dof_indices to the dof_accessor.cc file, because we do not want to generate the code stepping through all objects every time we call those functions. This is a big function anyway, so it is best done there.

@drwells drwells merged commit 45f6041 into dealii:master Jun 28, 2022
@kronbichler kronbichler deleted the improve_access_to_dofs branch June 28, 2022 21:07
mkghadban pushed a commit to OpenFCST/dealii that referenced this pull request Sep 8, 2022
DoFAccessor: Streamline access to dof indices
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants