- geometryUpdater
geometryUpdater¶
works with VSimEM and VSimVE licenses.
MultiField updater that evaluates a geometric quantity (pertaining to the individual cell) and sets (or adds or multiplies) the field component to that geometric quantity.
geometryUpdater Parameters¶
The geometryUpdater
takes the lowerBounds
and
upperBounds
parameters of FieldUpdater, as well as
the following parameters:
- operation (required string)
One of:
set: Fj=g
add: Fj+=g
multiply: Fj*=g
- geometricQuantity (required string)
geometric quantity
g
(see operation) to be evaluated; one of:volumeFraction
:Fraction of the volume in the cell that is inside the specified gridBoundary.
surfaceOutwardNormal
:Outward normal to the surface of the gridBoundary in a cell.
surfaceArea
The surface area of the
queryGridBoundary
within the cell.faceAreaFraction
The fraction of the cell face (normal to
queryComponent
) that is inside thequeryGridBoundary
edgeLineFraction
The fraction of the cell edge (parallel to the
queryComponent
direction) that is inside thequeryGridBoundary
.octantVolumeFraction
The fraction of the cell octant that is inside the
queryGridBoundary
.
- queryGridBoundary (required string)
Name of the gridBoundary to be used to calculate the
geometricQuantity
(as opposed to the gridBoundary all updaters have, which determines which cells are updated by that updater).
- queryComponent (optional integer, default = 0)
Component of the data to be read for the
surfaceOutwardNormal
,edgeLineFraction
, andfaceAreaFraction
quantities.
- writeFields (required string vector)
A vector containing a single element, the name of field to update with the geometric data.
- writeComponents (required integer vector)
The components of \(F\) to update. The geometric quantity will be evaluated for each component.
Example geometryUpdater Block¶
<FieldUpdater calcVolPlane>
kind = geometryUpdater
lowerBounds = [0 0 0]
upperBounds = [NX NY NZ]
operation = set
geometricQuantity = volumeFraction
# update cell volume using queryGridBndry
queryGridBoundary = plane
writeFields = [VolFracPlane]
writeComponents = [0]
</FieldUpdater>