On Fri, Sep 30, 2016 at 3:08 PM, David Knezevic <[email protected]>
wrote:

> As discussed in an earlier thread, I'm planning to update some code to use
> GhostingFunctor instead of augment_sparsity. I figured I would follow the
> updates to misc_ex9 in order to understand how to do this, but I first
> wanted to check if I understand the GhostingFunctor code in that example.
>
> In particular, I'm not clear on how the sparsity pattern gets augmented
> now. I would have thought that we need to provide a list of element pairs
> to define the coupling between the dofs on each pair of elements. But from
> AugmentSparsityOnInterface::operator() in misc_ex9 it doesn't look like
> we specify element pairs at all? Instead it looks like we provide an input
> range of elements and we build up a list of elements that are coupled to at
> least one element in that range, but without specifying which elements are
> coupled to which. This seems sufficient for ghosting, but I'm not sure how
> it is sufficient for augmenting the sparsity pattern?
>
> I'm probably misunderstanding the code though so if someone could point me
> on the right track, that'd be great.
>


Ah, I think I see how this works. In sparsity_pattern.C we have the comment:

          // Make some fakey element iterators defining a range
          // pointing to only this element.

That answers my question. The element range that is passed to the ghosting
functor is just one element, so we do provide the element pair info that I
referred to in my previous email.

David
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to