#include "petscdmplex.h" PetscErrorCode DMPlexExtrude(DM dm, PetscInt layers, PetscReal thickness, PetscBool tensor, PetscBool symmetric, const PetscReal normal[], const PetscReal thicknesses[], DM *edm)
dm | - The surface mesh | |
layers | - The number of extruded layers | |
thickness | - The total thickness of the extruded layers, or PETSC_DETERMINE | |
tensor | - Flag to create tensor produt cells | |
symmetric | - Flag to extrude symmetrically about the surface | |
normal | - Surface normal vector, or NULL | |
thicknesses | - Thickness of each layer, or NULL |
edm | - The volumetric mesh |
v2----- e6 -----v5
| |
e2 face2 e4
| |
v1----- e5 -----v4
| |
e1 face1 e3
| |
v0--- original ----v3
-dm_plex_transform_extrude_thickness <t> | - The total thickness of extruded layers | |
-dm_plex_transform_extrude_use_tensor <bool> | - Use tensor cells when extruding | |
-dm_plex_transform_extrude_symmetric <bool> | - Extrude layers symmetrically about the surface | |
-dm_plex_transform_extrude_normal <n0,...,nd> | - Specify the extrusion direction | |
-dm_plex_transform_extrude_thicknesses <t0,...,tl> | - Specify thickness of each layer |