ablate::domain::modifiers::Modifier
ablate::domain::modifiers::DistributeWithGhostCells
Distribute DMPlex with ghost cells
- ghostCellDepth
- (int) the number of ghost cells to share on the boundary. Default is 1.
ablate::domain::modifiers::GhostBoundaryCells
Adds ghost cells to the boundary
- labelName
- (string) The label specifying the boundary faces, or “Face Sets” if not specified
ablate::domain::modifiers::CreateLabel
Creates a new label for all positive points in the function
- region (req)
- (ablate::domain::Region) the region describing the new label
- function (req)
- (ablate::mathFunctions::MathFunction) the function to evaluate
- depth
- (int) The depth in which to apply the label. The default is zero or cell/element
ablate::domain::modifiers::TagLabelBoundary
Creates a new label for all faces on the outside of the boundary
- region (req)
- (ablate::domain::Region) the region to tag the boundary
- boundaryFaceRegion (req)
- (ablate::domain::Region) the new region for the boundary faces
- boundaryCellRegion
- (ablate::domain::Region) the new region for the boundary cells
ablate::domain::modifiers::MergeLabels
Creates a new label for all faces on the outside of the boundary
- mergedRegion (req)
- (ablate::domain::Region) the merged region to create
- regions (req)
- (ablate::domain::Region list) the regions to include in the new merged region
ablate::domain::modifiers::IntersectLabels
Creates a new label that intersections the provided regions
- intersectRegion (req)
- (ablate::domain::Region) the intersect region to create/used
- regions (req)
- (ablate::domain::Region list) the regions to include in the intersection
ablate::domain::modifiers::SubtractLabel
Cuts/removes the given region (difference = minuend - subtrahend)
- differenceRegion (req)
- (ablate::domain::Region) the result of the operation
- minuendRegion (req)
- (ablate::domain::Region) the minuend region
- subtrahendRegions (req)
- (ablate::domain::Region list) the region(s) to be removed
- incompleteLabel
- (bool) determines if the DMPlexLabelComplete function for the new label is called. (true = DMPlexLabelComplete not called, false = DMPlexLabelComplete called, default is false
ablate::domain::modifiers::TagLabelInterface
Class to label/tag all faces/cells on the interface between two labels. The left/right designations are just used to separate the left/right labels.
- leftRegion (req)
- (ablate::domain::Region) the “left” region
- rightRegion (req)
- (ablate::domain::Region) the “right” region
- boundaryFaceRegion (req)
- (ablate::domain::Region) the new region for the newly tagged boundary faces
- leftBoundaryCellRegion
- (ablate::domain::Region) optional new region to tag the boundary cells on the “left” of region
- rightBoundaryCellRegion
- (ablate::domain::Region) optional new region to tag the boundary cells on the “right” of region
ablate::domain::modifiers::ExtrudeLabel
Extrudes a layer of cells based upon the region provided
- regions (req)
- (ablate::domain::Region list) the region(s) describing the boundary cells
- boundaryRegion (req)
- (ablate::domain::Region) the new label describing the faces between the original and extruded regions
- originalRegion (req)
- (ablate::domain::Region) the region describing the original mesh
- extrudedRegion (req)
- (ablate::domain::Region) the region describing the new extruded cells
- thickness
- (double) thickness for the extruded cells. If default (0) the 2 * minimum cell radius is used
ablate::domain::modifiers::TagMeshBoundaryFaces
Mark/tag all faces on the boundary of the mesh
- region (req)
- (ablate::domain::Region) the new region for the boundary faces
ablate::domain::modifiers::CompleteLabel
Wrapper for DMPlexLabelComplete. Complete the labels; such that if your label includes all faces, all vertices connected are also labeled.
- region (req)
- (ablate::domain::Region) the region describing the label to complete
ablate::domain::modifiers::DMPlexCheck
Calls the DMPlexCheck petsc function
ablate::domain::modifiers::FvmCheck
The FVM check marches over each face in a mesh region, sums the contributions for each cell in the region to ensure they sum to 0.0
- region
- (ablate::domain::Region) the region describing the boundary cells, default is everywhere
- expectedFaceCount
- (int) if specified, the fvmCheck each cell for the correct number of faces
- expectedNodeCount
- (int) if specified, the fvmCheck each cell for the correct number of nodes
ablate::domain::modifiers::MeshMapper
Maps the x,y,z coordinate of the domain mesh by the given function.
ablate::domain::modifiers::MeshMapperWithRegion
Maps the x,y,z coordinate of the domain mesh by the given function within a specified region.
- function (req)
- (ablate::mathFunctions::MathFunction) The function to apply to the coordinates
- region (req)
- (ablate::domain::Region) The region to apply the mapping function
ablate::domain::modifiers::CreateCoordinateSpace
Wrapper for DMPlexCreateCoordinateSpace
- degree (req)
- (int) degree of the finite element
ablate::domain::modifiers::Translate
Translate the x,y,z coordinate of the domain mesh by the values.
ablate::domain::modifiers::OnePointClusteringMapper
Performs clustering mapping using an algebraic relationship around one point using Equation 9-50 from Hoffmann, Klaus A., and Steve T. Chiang. “Computational fluid dynamics volume I. Forth Edition” Engineering education system (2000). \(x'=D \left [ 1+\frac{sinh[\beta(x-A))]}{sinh(\beta A)} \right ]\) where \(A=\frac{1}{2 \beta}ln \left [ \frac{1+(e^\beta - 1)(D/H)}{1+(e^{-\beta} - 1)(D/H)} \right ]\), \(D =\)cluster location, and \(\beta =\) cluster factor
- direction (req)
- (int) The direction (0, 1, 2) to perform the mapping
- start (req)
- (double) The start of the domain in direction
- end (req)
- (double) The end of the domain in direction
- beta (req)
- (double) The clustering factor (0 -> infinity, where infinity is more clustering)
- location (req)
- (double) The location to perform the clustering in direction
- region
- (ablate::domain::Region) optional region to apply this mapper (Default is everywhere)
ablate::domain::modifiers::EdgeClusteringMapper
Performs clustering mapping using an algebraic relationship at the edges of the domain using Equation 9-42 from Hoffmann, Klaus A., and Steve T. Chiang. “Computational fluid dynamics volume I. Forth Edition” Engineering education system (2000).
- direction (req)
- (int) The direction (0, 1, 2) to perform the mapping
- start (req)
- (double) The start of the domain in direction
- end (req)
- (double) The end of the domain in direction
- beta (req)
- (double) The clustering factor (1 -> infinity, where 1 is more clustering)
- region
- (ablate::domain::Region) optional region to apply this mapper (Default is everywhere)
ablate::domain::modifiers::TwoPointClusteringMapper
Performs clustering mapping using an algebraic relationship around two point using equations derived from Hoffmann, Klaus A., and Steve T. Chiang. “Computational fluid dynamics volume I. Forth Edition” Engineering education system (2000).
- direction (req)
- (int) The direction (0, 1, 2) to perform the mapping
- start (req)
- (double) The start of the domain in direction
- end (req)
- (double) The end of the domain in direction
- beta (req)
- (double) The clustering factor (0 -> infinity, where infinity is more clustering)
- location (req)
- (double) The location to cluster center
- offset (req)
- (double) The offset from the location center to perform the clustering
- region
- (ablate::domain::Region) optional region to apply this mapper (Default is everywhere)
ablate::domain::modifiers::CollapseLabels
Collapse all set values in a label to the provided value in each region. This also completes each label.
- regions (req)
- (ablate::domain::Region list) the regions to collapse
ablate::domain::modifiers::PrintDomainSummary
Prints a short summary of the domain to std out
ablate::monitors::DmViewFromOptions
replicates the DMViewFromOptions function in PETSC
- options
- (string) if provided these options are used for the DMView call, otherwise global options is used
- optionName
- (string) if provided the optionsName is used for DMViewFromOptions. Needed if using global options.