[petsc-dev] DMPlex with vertical numbering?

Matthew Knepley knepley at gmail.com
Wed Nov 13 10:50:27 CST 2013


On Tue, Nov 12, 2013 at 9:59 AM, Jed Brown <jedbrown at mcs.anl.gov> wrote:

> Michael Lange <michael.lange at imperial.ac.uk> writes:
>
> > Hi Matt,
> >
> > Thanks for the clarification, this does make sense. I have achieved the
> > local DoF ordering I want by only permuting the offsets in the created
> > section. However, I am now trying to extract the according halo exchange
> > information from the associated PetscSF object and, although the local
> > leafs have been renumbered according to my permutation, the roots they
> > are connected to have not been updated. Is there an easy way to update
> > the roots or re-initialise the PetscSF from the reordered section?
>
> You can SFBcast the new root numbers and create a new SF.
>
> Since this is a somewhat common operation that can be optimized by the
> SF implementation, it may make sense to provide PetscSFMoveRoots() or
> some such.
>

I did not read this closely enough. This is not the problem. You have not
changed
the point order, so the PetscSF should have been created correctly.  You
global
and local vectors will have different orders, but the exchange should be
correct.
We need a test for this case so everything can be explicit.

If you need the local and global orders to match, I think the best thing to
do is
create the global section yourself, which should be as easy as creating the
section.

   Matt

-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20131113/ad0c15ab/attachment.html>


More information about the petsc-dev mailing list