Wave propagation of information along patch. Every iteration information goes through one layer of faces. Templated on information that is transferred. More...
Public Member Functions | |
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=dummyTrackData_) | |
Construct from patch, list of changed edges with the Type. More... | |
PatchEdgeFaceWave (const polyMesh &mesh, const PrimitivePatchType &patch, UList< Type > &allEdgeInfo, UList< Type > &allFaceInfo, TrackingData &td=dummyTrackData_) | |
Construct from patch. Use setEdgeInfo and iterate() to do. More... | |
UList< Type > & | allEdgeInfo () const |
Access allEdgeInfo. More... | |
UList< Type > & | allFaceInfo () const |
Access allFaceInfo. More... | |
const TrackingData & | data () const |
Additional data to be passed into container. More... | |
label | nUnvisitedFaces () const |
Number of unvisited faces, i.e. faces that were not (yet) More... | |
label | nUnvisitedEdges () const |
void | setEdgeInfo (const labelList &changedEdges, const List< Type > &changedEdgesInfo) |
Copy initial data into allEdgeInfo_. More... | |
label | edgeToFace () |
Propagate from edge to face. Returns total number of faces. More... | |
label | faceToEdge () |
Propagate from face to edge. Returns total number of edges. More... | |
label | iterate (const label maxIter) |
Iterate until no changes or maxIter reached. Returns actual. More... | |
Static Public Member Functions | |
static scalar | propagationTol () |
Access to tolerance. More... | |
static void | setPropagationTol (const scalar tol) |
Change tolerance. More... | |
Wave propagation of information along patch. Every iteration information goes through one layer of faces. Templated on information that is transferred.
Definition at line 71 of file PatchEdgeFaceWave.H.
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 = dummyTrackData_ |
||
) |
Construct from patch, list of changed edges with the Type.
for these edges. Gets work arrays to operate on, one of size number of patch edges, the other number of patch faces. Iterates until nothing changes or maxIter reached. (maxIter can be 0)
Definition at line 291 of file PatchEdgeFaceWave.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, and Foam::Pout.
PatchEdgeFaceWave | ( | const polyMesh & | mesh, |
const PrimitivePatchType & | patch, | ||
UList< Type > & | allEdgeInfo, | ||
UList< Type > & | allFaceInfo, | ||
TrackingData & | td = dummyTrackData_ |
||
) |
Construct from patch. Use setEdgeInfo and iterate() to do.
actual calculation
Definition at line 381 of file PatchEdgeFaceWave.C.
|
inlinestatic |
Access to tolerance.
Definition at line 167 of file PatchEdgeFaceWave.H.
|
inlinestatic |
Change tolerance.
Definition at line 173 of file PatchEdgeFaceWave.H.
|
inline |
Access allEdgeInfo.
Definition at line 213 of file PatchEdgeFaceWave.H.
|
inline |
Access allFaceInfo.
Definition at line 219 of file PatchEdgeFaceWave.H.
|
inline |
Additional data to be passed into container.
Definition at line 225 of file PatchEdgeFaceWave.H.
Foam::label nUnvisitedFaces | ( | ) | const |
Number of unvisited faces, i.e. faces that were not (yet)
reached from walking across patch. This can happen from
Definition at line 438 of file PatchEdgeFaceWave.C.
Foam::label nUnvisitedEdges | ( | ) | const |
Definition at line 425 of file PatchEdgeFaceWave.C.
Copy initial data into allEdgeInfo_.
Definition at line 453 of file PatchEdgeFaceWave.C.
References forAll, and List< T >::set().
Foam::label edgeToFace | ( | ) |
Propagate from edge to face. Returns total number of faces.
(over all processors) changed.
Definition at line 555 of file PatchEdgeFaceWave.C.
References Foam::abort(), Foam::expressions::patchExpr::debug, Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::nl, Foam::Pout, and Foam::returnReduce().
Foam::label faceToEdge | ( | ) |
Propagate from face to edge. Returns total number of edges.
(over all processors) changed.
Definition at line 492 of file PatchEdgeFaceWave.C.
References Foam::abort(), Foam::expressions::patchExpr::debug, Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::nl, Foam::Pout, and Foam::returnReduce().
Foam::label iterate | ( | const label | maxIter | ) |
Iterate until no changes or maxIter reached. Returns actual.
number of iterations.
Definition at line 617 of file PatchEdgeFaceWave.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), Foam::nl, and Foam::Pout.