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

Reduce header inclusions of index_set.h in evaluation_kernels #14022

Merged
merged 1 commit into from Jun 24, 2022

Conversation

kronbichler
Copy link
Member

This PR removes the need to include index_set.h and partitioner.h from the expensive compute files matrix_free/evaluation_kernels.h. The untangle this dependency, I had to avoid including index_set.h from mpi.h (because aligned_vector.h necessarily includes mpi.h, and we need AlignedVector), for which I added a forward declaration and a few similar types IndexSet::size_type -> types::global_dof_index. The former is defined as the latter,

/**
* @p size_type is the type used for storing the size and the individual
* entries in the IndexSet.
*/
using size_type = types::global_dof_index;
so the change is equivalent. To further strengthen the link and avoid divergence in the two code paths, I added some static asserts.

@drwells drwells merged commit b5a598b into dealii:master Jun 24, 2022
@kronbichler kronbichler deleted the reduce_header_inclusions branch September 5, 2022 12:10
mkghadban pushed a commit to OpenFCST/dealii that referenced this pull request Sep 8, 2022
…ions

Reduce header inclusions of index_set.h in evaluation_kernels
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

3 participants