fdrmrc / Polydeal

C++ implementation of Polygonal Discontinuous Galerkin method within the deal.II Finite Element library.
https://fdrmrc.github.io/Polydeal/
Other
0 stars 0 forks source link

Localize setup #103

Closed fdrmrc closed 7 months ago

fdrmrc commented 7 months ago

Some data structures related to agglomeration had still size equal to the global size of the mesh. This PR removes them.

In particular:

The parallel layouts are taken from the distributed tria in the setup phase: https://github.com/fdrmrc/Polydeal/blob/28adfb172f5db935e5a778037d8a59ef9664284d/source/agglomeration_handler.cc#L166-L169

fdrmrc commented 7 months ago

@luca-heltai What do you think? Only relevant commits are 4d9f8fd and 28adfb1

luca-heltai commented 7 months ago

What happens now in the case of standard cells? I remember that in that case we would use the standard FEValues classes. Is this still the case?

fdrmrc commented 7 months ago

What happens now in the case of standard cells? I remember that in that case we would use the standard FEValues classes. Is this still the case?

Yes. Instead of having an enum, we just check if the agglomerate is made by one single cell, like here in the AgglomerationHandler<dim>::reinit(polytope):

https://github.com/fdrmrc/Polydeal/blob/a5b22f1d2874897fd2650b7ac02e20cc9de891aa/source/agglomeration_handler.cc#L497-L498

This was not done in this PR, so such a distinction was in some sense a leftover.