35template<
class TrackingData>
39 const pointEdgePoint&
w2,
44 const scalar dist2 =
magSqr(pt -
w2.origin());
50 origin_ =
w2.origin();
55 const scalar
diff = distSqr_ - dist2;
63 if ((
diff < SMALL) || ((distSqr_ > SMALL) && (
diff/distSqr_ < tol)))
72 origin_ =
w2.origin();
80template<
class TrackingData>
83 const pointEdgePoint&
w2,
91 distSqr_ =
w2.distSqr();
92 origin_ =
w2.origin();
97 const scalar
diff = distSqr_ -
w2.distSqr();
105 if ((
diff < SMALL) || ((distSqr_ > SMALL) && (
diff/distSqr_ < tol)))
113 distSqr_ =
w2.distSqr();
114 origin_ =
w2.origin();
143template<
class TrackingData>
151template<
class TrackingData>
167 if ((distSqr() > SMALL) && ((
diff/distSqr()) < tol))
179template<
class TrackingData>
183 const label patchPointi,
192template<
class TrackingData>
205template<
class TrackingData>
209 const label patchPointi,
220template<
class TrackingData>
236template<
class TrackingData>
251template<
class TrackingData>
259 return update(newPointInfo, tol, td);
264template<
class TrackingData>
280template<
class TrackingData>
298 return origin_ == rhs.origin_ && distSqr_ == rhs.distSqr_;
307 return !(*
this == rhs);
bool valid() const
True if all internal ids are non-negative.
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
friend Ostream & operator(Ostream &, const faMatrix< Type > &)
virtual bool update()
Update the mesh for both mesh motion and topology change.
static const complex max
complex (VGREAT,VGREAT)
Holds information regarding nearest wall point. Used in PointEdgeWave. (so not standard FaceCellWave)...
bool sameGeometry(const pointEdgePoint &, const scalar tol, TrackingData &td) const
Check for identical geometrical data (eg, cyclics checking)
bool equal(const pointEdgePoint &, TrackingData &td) const
Test for equality, with TrackingData.
pointEdgePoint()
Default construct.
void leaveDomain(const polyPatch &patch, const label patchPointi, const point &pos, TrackingData &td)
Convert origin to relative vector to leaving point.
void enterDomain(const polyPatch &patch, const label patchPointi, const point &pos, TrackingData &td)
Convert relative origin to absolute by adding entering point.
bool valid(TrackingData &td) const
Changed or contains original (invalid) value.
bool updatePoint(const polyMesh &mesh, const label pointi, const label edgeI, const pointEdgePoint &edgeInfo, const scalar tol, TrackingData &td)
Influence of edge on point.
bool updateEdge(const polyMesh &mesh, const label edgeI, const label pointi, const pointEdgePoint &pointInfo, const scalar tol, TrackingData &td)
Influence of point on edge.
Mesh consisting of general polyhedral cells.
virtual const pointField & points() const
Return raw points.
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.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
dimensionSet transform(const dimensionSet &ds)
Return the argument; transformations do not change the dimensions.
tmp< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
scalar diff(const triad &A, const triad &B)
Return a quantity of the difference between two triads.
dimensioned< typename typeOfMag< Type >::type > magSqr(const dimensioned< Type > &dt)