[petsc-users] Is it possible to keep track of original elements # after a call to DMPlexDistribute ?
Eric Chamberland
Eric.Chamberland at giref.ulaval.ca
Wed Jul 14 15:58:14 CDT 2021
Hi Matthew,
Ok, I did that but it segfault now. Here are the order of the calls:
DMPlexCreate
DMSetDimension
DMPlexBuildFromCellListParallel(...)
DMPlexInterpolate
PetscPartitioner lPart;
DMPlexGetPartitioner(lDMSansOverlap, &lPart);
PetscPartitionerSetFromOptions(lPart);
DMSetUseNatural(lDMSansOverlap, PETSC_TRUE)
DMPlexDistribute
DMPlexGlobalToNaturalBegin
DMPlexGlobalToNaturalEnd
But it gives me the following error:
0]PETSC ERROR: --------------------- Error Message
--------------------------------------------------------------
[0]PETSC ERROR: Petsc has generated inconsistent data
[0]PETSC ERROR: DM global to natural SF not present.
If DMPlexDistribute() was called and a section was defined, report to
petsc-maint at mcs.anl.gov.
[0]PETSC ERROR: See https://www.mcs.anl.gov/petsc/documentation/faq.html
for trouble shooting.
[0]PETSC ERROR: Petsc Release Version 3.15.0, Mar 30, 2021
[0]PETSC ERROR: MEF++.dev on a named rohan by ericc Wed Jul 14 16:57:48
2021
[0]PETSC ERROR: Configure options
--prefix=/opt/petsc-3.15.0_debug_openmpi-4.1.0_gcc7
--with-mpi-compilers=1 --with-mpi-dir=/opt/openmpi-4.1.0_gcc7
--with-cxx-dialect=C++14 --with-make-np=12 --with-shared-libraries=1
--with-debugging=yes --with-memalign=64 --with-visibility=0
--with-64-bit-indices=0 --download-ml=yes --download-mumps=yes
--download-superlu=yes --download-hpddm=yes --download-slepc=yes
--download-superlu_dist=yes --download-parmetis=yes
--download-ptscotch=yes --download-metis=yes --download-strumpack=yes
--download-suitesparse=yes --download-hypre=yes
--with-blaslapack-dir=/opt/intel/oneapi/mkl/2021.1.1/env/../lib/intel64
--with-mkl_pardiso-dir=/opt/intel/oneapi/mkl/2021.1.1/env/..
--with-mkl_cpardiso-dir=/opt/intel/oneapi/mkl/2021.1.1/env/..
--with-scalapack=1
--with-scalapack-include=/opt/intel/oneapi/mkl/2021.1.1/env/../include
--with-scalapack-lib="-L/opt/intel/oneapi/mkl/2021.1.1/env/../lib/intel64
-lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64"
[0]PETSC ERROR: #1 DMPlexGlobalToNaturalBegin() at
/tmp/ompi-opt/petsc-3.15.0-debug/src/dm/impls/plex/plexnatural.c:245
What did I missed?
Thanks a lot!
Eric
On 2021-07-14 3:09 p.m., Matthew Knepley wrote:
> On Wed, Jul 14, 2021 at 1:18 PM Eric Chamberland
> <Eric.Chamberland at giref.ulaval.ca
> <mailto:Eric.Chamberland at giref.ulaval.ca>> wrote:
>
> Hi,
>
> I want to use DMPlexDistribute from PETSc for computing
> overlapping and
> play with the different partitioners supported.
>
> However, after calling DMPlexDistribute, I noticed the elements are
> renumbered and then the original number is lost.
>
> What would be the best way to keep track of the element renumbering?
>
> a) Adding an optional parameter to let the user retrieve a vector or
> "IS" giving the old number?
>
> b) Adding a DMLabel (seems a wrong good solution)
>
> c) Other idea?
>
> Of course, I don't want to loose performances with the need of this
> "mapping"...
>
>
> You need to call
>
> https://petsc.org/release/docs/manualpages/DM/DMSetUseNatural.html
> <https://petsc.org/release/docs/manualpages/DM/DMSetUseNatural.html>
>
> before call DMPlexDistribute(). Then you can call
>
> https://petsc.org/release/docs/manualpages/DMPLEX/DMPlexGlobalToNaturalBegin.html
> <https://petsc.org/release/docs/manualpages/DMPLEX/DMPlexGlobalToNaturalBegin.html>
>
> to map back to the original numbering if you want. This is the same
> thing that DMDA is doing.
>
> Thanks,
>
> Matt
>
> Thanks,
>
> Eric
>
> --
> Eric Chamberland, ing., M. Ing
> Professionnel de recherche
> GIREF/Université Laval
> (418) 656-2131 poste 41 22 42
>
>
>
> --
> 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
>
> https://www.cse.buffalo.edu/~knepley/
> <http://www.cse.buffalo.edu/~knepley/>
--
Eric Chamberland, ing., M. Ing
Professionnel de recherche
GIREF/Université Laval
(418) 656-2131 poste 41 22 42
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20210714/63ccd677/attachment.html>
More information about the petsc-users
mailing list