-
Notifications
You must be signed in to change notification settings - Fork 15
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
Full support for ghosted/unghosted distributed triangulations #100
base: master
Are you sure you want to change the base?
Conversation
Hi Jordi, I was having a look at this and I think |
I've added this in #101 |
Distributed ghost skeleton
Hi @JordiManyer, I think that for This is added in #104 Additionally, I have some questions, but if this is not the place to ask these, then please let me know and I'll remove them from this post. In https://github.com/gridap/GridapEmbedded.jl/blob/6850b686cc41cf5a018436377fc35efa63e60ed2/src/Distributed/DistributedDiscretizations.jl#L60C1-L67C4 it is stated in the comment that the default portion is I'm asking because, I have a box domain and an embedded boundary piercing through the top of this domain and thus I'd like to obtain the physical boundary at the top. I noticed that if I run ![]() |
Check in to leave a note on the question I had, it appears that |
In
GridapDistributed
, we generally allow the creation of ghosted/unghosted versions of objects. Although generally we require unghosted triangulations for integration, having both is usually required for more complex stuff.The original version of the distributed code does not allow this. In fact, the code avoids doing cuts on ghosted cells. This was probably done to avoid repeating work, but it limits the potential of the distributed code. One example where the current implementation is not flexible enough is taking Skeleton/Boundary triangulations of a distributed
SubFacetTriangulation
, where we require access to the cuts on ghost cells in order to properly distinguish between interior and boundary faces.In terms of performance, I would argue that creating model views to create the cuts and then mapping the cuts back to the original model is a lot more costly than doing the cuts on the ghost cells then masking out the result.
This also results is quite a lot less code, and better one-to-one comparison with what we do in
GridapDistributed
.All in all, I propose changes to address all the above.