Go to the documentation of this file.
39 #ifndef trackedParticle_H
40 #define trackedParticle_H
53 class trackedParticleCloud;
54 class trackedParticle;
56 Ostream&
operator<<(Ostream&,
const trackedParticle&);
135 const label tetFacei,
164 bool newFormat =
true
bool hitPatch(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a patch.
static autoPtr< T > New(Args &&... args)
Construct autoPtr of T with forwarding arguments.
Class used to pass tracking data to the trackToFace function.
iNew(const polyMesh &mesh)
static const std::size_t sizeofFields_
Size in bytes of the fields.
trackingData(Cloud< trackedParticle > &cloud, labelList &maxLevel, List< bitSet > &featureEdgeVisited)
autoPtr< particle > clone() const
Construct and return a clone.
static void readFields(TrackCloudType &c)
Read the fields associated with the owner cloud.
Mesh consisting of general polyhedral cells.
const barycentric & coordinates() const
Return current particle coordinates.
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces)
void hitSymmetryPlanePatch(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a.
label & k()
Transported label.
label k() const
Transported label.
label i() const
Transported label.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
point & end()
Point to track to.
void hitSymmetryPatch(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a.
vector position() const
Return current particle position.
Factory class to read-construct particles used for.
const polyMesh & mesh() const
Return the mesh database.
label & i()
Transported label.
friend Ostream & operator<<(Ostream &, const trackedParticle &)
void hitWedgePatch(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a wedge.
autoPtr< trackedParticle > operator()(Istream &is) const
label & j()
Transported label.
void hitWallPatch(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a wallPatch.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A cloud is a registry collection of lagrangian particles.
point & start()
Point to track from.
void hitCyclicPatch(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a cyclic.
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.
label j() const
Transported label.
void hitCyclicAMIPatch(Cloud< trackedParticle > &, trackingData &, const vector &)
Overridable function to handle the particle hitting a cyclicAMI.
Base cloud calls templated on particle type.
void hitProcessorPatch(Cloud< trackedParticle > &, trackingData &)
Particle class that marks cells it passes through. Used to mark cells visited by feature edges.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
void hitCyclicACMIPatch(Cloud< trackedParticle > &, trackingData &, const vector &)
Overridable function to handle the particle hitting a cyclicACMI.
List< bitSet > & featureEdgeVisited_
A template class to specify that a data type can be considered as being contiguous in memory.
bool move(Cloud< trackedParticle > &, trackingData &, const scalar)
Track all particles to their end point.
void correctAfterParallelTransfer(const label, trackingData &)
Convert processor patch addressing to the global equivalents.