37 #ifndef PatchEdgeFaceWave_H 38 #define PatchEdgeFaceWave_H 66 class PrimitivePatchType,
68 class TrackingData =
int 72 public PatchEdgeFaceWaveName
79 static scalar propagationTol_;
88 const PrimitivePatchType& patch_;
115 label nUnvisitedEdges_;
116 label nUnvisitedFaces_;
132 const label neighbourFacei,
133 const Type& neighbourInfo,
142 const label neighbourEdgeI,
143 const Type& neighbourInfo,
164 return propagationTol_;
170 propagationTol_ = tol;
184 const PrimitivePatchType& patch,
190 TrackingData& td = defaultTrackingData_
198 const PrimitivePatchType& patch,
201 TrackingData& td = defaultTrackingData_
223 const TrackingData&
data()
const 269 class PrimitivePatchType,
271 class TrackingData =
int 277 const PrimitivePatchType& patch_;
285 const PrimitivePatchType& patch,
296 void operator()(Type&
x,
const Type&
y)
const 300 x.updateEdge(mesh_, patch_, y,
true, tol_, td_);
309 class PrimitivePatchType,
311 class TrackingData =
int 317 const PrimitivePatchType& patch_;
325 const PrimitivePatchType& patch,
347 fld[i].transform(mesh_, patch_, vt.T(), tol_, td_);
354 fld[i].transform(mesh_, patch_, vt.T().T(), tol_, td_);
#define forAll(list, i)
Loop across all elements in list.
const TrackingData & data() const
Additional data to be passed into container.
label getUnsetFaces() const
Get number of unvisited faces, i.e. faces that were not (yet)
PatchEdgeFaceWave(const polyMesh &mesh, const PrimitivePatchType &patch, const labelList &initialEdges, const List< Type > &initialEdgesInfo, UList< Type > &allEdgeInfo, UList< Type > &allFaceInfo, const label maxIter, TrackingData &td=defaultTrackingData_)
Construct from patch, list of changed edges with the Type.
static void setPropagationTol(const scalar tol)
Change tolerance.
Wave propagation of information along patch. Every iteration information goes through one layer of fa...
label faceToEdge()
Propagate from face to edge. Returns total number of edges.
label edgeToFace()
Propagate from edge to face. Returns total number of faces.
gmvFile<< "tracers "<< particles.size()<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().x()<< ' ';}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().y()<< ' ';}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().z()<< ' ';}gmvFile<< nl;forAll(lagrangianScalarNames, i){ const word &name=lagrangianScalarNames[i];IOField< scalar > fld(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects...
TemplateName(FvFaceCellWave)
void operator=(const PatchEdgeFaceWave &)=delete
Disallow default bitwise assignment.
label iterate(const label maxIter)
Iterate until no changes or maxIter reached. Returns actual.
static scalar propagationTol()
Access to tolerance.
void setEdgeInfo(const labelList &changedEdges, const List< Type > &changedEdgesInfo)
Copy initial data into allEdgeInfo_.
UList< Type > & allFaceInfo() const
Access allFaceInfo.
label getUnsetEdges() const
Mesh consisting of general polyhedral cells.
static int defaultTrackingData_
Default tracking data to go with default template argument.
UList< Type > & allEdgeInfo() const
Access allEdgeInfo.