[petsc-users] dmplex extruded layers

Bhargav Subramanya bhargav.subramanya at kaust.edu.sa
Mon Nov 22 11:09:11 CST 2021


Dear All,

I have a prismatic mesh generated by extruding a base icosahedron
spherical surface mesh. The mesh is distributed on 2 processes after
extrusion. The dof for my problem are defined only on the simplices of the
spherical layers.

1. For a given spherical layer, I want to get points, which are basically
simplices, lying on that layer only. DMPlexGetHeightStratum returns the
points on all the spherical Layers. I can probably use DMPlexFindVertices
(based on the radius of the spherical layer) and
DMPlexGetSimplexOrBoxCells. Could you suggest if there is a better way to
retrieve the points (which are simplices) on a given spherical layer in the
extruded mesh?

2. I am able to visualize the entire mesh using dm_view. Is there a way to
get the mesh file for the local dm from a specific process?

3. One of my previous emails might have got lost as I mistakenly attached a
large mesh file and sent it. So I am repeating the question here.
DMPlexExtrude gives the following error after distributing the base 2D
spherical mesh. Both refinement or/and extrusion after dm distribution does
not work for me. In fact, I tried with src/dm/impls/plex/tutorials/ex10.c
also. Although the mesh is distributed after the extrusion in ex10.c (which
is working fine for me), I tried to distribute before extrusion, and I get
the following error. Could you please suggest where I might be making a
mistake?

[0]PETSC ERROR: --------------------- Error Message
--------------------------------------------------------------
[0]PETSC ERROR: Object is in wrong state
[0]PETSC ERROR: This DMPlex is distributed but its PointSF has no graph set
[0]PETSC ERROR: See https://petsc.org/release/faq/ for trouble shooting.
[0]PETSC ERROR: Petsc Release Version 3.16.1, unknown
[0]PETSC ERROR: ./cavity_flow.out on a arch-darwin-c-debug named kl-21859
by subrambm Mon Nov 22 19:47:14 2021
[0]PETSC ERROR: Configure options --with-cc=gcc --with-cxx=g++
--with-fc=gfortran --download-mpich --download-fblaslapack
--download-superlu_dist --download-hypre --download-fiat
--download-generator --download-triangle --download-tetgen --download-chaco
--download-make -download-boost --download-cmake --download-ml
--download-mumps=https://bitbucket.org/petsc/pkg-mumps.git
--download-mumps-commit=v5.4.1-p1 --download-scalapack --download-ptscotch
--download-hdf5 --force
[0]PETSC ERROR: #1 DMPlexCheckPointSF() at
/Users/subrambm/petsc/src/dm/impls/plex/plex.c:8554
[0]PETSC ERROR: #2 DMPlexOrientInterface_Internal() at
/Users/subrambm/petsc/src/dm/impls/plex/plexinterpolate.c:595
[0]PETSC ERROR: #3 DMPlexInterpolate() at
/Users/subrambm/petsc/src/dm/impls/plex/plexinterpolate.c:1357
[0]PETSC ERROR: #4 DMPlexExtrude() at
/Users/subrambm/petsc/src/dm/impls/plex/plexcreate.c:1543
[0]PETSC ERROR: #5 CreateMesh() at ex10.c:161
[0]PETSC ERROR: #6 main() at ex10.c:180
[0]PETSC ERROR: PETSc Option Table entries:
[0]PETSC ERROR: -dm_plex_extrude_layers 3
[0]PETSC ERROR: -dm_view vtk:mesh.vtk
[0]PETSC ERROR: -init_dm_plex_dim 2
[0]PETSC ERROR: -petscpartitioner_type simple
[0]PETSC ERROR: -srf_dm_distribute
[0]PETSC ERROR: -srf_dm_refine 0
[0]PETSC ERROR: ----------------End of Error Message -------send entire
error message to petsc-maint at mcs.anl.gov----------

Thanks,
Bhargav

-- 

This message and its contents, including attachments are intended solely 
for the original recipient. If you are not the intended recipient or have 
received this message in error, please notify me immediately and delete 
this message from your computer system. Any unauthorized use or 
distribution is prohibited. Please consider the environment before printing 
this email.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20211122/48e0bec0/attachment-0001.html>


More information about the petsc-users mailing list