36 #ifndef trackedParticle_H 37 #define trackedParticle_H 47 class trackedParticleCloud;
52 class trackedParticle;
54 Ostream&
operator<<(Ostream&,
const trackedParticle&);
113 featureEdgeVisited_(featureEdgeVisited)
128 const label tetFacei,
253 const scalar trackFraction,
Symmetry patch for non-planar or multi-plane patches.
const polyMesh & mesh() const
Return the mesh database.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
void hitCyclicAMIPatch(const cyclicAMIPolyPatch &, trackingData &td, const vector &)
Overridable function to handle the particle hitting a cyclicAMI.
List< PackedBoolList > & featureEdgeVisited_
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
autoPtr< particle > clone() const
Construct and return a clone.
void hitCyclicPatch(const cyclicPolyPatch &, trackingData &td)
Overridable function to handle the particle hitting a cyclic.
static void readFields(CloudType &c)
Read the fields associated with the owner cloud.
Neighbour processor patch.
trackedParticle(const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPtI, const point &end, const label level, const label i, const label j, const label k)
Construct from components.
void hitProcessorPatch(const processorPolyPatch &, trackingData &td)
Particle class that marks cells it passes through. Used to mark cells visited by feature edges...
void hitWallPatch(const wallPolyPatch &, trackingData &td, const tetIndices &)
Overridable function to handle the particle hitting a wallPatch.
A cloud is a collection of lagrangian particles.
point & end()
Point to track to.
Wedge front and back plane patch.
point & start()
Point to track from.
Storage and named access for the indices of a tet which is part of the decomposition of a cell...
label k() const
Transported label.
Cyclic patch for Arbitrary Mesh Interface (AMI)
Factory class to read-construct particles used for.
Base cloud calls templated on particle type.
bool contiguous< trackedParticle >()
An Ostream is an abstract base class for all output systems (streams, files, token lists...
void hitSymmetryPlanePatch(const symmetryPlanePolyPatch &, trackingData &td)
Overridable function to handle the particle hitting a.
void correctAfterParallelTransfer(const label, trackingData &)
Convert processor patch addressing to the global equivalents.
Class used to pass tracking data to the trackToFace function.
void hitSymmetryPatch(const symmetryPolyPatch &, trackingData &td)
Overridable function to handle the particle hitting a.
label i() const
Transported label.
Ostream & operator<<(Ostream &, const ensightPart &)
trackingData(Cloud< trackedParticle > &cloud, labelList &maxLevel, List< PackedBoolList > &featureEdgeVisited)
const barycentric & coordinates() const
Return current particle coordinates.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Mesh consisting of general polyhedral cells.
label j() const
Transported label.
A patch is a list of labels that address the faces in the global face list.
void hitWedgePatch(const wedgePolyPatch &, trackingData &td)
Overridable function to handle the particle hitting a wedge.
friend Ostream & operator<<(Ostream &, const trackedParticle &)
vector position() const
Return current particle position.
bool move(trackingData &, const scalar)
Track all particles to their end point.
bool hitPatch(const polyPatch &, trackingData &td, const label patchi, const scalar trackFraction, const tetIndices &tetIs)
Overridable function to handle the particle hitting a patch.