gridBoundaryFuncUserFuncs 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.
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 dir attribute 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 can- be 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.