Go to the documentation of this file.
34 template<
class TrackingData>
35 inline bool Foam::pointEdgeStructuredWalk::update
37 const pointEdgeStructuredWalk&
w2,
45 dist_ =
w2.dist_ +
mag(point0_-
w2.previousPoint_);
46 previousPoint_ = point0_;
72 const point& previousPoint,
79 previousPoint_(previousPoint),
112 template<
class TrackingData>
120 template<
class TrackingData>
136 if ((dist() > SMALL) && ((
diff/dist()) < tol))
148 template<
class TrackingData>
152 const label patchPointi,
157 previousPoint_ -= coord;
161 template<
class TrackingData>
174 template<
class TrackingData>
178 const label patchPointi,
184 previousPoint_ += coord;
189 template<
class TrackingData>
202 return update(edgeInfo, tol, td);
210 template<
class TrackingData>
222 return update(newPointInfo, tol, td);
230 template<
class TrackingData>
238 return update(newPointInfo, tol, td);
243 template<
class TrackingData>
256 return update(pointInfo, tol, td);
263 template<
class TrackingData>
276 inline bool Foam::pointEdgeStructuredWalk::operator==
281 return previousPoint_ == rhs.previousPoint_;
285 inline bool Foam::pointEdgeStructuredWalk::operator!=
290 return !(*
this == rhs);
bool updateEdge(const polyMesh &mesh, const label edgeI, const label pointi, const pointEdgeStructuredWalk &pointInfo, const scalar tol, TrackingData &td)
Influence of point on edge.
scalar dist() const
The distance information.
void enterDomain(const polyPatch &patch, const label patchPointi, const point &pos, TrackingData &td)
Convert relative origin to absolute by adding entering point.
Determines length of string of edges walked to point.
static constexpr const zero Zero
Global zero.
label index() const
Index (if any) associated with data.
void transform(const tensor &rotTensor, TrackingData &td)
Apply rotation matrix to origin.
dimensionSet transform(const dimensionSet &ds)
Return the argument; transformations do not change the dimensions.
const vector & data() const
Tracking data.
Mesh consisting of general polyhedral cells.
scalar diff(const triad &A, const triad &B)
Return a quantity of the difference between two triads.
bool equal(const pointEdgeStructuredWalk &, TrackingData &) const
Same (like operator==)
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< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
A patch is a list of labels that address the faces in the global face list.
bool valid(TrackingData &td) const
Check whether origin has been changed at all or.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
bool updatePoint(const polyMesh &mesh, const label pointi, const label edgeI, const pointEdgeStructuredWalk &edgeInfo, const scalar tol, TrackingData &td)
Influence of edge on point.
void leaveDomain(const polyPatch &patch, const label patchPointi, const point &pos, TrackingData &td)
Convert origin to relative vector to leaving point.
static const Vector< scalar > max
bool inZone() const
True if starting point is valid (ie, not point::max)
const std::string patch
OpenFOAM patch number as a std::string.
pointEdgeStructuredWalk()
Construct null.
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
Database for solution data, solver performance and other reduced data.
bool sameGeometry(const pointEdgeStructuredWalk &, const scalar tol, TrackingData &td) const
Check for identical geometrical data. Used for cyclics checking.