32template<
class TrackingData>
33inline bool Foam::sweepData::update
36 const point& position,
51 if (svf.value() >
value())
62 scalar dist2 =
magSqr(position - svf.origin());
96template<
class TrackingData>
99 return value_ > -SMALL;
103template<
class TrackingData>
116template<
class TrackingData>
122 const point& faceCentre,
126 origin_ -= faceCentre;
130template<
class TrackingData>
142template<
class TrackingData>
148 const point& faceCentre,
153 origin_ += faceCentre;
157template<
class TrackingData>
161 const label thisCelli,
168 return update(svf,
mesh.cellCentres()[thisCelli], tol,
td);
172template<
class TrackingData>
176 const label thisFacei,
183 return update(svf,
mesh.faceCentres()[thisFacei], tol,
td);
188template<
class TrackingData>
192 const label thisFacei,
198 return update(svf,
mesh.faceCentres()[thisFacei], tol,
td);
202template<
class TrackingData>
213template<
class TrackingData>
254inline bool Foam::sweepData::operator==
259 return origin_ ==
rhs.origin_;
263inline bool Foam::sweepData::operator!=
268 return !(*
this ==
rhs);
Mesh consisting of general polyhedral cells.
A patch is a list of labels that address the faces in the global face list.
Helper class used by fvc::sweep function.
const point & origin() const
Return origin.
void transform(const polyMesh &, const tensor &, TrackingData &td)
Apply rotation matrix to any coordinates.
bool updateFace(const polyMesh &, const label thisFacei, const label neighbourCelli, const sweepData &svf, const scalar tol, TrackingData &td)
Influence of neighbouring cell.
sweepData()
Default construct.
void enterDomain(const polyMesh &, const polyPatch &, const label patchFacei, const point &faceCentre, TrackingData &td)
Reverse of leaveDomain.
scalar value() const
Return value.
sweepData(const sweepData &)=default
Copy construct.
bool valid(TrackingData &td) const
Changed or contains original (invalid) value.
sweepData & operator=(const sweepData &)=default
Copy assignment.
bool interpolate(const polyMesh &, const point &pt, const label i0, const sweepData &f0, const label i1, const sweepData &f1, const scalar weight, const scalar tol, TrackingData &td)
Interpolate between two values (lerp). Returns true if causes changes. Not sure if needs to be specia...
bool sameGeometry(const polyMesh &, const sweepData &, const scalar, TrackingData &td) const
Check for identical geometrical data (eg, cyclics checking).
void leaveDomain(const polyMesh &, const polyPatch &, const label patchFacei, const point &faceCentre, TrackingData &td)
Convert any absolute coordinates into relative to.
bool equal(const sweepData &, TrackingData &td) const
Test for equality, with TrackingData.
bool updateCell(const polyMesh &, const label thisCelli, const label neighbourFacei, const sweepData &svf, const scalar tol, TrackingData &td)
Influence of neighbouring face.
wallPoints::trackData td(isBlockedFace, regionToBlockSize)
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
refinementData transform(const tensor &, const refinementData val)
No-op rotational transform for base types.
tmp< faMatrix< Type > > operator==(const faMatrix< Type > &, const faMatrix< Type > &)
vector point
Point is a vector.
void rhs(fvMatrix< typename Expr::value_type > &m, const Expr &expression)
dimensioned< typename typeOfMag< Type >::type > magSqr(const dimensioned< Type > &dt)