DMPLEX#
“plex” - A DM object that encapsulates an unstructured mesh (or grid), or CW Complex [Wik15b], which can be expressed using a Hasse Diagram [Wik15a]. In the local representation, Vecs contain all unknowns in the interior and shared boundary. This is specified by a PetscSection object. Ownership in the global representation is determined by ownership of the underlying DMPLEX points. This is specified by another PetscSection object.
Options Database Keys#
-dm_refine_pre times - Refine mesh before distribution, possibly multiple times
-dm_refine_uniform_pre (true|false) - Choose uniform or generator-based refinement
-dm_refine_volume_limit_pre vol - Cell volume limit after pre-refinement using generator
-dm_distribute (true|false) - Distribute mesh across processes
-dm_distribute_overlap num - Number of cells to overlap for distribution
-dm_refine - Refine mesh after distribution
-dm_localize (true|false) - Whether to localize coordinates for periodic meshes
-dm_sparse_localize (true|false) - Whether to only localize cells on the periodic boundary
-dm_plex_hash_location (true|false) - Use grid hashing for point location
-dm_plex_hash_box_faces n,m,p - The number of divisions in each direction of the grid hash
-dm_plex_partition_balance (true|false) - Attempt to evenly divide points on partition boundary between processes
-dm_plex_remesh_bd (true|false) - Allow changes to the boundary on remeshing
-dm_plex_max_projection_height height - Maximum mesh point height used to project locally
-dm_plex_regular_refinement (true|false) - Use special nested projection algorithm for regular refinement
-dm_plex_reorder_section (true|false) - Use specialized blocking if available
-dm_plex_check_all (true|false) - Perform all checks below
-dm_plex_check_symmetry (true|false) - Check that the adjacency information in the mesh is symmetric
-dm_plex_check_skeleton (true|false) - Check that each cell has the correct number of vertices
-dm_plex_check_faces (true|false) - Check that the faces of each cell give a vertex order this is consistent with what we expect from the cell type
-dm_plex_check_geometry (true|false) - Check that cells have positive volume
-dm_view :mesh.tex:ascii_latex - View the mesh in LaTeX/TikZ
-dm_plex_view_scale num - Scale the TikZ
-dm_plex_print_fem num - View FEM assembly information, such as element vectors and matrices
-dm_plex_print_fvm num - View FVM assembly information, such as flux updates
References#
Wikipedia. Hasse diagram. 2015. http://en.wikipedia.org/wiki/Hasse_diagram. URL: http://en.wikipedia.org/wiki/Hasse_diagram.
Wikipedia. CW complex. 2015. http://en.wikipedia.org/wiki/CW_complex. URL: http://en.wikipedia.org/wiki/CW_complex.
See Also#
DMPlex: Unstructured Grids, DM, DMPLEX, DMType, DMPlexCreate(), DMCreate(), DMSetType(), PetscSection
Level#
intermediate
Location#
Examples#
src/snes/tutorials/ex71.c
src/mat/tutorials/ex18.c
src/snes/tutorials/ex8.c
src/snes/tutorials/ex12.c
src/snes/tutorials/ex23.c
src/snes/tutorials/ex17.c
Index of all DMPlex routines
Table of Contents for all manual pages
Index of all manual pages