DMPLEX Examples

The DMPLEX class encapsulates an unstructured mesh, with interfaces for both topology and geometry. It is capable of parallel refinement and coarsening (using Pragmatic) and parallel redistribution for load balancing. It is designed to interface with the PetscFE and PetscFV trial discretization objects.

Beginner - Basic usage
DMPlexAddConeSize DMPlexCreateGmshFromFile DMPlexInsertCone
DMPlexComputeGeometryFEM DMPlexCreateHexCylinderMesh DMPlexInsertConeOrientation
DMPlexCreate DMPlexCreateMedFromFile DMPlexInsertSupport
DMPlexCreateBallMesh DMPlexCreatePLYFromFile DMPlexRestoreTransitiveClosure
DMPlexCreateBoxMesh DMPlexCreateSphereMesh DMPlexSetChart
DMPlexCreateBoxSurfaceMesh DMPlexCreateWedgeBoxMesh DMPlexSetCone
DMPlexCreateCGNS DMPlexCreateWedgeCylinderMesh DMPlexSetConeOrientation
DMPlexCreateCellVertexFromFile DMPlexGetChart DMPlexSetConeSize
DMPlexCreateDoublet DMPlexGetCone DMPlexSetSupport
DMPlexCreateEGADSFromFile DMPlexGetConeOrientation DMPlexSetSupportSize
DMPlexCreateExodus DMPlexGetConeSize DMPlexStratify
DMPlexCreateExodusFromFile DMPlexGetMaxSizes DMPlexSymmetrize
DMPlexCreateFluent DMPlexGetSupport PETSCVIEWEREXODUSII
DMPlexCreateFluentFromFile DMPlexGetSupportSize PetscViewerExodusIIGetOrder
DMPlexCreateFromFile DMPlexGetTransitiveClosure PetscViewerExodusIIOpen
DMPlexCreateGmsh DMPlexGetTransitiveClosure_Internal PetscViewerExodusIISetOrder
Intermediate - Setting options for algorithms and data structures
DMGetEnclosurePoint DMPlexGetMigrationSF DMPlexPointGlobalFieldRef
DMGetEnclosureRelation DMPlexGetOrdering DMPlexPointGlobalRead
DMPLEX DMPlexGetOverlap DMPlexPointGlobalRef
DMPlexComputeOrthogonalQuality DMPlexGetPartitionBalance DMPlexPointLocalFieldRead
DMPlexCoordinatesToReference DMPlexGetPointDepth DMPlexPointLocalFieldRef
DMPlexCopyCoordinates DMPlexGetPointGlobal DMPlexPointLocalRead
DMPlexCreateClosureIndex DMPlexGetPointGlobalField DMPlexPointLocalRef
DMPlexCreateDefaultReferenceTree DMPlexGetPointHeight DMPlexRebalanceSharedPoints
DMPlexCreateFromCellListParallelPetsc DMPlexGetPointLocal DMPlexReferenceToCoordinates
DMPlexCreateFromCellListPetsc DMPlexGetPointLocalField DMPlexRemapGeometry
DMPlexCreateGlobalToNaturalSF DMPlexGetRedundantDM DMPlexRestoreJoin
DMPlexCreateLabelField DMPlexGetReferenceTree DMPlexRestoreMeet
DMPlexCreateRankField DMPlexGetRegularRefinement DMPlexSetAdjacencyUseAnchors
DMPlexCreateReferenceCell DMPlexGetTree DMPlexSetAnchors
DMPlexDistribute DMPlexGetTreeChildren DMPlexSetCellRefinerType
DMPlexEqual DMPlexGetTreeParent DMPlexSetGlobalToNaturalSF
DMPlexFindVertices DMPlexGlobalToNaturalBegin DMPlexSetMigrationSF
DMPlexGenerate DMPlexGlobalToNaturalEnd DMPlexSetPartitionBalance
DMPlexGetAdjacencyUseAnchors DMPlexInterpolate DMPlexSetReferenceTree
DMPlexGetAnchors DMPlexIsDistributed DMPlexSetRegularRefinement
DMPlexGetCellRefinerType DMPlexIsInterpolated DMPlexSetTree
DMPlexGetCellType DMPlexIsInterpolatedCollective DMPlexShearGeometry
DMPlexGetConeTuple DMPlexIsSimplex DMPlexSnapToGeomModel
DMPlexGetFullJoin DMPlexMatSetClosure DMPlexUninterpolate
DMPlexGetFullMeet DMPlexMigrate DMPlexVecGetClosure
DMPlexGetGatherDM DMPlexNaturalToGlobalBegin DMPlexVecRestoreClosure
DMPlexGetGlobalToNaturalSF DMPlexNaturalToGlobalEnd DMPlexVecSetClosure
DMPlexGetJoin DMPlexOrientCell PetscViewerExodusIIGetId
DMPlexGetMaxProjectionHeight DMPlexPermute
DMPlexGetMeet DMPlexPointGlobalFieldRead
Advanced - Setting more advanced options and customization
DMCreateNeumannOverlap DMPlexDistributeOverlap DMPlexLocalVectorView
DMPlexBuildCoordinatesFromCellList DMPlexExtrude DMPlexOrient
DMPlexBuildCoordinatesFromCellListParallel DMPlexGenerateRegister DMPlexPreallocateOperator
DMPlexBuildFromCellList DMPlexGenerateRegisterAll DMPlexRestoreClosureIndices
DMPlexBuildFromCellListParallel DMPlexGetAdjacency DMPlexRestoreConeRecursive
DMPlexCompareOrientations DMPlexGetAdjacencyUser DMPlexReverseCell
DMPlexComputeCellGeometryAffineFEM DMPlexGetClosureIndices DMPlexSectionLoad
DMPlexComputeCellGeometryFEM DMPlexGetConeRecursive DMPlexSectionView
DMPlexComputeCellGeometryFVM DMPlexGetConeRecursiveVertices DMPlexSetAdjacencyUser
DMPlexCoordinatesLoad DMPlexGetGhostCellStratum DMPlexSetCellType
DMPlexCoordinatesView DMPlexGetScale DMPlexSetMaxProjectionHeight
DMPlexCreateCoordinateSpace DMPlexGlobalVectorLoad DMPlexSetOptionsPrefix
DMPlexCreateFromDAG DMPlexGlobalVectorView DMPlexSetScale
DMPlexCreateNeighborCSR DMPlexLabelsLoad DMPlexTopologyLoad
DMPlexCreateRigidBodies DMPlexLabelsView DMPlexTopologyView
DMPlexCreateRigidBody DMPlexLocalVectorLoad
Developer - Interfaces intended primarily for library developers, not for typical applications programmers
DMComputeL2DiffLocal DMPlexCreateTwoSidedProcessSF DMPlexInsertBoundaryValuesEssentialField
DMPlexCellRefinerGetAffineFaceTransforms DMPlexDistributeData DMPlexInsertBoundaryValuesRiemann
DMPlexCellRefinerGetAffineTransforms DMPlexDistributeField DMPlexInsertTimeDerivativeBoundaryValues
DMPlexCellRefinerRefine DMPlexDistributeFieldIS DMPlexInterpolatePointSF
DMPlexCheckCellShape DMPlexDistributeOwnership DMPlexInvertCell
DMPlexCheckFaces DMPlexFilter DMPlexLabelAddCells
DMPlexCheckGeometry DMPlexGetActivePoint DMPlexLabelAddFaceCells
DMPlexCheckInterfaceCones DMPlexGetCellFields DMPlexLabelClearCells
DMPlexCheckPointSF DMPlexGetCellNumbering DMPlexLabelCohesiveComplete
DMPlexCheckSkeleton DMPlexGetCellTypeLabel DMPlexLabelComplete
DMPlexCheckSymmetry DMPlexGetConeOrientations DMPlexLocalToGlobalBasis
DMPlexComputeBdIntegral DMPlexGetConeSection DMPlexMarkBoundaryFaces
DMPlexComputeCellTypes DMPlexGetCones DMPlexMonitorThroughput
DMPlexComputeCellwiseIntegralFEM DMPlexGetDataFVM DMPlexPartitionLabelAdjacency
DMPlexComputeGeometryFVM DMPlexGetDepth DMPlexPartitionLabelClosure
DMPlexComputeGradientClementInterpolant DMPlexGetDepthLabel DMPlexPartitionLabelCreateSF
DMPlexComputeGradientFVM DMPlexGetDepthStratum DMPlexPartitionLabelInvert
DMPlexComputeInjectorFEM DMPlexGetFaceFields DMPlexPartitionLabelPropagate
DMPlexComputeIntegralFEM DMPlexGetFaceGeometry DMPlexReconstructGradientsFVM
DMPlexComputeInterpolatorGeneral DMPlexGetGeometryFVM DMPlexReferenceTreeGetChildSymmetry
DMPlexComputeInterpolatorNested DMPlexGetGradientDM DMPlexReorderCell
DMPlexComputeL2DiffVec DMPlexGetHeightStratum DMPlexRestoreCellFields
DMPlexComputeMassMatrixGeneral DMPlexGetMinRadius DMPlexRestoreFaceFields
DMPlexComputeProjection2Dto1D DMPlexGetNumFaceVertices DMPlexRestoreFaceGeometry
DMPlexComputeProjection3Dto1D DMPlexGetOrientedFace DMPlexRewriteSF
DMPlexComputeProjection3Dto2D DMPlexGetPartitioner DMPlexSetActivePoint
DMPlexConstructCohesiveCells DMPlexGetRefinementFunction DMPlexSetClosurePermutationTensor
DMPlexConstructGhostCells DMPlexGetRefinementLimit DMPlexSetMinRadius
DMPlexCreateBasisRotation DMPlexGetRefinementUniform DMPlexSetPartitioner
DMPlexCreateCoarsePointIS DMPlexGetSimplexOrBoxCells DMPlexSetRefinementFunction
DMPlexCreateCohesiveSubmesh DMPlexGetSubdomainSection DMPlexSetRefinementLimit
DMPlexCreateHybridMesh DMPlexGetSubpointIS DMPlexSetRefinementUniform
DMPlexCreateOverlapLabel DMPlexGetSubpointMap DMPlexSetSubpointMap
DMPlexCreateOverlapMigrationSF DMPlexGetSupportSection DMPlexSetVTKCellHeight
DMPlexCreatePartitionerGraph DMPlexGetVTKCellHeight DMPlexStratifyMigrationSF
DMPlexCreatePointNumbering DMPlexGetVertexNumbering DMPlexTetgenSetOptions
DMPlexCreatePointSF DMPlexGlobalToLocalBasis DMPlexTransferVecTree
DMPlexCreateProcessSF DMPlexInsertBoundaryValues DMPlexTriangleSetOptions
DMPlexCreateSection DMPlexInsertBoundaryValuesEssential DMPlexVTKWriteAll
DMPlexCreateSubmesh DMPlexInsertBoundaryValuesEssentialBdField PetscPartitionerDMPlexPartition
Deprecated - Functionality scheduled for removal in future versions
DMPlexCreateFromCellList DMPlexCreateFromCellListParallel

Table of Contents