58 #ifndef PointEdgeWave_H 59 #define PointEdgeWave_H 86 template<
class Type,
class TrackingData =
int>
89 public PointEdgeWaveName
96 static scalar propagationTol_;
120 label nChangedPoints_;
125 label nChangedEdges_;
128 label nCyclicPatches_;
134 label nUnvisitedPoints_;
135 label nUnvisitedEdges_;
154 const label neighbourEdgeI,
155 const Type& neighbourInfo,
164 const Type& neighbourInfo,
173 const label neighbourPointi,
174 const Type& neighbourInfo,
181 template<
class PatchType>
182 label countPatchType()
const;
185 void handleProcPatches();
188 void handleCyclicPatches();
191 label handleCollocatedPoints();
207 return propagationTol_;
213 propagationTol_ = tol;
232 TrackingData& td = defaultTrackingData_
242 TrackingData& td = defaultTrackingData_
258 return allPointInfo_;
268 const TrackingData&
data()
const 316 template<
class Type,
class TrackingData =
int>
338 x[i].updatePoint(y[i], tol_, td_);
#define forAll(list, i)
Loop across all elements in list.
label pointToEdge()
Propagate from point to edge. Returns total number of edges.
UList< Type > & allEdgeInfo() const
Access allEdgeInfo.
label iterate(const label maxIter)
Iterate until no changes or maxIter reached. Returns actual.
label edgeToPoint()
Propagate from edge to point. Returns total number of points.
UList< Type > & allPointInfo() const
Access allPointInfo.
~PointEdgeWave()
Destructor.
void setPointInfo(const labelList &changedPoints, const List< Type > &changedPointsInfo)
Copy initial data into allPointInfo_.
void operator=(const PointEdgeWave &)=delete
Disallow default bitwise assignment.
static void setPropagationTol(const scalar tol)
Change tolerance.
TemplateName(FvFaceCellWave)
static int defaultTrackingData_
Default tracking data to go with default template argument.
PointEdgeWave(const polyMesh &mesh, const labelList &initialPoints, const List< Type > &initialPointsInfo, UList< Type > &allPointInfo, UList< Type > &allEdgeInfo, const label maxIter, TrackingData &td=defaultTrackingData_)
Construct from mesh, list of changed points with the Type.
const TrackingData & data() const
Additional data to be passed into container.
Mesh consisting of general polyhedral cells.
label getUnsetPoints() const
A patch is a list of labels that address the faces in the global face list.
Wave propagation of information through grid. Every iteration information goes through one layer of e...
static scalar propagationTol()
Access to tolerance.
label getUnsetEdges() const
Get number of unvisited edges, i.e. edges that were not (yet)