On Wed, Jul 6, 2022 at 12:57 PM Mike Michell <mi.mike1...@gmail.com> wrote:
> Hi, I am using DMPlex for a FVM code written in Fortran that uses > DMPlexCreateSection() to prepare an output file in vtu format. A domain of > interest has around 5000 node points and with small number of processors > (such as nproc=3), the DMPlexCreateSection() works fine. However, if a > larger number of procs (such as nproc=20) is used, DMPlexCreateSection() > crashes with error message below. It looks very similar problem in a > previous PETSc user inquiry: " [petsc-dev] DMPlexCreateSection crash in a > no-boundary corner case > <https://lists.mcs.anl.gov/pipermail/petsc-dev/2013-November/014049.html>" > Yes, the recommendation is not to pass a NULL PetscIS to the AddBoundary() routine. Are you doing this? Thanks, Matt > When I call DMPlexCreateSection(), a nullified pointer > "nolabel(:)=>NULL()" is provided. What is a possible solution to this > problem? It looks like there is a problem with a processor that does not > have any boundaries. A piece of the source code is attached to show how > the DMPlexCreateSection() is used in the code. > > Thanks, > Mike > > [16]PETSC ERROR: --------------------- Error Message > -------------------------------------------------------------- > [16]PETSC ERROR: Null argument, when expecting valid pointer > [16]PETSC ERROR: Null Pointer: Parameter # 1 > [16]PETSC ERROR: See https://petsc.org/release/faq/ for trouble shooting. > [16]PETSC ERROR: Petsc Release Version 3.17.0, unknown > [16]PETSC ERROR: #1 ISGetLocalSize() at > [16]PETSC ERROR: #2 DMPlexCreateSectionBCDof() at > [16]PETSC ERROR: #3 DMPlexCreateSection() at > -- 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/>