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
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>
186 template<
class TrackingData>
190 const label patchFacei,
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==
279 inline bool Foam::externalPointEdgePoint::operator!=
285 return !(*
this == rhs);
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)
static const Vector< scalar > max
bool updatePoint(const polyMesh &mesh, const label pointi, const label edgeI, const externalPointEdgePoint &edgeInfo, const scalar tol, TrackingData &td)
Influence of edge on point.
point centre(const pointField &) const
Return centre (centroid)
bool valid(TrackingData &td) const
Check whether origin has been changed at all or.
Holds information regarding nearest wall point. Used in PointEdgeWave. (so not standard FaceCellWave)...
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
dimensioned< scalar > magSqr(const dimensioned< Type > &)
externalPointEdgePoint()
Construct null.
bool sameGeometry(const externalPointEdgePoint &, const scalar tol, TrackingData &td) const
Check for identical geometrical data. Used for cyclics checking.
const edgeList & edges() const
Return mesh edges. Uses calcEdges.
const point & origin() const
vector point
Point is a vector.
dimensioned< scalar > mag(const dimensioned< Type > &)
const doubleScalar e
Elementary charge.
Mesh consisting of general polyhedral cells.
bool equal(const externalPointEdgePoint &, TrackingData &td) const
Equivalent to operator== with TrackingData.
void transform(const polyPatch &patch, const label patchFacei, const transformer &transform, TrackingData &td)
Transform across an interface.
A patch is a list of labels that address the faces in the global face list.
bool operator==(const externalPointEdgePoint &) const
bool updateEdge(const polyMesh &mesh, const label edgeI, const label pointi, const externalPointEdgePoint &pointInfo, const scalar tol, TrackingData &td)
Influence of point on edge.