Particle class that marks cells it passes through. Used to mark cells visited by feature edges. Uses ExactParticle tracking class so will work on concave cells. More...
#include <autoMesh/trackedParticle.H>
Particle class that marks cells it passes through. Used to mark cells visited by feature edges. Uses ExactParticle tracking class so will work on concave cells.
Definition at line 54 of file trackedParticle.H.
Classes | |
class | trackData |
Class used to pass tracking data to the trackToFace function. More... |
Public Member Functions | |
trackedParticle (const Cloud< trackedParticle > &c, const vector &position, const label celli, const point &end, const label level, const label i, const label j) | |
Construct from components. | |
trackedParticle (const Cloud< trackedParticle > &c, Istream &is, bool readFields=true) | |
Construct from Istream. | |
autoPtr< trackedParticle > | clone () const |
Construct and return a clone. | |
point & | end () |
point to track to | |
label & | i () |
transported label | |
label & | j () |
transported label | |
bool | move (trackData &) |
Track all particles to their end point. | |
bool | hitPatch (const polyPatch &, trackedParticle::trackData &td, const label patchI) |
Overridable function to handle the particle hitting a patch. | |
bool | hitPatch (const polyPatch &, int &, const label patchI) |
void | hitWedgePatch (const wedgePolyPatch &, trackedParticle::trackData &td) |
Overridable function to handle the particle hitting a wedge. | |
void | hitWedgePatch (const wedgePolyPatch &, int &) |
void | hitSymmetryPatch (const symmetryPolyPatch &, trackedParticle::trackData &td) |
Overridable function to handle the particle hitting a. | |
void | hitSymmetryPatch (const symmetryPolyPatch &, int &) |
void | hitCyclicPatch (const cyclicPolyPatch &, trackedParticle::trackData &td) |
Overridable function to handle the particle hitting a cyclic. | |
void | hitCyclicPatch (const cyclicPolyPatch &, int &) |
void | hitProcessorPatch (const processorPolyPatch &, trackedParticle::trackData &td) |
void | hitProcessorPatch (const processorPolyPatch &, int &) |
void | hitWallPatch (const wallPolyPatch &, trackedParticle::trackData &td) |
Overridable function to handle the particle hitting a wallPatch. | |
void | hitWallPatch (const wallPolyPatch &, int &) |
void | hitPatch (const polyPatch &, trackedParticle::trackData &td) |
Overridable function to handle the particle hitting a polyPatch. | |
void | hitPatch (const polyPatch &, int &) |
![]() | |
ExactParticle (const Cloud< trackedParticle > &cloud, const vector &position, const label celli) | |
Construct from components. | |
ExactParticle (const Cloud< trackedParticle > &cloud, Istream &is, bool readFields=true) | |
Construct from Istream. | |
virtual | ~ExactParticle () |
label | track (const vector &endPosition, TrackingData &td) |
Track particle to end of trajectory. | |
label | track (const vector &endPosition) |
Calls the templated track with dummy TrackingData. | |
scalar | trackToFace (const vector &endPosition, TrackingData &td) |
Track particle to a given position and returns 1.0 if the. | |
scalar | trackToFace (const vector &endPosition) |
Calls the templated trackToFace with dummy TrackingData. | |
![]() | |
TypeName ("Particle") | |
Runtime type information. | |
Particle (const Cloud< trackedParticle > &, const vector &position, const label celli) | |
Construct from components. | |
Particle (const Cloud< trackedParticle > &, Istream &, bool readFields=true) | |
Construct from Istream. | |
Particle (const Particle &p) | |
Construct as a copy. | |
virtual | ~Particle () |
Destructor. | |
bool | inCell () const |
Return true if particle is in cell. | |
bool | inCell (const vector &position, const label celli, const scalar stepFraction) const |
Return true if position is in cell i. | |
const vector & | position () const |
Return current particle position. | |
vector & | position () |
Return current particle position. | |
label & | cell () |
Return current cell particle is in. | |
label | cell () const |
Return current cell particle is in. | |
label | face () const |
Return current face particle is on otherwise -1. | |
const Cloud< trackedParticle > & | cloud () const |
Return reference to the particle cloud. | |
bool | softImpact () const |
Return the impact model to be used, soft or hard (default). | |
scalar | currentTime () const |
Return the particle current time. | |
bool | onBoundary () const |
Is the particle on the boundary/(or outside the domain)? | |
label | patch (const label facei) const |
Which patch is particle on. | |
label | patchFace (const label patchi, const label facei) const |
Which face of this patch is this particle on. | |
scalar | wallImpactDistance (const vector &n) const |
The nearest distance to a wall that. | |
scalar & | stepFraction () |
Return the fraction of time-step completed. | |
scalar | stepFraction () const |
Return the fraction of time-step completed. | |
label | origProc () const |
Return the originating processor id. | |
label | origId () const |
Return the particle id on originating processor. | |
label | track (const vector &endPosition, TrackData &td) |
Track particle to end of trajectory. | |
scalar | trackToFace (const vector &endPosition, TrackData &td) |
Track particle to a given position and returns 1.0 if the. | |
label | faceInterpolation () const |
Return the index of the face to be used in the interpolation. | |
void | write (Ostream &os, bool writeFields) const |
Write the particle data. |
Friends | |
class | Cloud< trackedParticle > |
Ostream & | operator<< (Ostream &, const trackedParticle &) |
trackedParticle | ( | const Cloud< trackedParticle > & | c, |
const vector & | position, | ||
const label | celli, | ||
const point & | end, | ||
const label | level, | ||
const label | i, | ||
const label | j | ||
) |
Construct from components.
Definition at line 32 of file trackedParticle.C.
Referenced by trackedParticle::clone().
trackedParticle | ( | const Cloud< trackedParticle > & | c, |
Istream & | is, | ||
bool | readFields = true |
||
) |
Construct from Istream.
Definition at line 52 of file trackedParticle.C.
|
inline |
Construct and return a clone.
Reimplemented from Particle< trackedParticle >.
Definition at line 137 of file trackedParticle.H.
References trackedParticle::trackedParticle().
|
inline |
point to track to
Definition at line 146 of file trackedParticle.H.
|
inline |
transported label
Definition at line 152 of file trackedParticle.H.
|
inline |
transported label
Definition at line 158 of file trackedParticle.H.
bool move | ( | trackedParticle::trackData & | td | ) |
Track all particles to their end point.
Definition at line 90 of file trackedParticle.C.
References Particle< trackedParticle >::cell(), Particle< trackedParticle >::cloud(), TimeState::deltaT(), trackedParticle::trackData::keepParticle, Foam::max(), trackedParticle::trackData::maxLevel(), Foam::min(), Cloud< ParticleType >::pMesh(), Particle< trackedParticle >::stepFraction(), trackedParticle::trackData::switchProcessor, objectRegistry::time(), ExactParticle< trackedParticle >::trackToFace(), and dimensioned< Type >::value().
bool hitPatch | ( | const polyPatch & | , |
trackedParticle::trackData & | td, | ||
const label | patchI | ||
) |
Overridable function to handle the particle hitting a patch.
Executed before other patch-hitting functions
Definition at line 118 of file trackedParticle.C.
bool hitPatch | ( | const polyPatch & | , |
int & | , | ||
const label | patchI | ||
) |
Definition at line 129 of file trackedParticle.C.
void hitWedgePatch | ( | const wedgePolyPatch & | , |
trackedParticle::trackData & | td | ||
) |
Overridable function to handle the particle hitting a wedge.
Definition at line 140 of file trackedParticle.C.
References trackedParticle::trackData::keepParticle.
void hitWedgePatch | ( | const wedgePolyPatch & | , |
int & | |||
) |
Definition at line 151 of file trackedParticle.C.
void hitSymmetryPatch | ( | const symmetryPolyPatch & | , |
trackedParticle::trackData & | td | ||
) |
Overridable function to handle the particle hitting a.
symmetryPlane
Definition at line 159 of file trackedParticle.C.
References trackedParticle::trackData::keepParticle.
void hitSymmetryPatch | ( | const symmetryPolyPatch & | , |
int & | |||
) |
Definition at line 170 of file trackedParticle.C.
void hitCyclicPatch | ( | const cyclicPolyPatch & | , |
trackedParticle::trackData & | td | ||
) |
Overridable function to handle the particle hitting a cyclic.
Definition at line 178 of file trackedParticle.C.
References trackedParticle::trackData::keepParticle.
void hitCyclicPatch | ( | const cyclicPolyPatch & | , |
int & | |||
) |
Definition at line 189 of file trackedParticle.C.
void hitProcessorPatch | ( | const processorPolyPatch & | , |
trackedParticle::trackData & | td | ||
) |
Overridable function to handle the particle hitting a processorPatch
Definition at line 197 of file trackedParticle.C.
References trackedParticle::trackData::switchProcessor.
void hitProcessorPatch | ( | const processorPolyPatch & | , |
int & | |||
) |
Definition at line 208 of file trackedParticle.C.
void hitWallPatch | ( | const wallPolyPatch & | wpp, |
trackedParticle::trackData & | td | ||
) |
Overridable function to handle the particle hitting a wallPatch.
Definition at line 216 of file trackedParticle.C.
References trackedParticle::trackData::keepParticle.
void hitWallPatch | ( | const wallPolyPatch & | wpp, |
int & | |||
) |
Definition at line 227 of file trackedParticle.C.
void hitPatch | ( | const polyPatch & | wpp, |
trackedParticle::trackData & | td | ||
) |
Overridable function to handle the particle hitting a polyPatch.
Definition at line 235 of file trackedParticle.C.
References trackedParticle::trackData::keepParticle.
void hitPatch | ( | const polyPatch & | wpp, |
int & | |||
) |
Definition at line 246 of file trackedParticle.C.
|
friend |
Definition at line 74 of file trackedParticle.H.
|
friend |