31 template<
class TrackingData>
32 inline bool Foam::externalPointEdgePoint::update
35 const externalPointEdgePoint&
w2,
40 scalar dist2 =
magSqr(pt -
w2.origin());
46 origin_ =
w2.origin();
51 scalar
diff = distSqr_ - dist2;
59 if ((
diff < small) || ((distSqr_ > small) && (
diff/distSqr_ < tol)))
68 origin_ =
w2.origin();
75 template<
class TrackingData>
76 inline bool Foam::externalPointEdgePoint::update
78 const externalPointEdgePoint&
w2,
86 distSqr_ =
w2.distSqr();
87 origin_ =
w2.origin();
92 scalar
diff = distSqr_ -
w2.distSqr();
100 if ((
diff < small) || ((distSqr_ > small) && (
diff/distSqr_ < tol)))
108 distSqr_ =
w2.distSqr();
109 origin_ =
w2.origin();
150 template<
class TrackingData>
158 template<
class TrackingData>
174 if ((distSqr() > small) && ((
diff/distSqr()) < tol))
186 template<
class TrackingData>
190 const label patchFacei,
195 origin_ =
transform.transformPosition(origin_);
199 template<
class TrackingData>
210 return update(td.points_[pointi], edgeInfo, tol, td);
214 template<
class TrackingData>
224 return update(td.points_[pointi], newPointInfo, tol, td);
228 template<
class TrackingData>
236 return update(newPointInfo, tol, td);
240 template<
class TrackingData>
252 return update(
e.centre(td.points_), pointInfo, tol, td);
256 template<
class TrackingData>
269 inline bool Foam::externalPointEdgePoint::operator==
275 return (origin() == rhs.origin()) && (distSqr() == rhs.distSqr());
279 inline bool Foam::externalPointEdgePoint::operator!=
285 return !(*
this == rhs);
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
Holds information regarding nearest wall point. Used in PointEdgeWave. (so not standard FaceCellWave)...
externalPointEdgePoint()
Construct null.
bool equal(const externalPointEdgePoint &, TrackingData &td) const
Equivalent to operator== with TrackingData.
bool sameGeometry(const externalPointEdgePoint &, const scalar tol, TrackingData &td) const
Check for identical geometrical data. Used for cyclics checking.
bool updatePoint(const polyMesh &mesh, const label pointi, const label edgeI, const externalPointEdgePoint &edgeInfo, const scalar tol, TrackingData &td)
Influence of edge on point.
bool updateEdge(const polyMesh &mesh, const label edgeI, const label pointi, const externalPointEdgePoint &pointInfo, const scalar tol, TrackingData &td)
Influence of point on edge.
bool valid(TrackingData &td) const
Check whether origin has been changed at all or.
const point & origin() const
void transform(const polyPatch &patch, const label patchFacei, const transformer &transform, TrackingData &td)
Transform across an interface.
Mesh consisting of general polyhedral cells.
A patch is a list of labels that address the faces in the global face list.
const edgeList & edges() const
Return mesh edges. Uses calcEdges.
bool valid(const PtrList< ModelType > &l)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
tmp< fvMatrix< Type > > operator==(const fvMatrix< Type > &, const fvMatrix< Type > &)
vector point
Point is a vector.
scalar diff(const triad &A, const triad &B)
Return a quantity of the difference between two triads.
dimensionSet transform(const dimensionSet &)
dimensioned< scalar > mag(const dimensioned< Type > &)
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)
dimensioned< scalar > magSqr(const dimensioned< Type > &)