- gridBoundaryFunc
gridBoundaryFunc
UserFuncs of kind = gridBoundaryFunc return a result with
information a <GridBoundary> object, i.e., information
related to a surface (described by the <GridBoundary>).
UserFuncs of kind = gridBoundaryFunc take one argument, a
cell index (a vector of integers with as many elements as spatial
dimensions), and return information about the GridBoundary
surface in that cell, depending on the result attribute.
gridBoundaryFunc parameters
- gridBoundary (string, required)
The name of the
<GridBoundary>object to query for information.
- result (string, required)
Specifies what information the function should return; depending on
result, different attributes will apply.gridBoundaryFunc results that return an “interiorness” value specify whether a region is inside, outside, or cut by the boundary; these results should, if possible, be used as arguments to the functions isInside, isInterior, isOutside, isExterior, isCutByBndry (see Built-in functions for use with GridBoundaries). In the following, references to a node, a face, or an edge, refer to the node, face, or edge of the cell specified by the CellFunc argument (and also the
dirattribute if appropriate).Following is a list of results, the length and type of the vector returned, and the extra attributes (if any) that pertain to each specific result.
- nodeInteriorness (returns 1 integer)
result = nodeInteriornessreturns the interiorness of a node.
- cellInteriorness (1 integer)
result = cellInteriornessreturns the interiorness of a cell.
- dualCellInteriorness (1 integer)
result = dualCellInteriornessreturns the interiorness of a dual-grid cell.
- cellCenterInteriorness (1 integer)
result = cellCenterInteriornessreturns the interiorness of the cell center (a point).
- edgesInteriorness (3 integers)
result = edgesInteriornessreturns the interiorness of all 3 edges.
- dualEdgesInteriorness (3 integers)
result = dualEdgesInteriornessreturns the interiorness of all 3 edges of the dual-grid cell.
- facesInteriorness (3 integers)
result = facesInteriornessreturns the interiorness of all 3 faces.
- dualFacesInteriorness (3 integers)
result = dualFacesInteriornessreturns the interiorness of all 3 faces of the dual-grid cell.
- cellInsideCentroid (NDIM floats)
result = cellInsideCentroideturns the centroid of the interior volume of the cell.
- cellOutsideCentroid (NDIM floats)
result = cellOutsideCentroidreturns the centroid of the exterior volume of the cell.
- surfaceCentroid (NDIM floats)
result = surfaceCentroidreturns the centroid of the boundary surface cutting through the cell, or the zero vector if the cell is not cut by the boundary.
- surfaceCenter (NDIM floats)
result = surfaceCenterreturns a point which is approximately the centroid of the boundary surface cutting through the cell, but is approximately on the surface even if the surface is curved; if the cell is not cut by the boundary, returns the zero vector.
- cellVolFrac (1 float)
result = cellVolFracreturns the fraction of the cell volume that is interior to the gridBoundary.
- facesAreDmNeglected (3 boolean)
result = facesAreDmNeglectedreturns whether the 3 faces (that touch the node) of the cell would be neglected by the Dey-Mittra Faraday update, given the gridBoundary’s dmFrac.
- surfaceArea (1 float)
result = surfaceAreareturns the area of the gridBoundary surface cutting through the cell.
- surfaceOutwardArea (NDIM floats)
result = surfaceOutwardAreareturns a vector with direction in the surface-outward-normal and length equal to the surfaceArea within the cell.
- surfaceOutwardArea3D (3 floats)
result = surfaceOutwardArea3Dreturns a vector with direction in the surface-outward-normal and length equal to the surfaceArea within the cell.
- surfaceOutwardUnitNormal (NDIM floats)
result = surfaceOutwardUnitNormalreturns a unit vector with direction in the surface-outward-normal.
- surfaceOutwardUnitNormal3D (3 floats)
result = surfaceOutwardUnitNormal3Dreturns a unit vector with direction in the surface-outward-normal.
- ndimZeroVector (NDIM booleans)
result = ndimZeroVectorreturns NDIM zeros (this canbe convenient for figuring out the spatial dimension).
- edgeInteriorness (1 integer)
result = edgeInteriornessreturns the interiorness of an edge.- dir (required; 0, 1, or 2)
The direction of the desired edge.
- dualEdgeInteriorness (1 integer)
result = dualEdgeInteriornessreturns the interiorness of a dual-grid edge.- dir (required; 0, 1, or 2)
The direction of the desired edge.
- faceInteriorness (1 integer)
result = faceInteriornessreturns the interiorness of a face.- dir (required; 0, 1, or 2)
The direction normal to the desired face.
- dualFaceInteriorness (1 integer)
result = dualFaceInteriornessreturns the interiorness of a dual-grid face.- dir (required; 0, 1, or 2)
The direction normal to the desired face.
- faceInsideCentroid (NDIM floats)
result = faceInsideCentroidreturns the centroid of the interior part of the face.- dir (required; 0, 1, or 2)
The direction normal to the desired face.
- faceOutsideCentroid (NDIM floats)
result = faceOutsideCentroidreturns the centroid of the exterior part of the face.- dir (required; 0, 1, or 2)
The direction normal to the desired face.
- faceAreaFrac (1 float)
result = faceAreaFracreturns the fraction of the cell face that is interior to the gridBoundary.- dir (required; 0, 1, or 2)
The direction normal to the desired face.
- edgeLengthFrac (1 float)
result = edgeLengthFracreturns the fraction of the cell edge that is interior to the gridBoundary.- dir (required; 0, 1, or 2)
The direction of the desired edge.
- faceIsDmNeglected (1 boolean)
result = faceIsDmNeglectedreturns whether a given face would be neglected by the Dey-Mittra Faraday update, given the gridBoundary’s dmFrac.- dir (required; 0, 1, or 2)
The direction normal to the desired face.
- edgeBordersDmNeglectedFace (1 boolean)
result = edgeBordersDmNeglectedFacereturns whether the given cell edge borders a cell face that would be neglected by the Dey-Mittra Faraday update, given the gridBoundary’s dmFrac.