Go to the documentation of this file.
60 const face&
f = mesh_.faces()[faceI];
62 label firstFullySubmergedPoint = -1;
68 pointStatus_.append(f_[
f[i]] - cutValue);
69 if (
mag(pointStatus_[i]) < 10 * SMALL)
73 if (pointStatus_[i] > 10 * SMALL)
76 if (firstFullySubmergedPoint == -1)
78 firstFullySubmergedPoint = i;
83 if (inLiquid ==
f.size())
86 subFaceCentre_ = mesh_.faceCentres()[faceI];
87 subFaceArea_ = mesh_.faceAreas()[faceI];
90 else if (inLiquid == 0)
93 subFaceCentre_ =
Zero;
102 firstFullySubmergedPoint,
116 subFaceCentre_ =
Zero;
118 subFacePoints_.clear();
119 surfacePoints_.clear();
120 pointStatus_.clear();
static constexpr const zero Zero
Generic templated field type.
label calcSubFace(const label faceI, const scalar cutValue)
Mesh data needed to do the Finite Volume discretisation.
Base class for cutting a face, faceI, of an fvMesh, mesh_, at its intersections.
void calcSubFace(const label faceI, const scalarList &pointStatus, label firstFullySubmergedPoint, DynamicList< point > &subFacePoints, DynamicList< point > &surfacePoints, label &faceStatus, vector &subFaceCentre, vector &subFaceArea)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
cutFaceIso(const fvMesh &mesh, scalarField &f)
A face is a list of labels corresponding to mesh vertices.