36 #ifndef trackedParticle_H
37 #define trackedParticle_H
50 class trackedParticle;
52 Ostream&
operator<<(Ostream&,
const trackedParticle&);
107 const scalar maxTrackLen,
130 label& nLocateBoundaryHits,
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Base class for clouds. Provides a basic evolution algorithm, models, and a database for caching deriv...
static void readFields(TrackCloudType &c)
Read the fields associated with the owner cloud.
vector position(const polyMesh &mesh) const
Return current particle position.
Mesh consisting of general polyhedral cells.
Class used to pass tracking data to the trackToFace function.
List< PackedBoolList > & featureEdgeVisited_
trackingData(lagrangian::Cloud< trackedParticle > &cloud, const scalar maxTrackLen, labelList &maxLevel, List< PackedBoolList > &featureEdgeVisited)
const scalar maxTrackLen_
Particle class that marks cells it passes through. Used to mark cells visited by feature edges.
void hitCyclicPatch(lagrangian::Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a cyclic.
void correctAfterParallelTransfer(lagrangian::Cloud< trackedParticle > &, trackingData &)
Do corrections to the particle and tracking data following a.
trackedParticle(const polyMesh &mesh, const vector &position, const label celli, label &nLocateBoundaryHits, const point &end, const label level, const label i, const label j, const label k)
Construct from a position and a cell, searching for the rest of the.
void hitWallPatch(lagrangian::Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a wallPatch.
friend Ostream & operator<<(Ostream &, const trackedParticle &)
label j() const
Transported label.
point & start()
Point to track from.
void hitSymmetryPatch(lagrangian::Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a.
label i() const
Transported label.
void hitWedgePatch(lagrangian::Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a wedge.
void hitSymmetryPlanePatch(lagrangian::Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a.
static autoPtr< trackedParticle > New(Istream &is)
Construct from Istream and return.
autoPtr< particle > clone() const
Construct and return a clone.
point & end()
Point to track to.
bool move(lagrangian::Cloud< trackedParticle > &, trackingData &)
Track all particles to their end point.
label k() const
Transported label.
Foam::fvMesh mesh(Foam::IOobject(regionName, runTime.name(), runTime, Foam::IOobject::MUST_READ), false)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
bool contiguous< trackedParticle >()
Ostream & operator<<(Ostream &os, const fvConstraints &constraints)