36 #ifndef streamLineParticle_H 37 #define streamLineParticle_H 49 class streamLineParticleCloud;
91 const bool trackForward,
92 const label nSubCycle,
93 const scalar trackLength,
104 trackForward_(trackForward),
105 nSubCycle_(nSubCycle),
106 trackLength_(trackLength),
108 allPositions_(allPositions),
109 allScalars_(allScalars),
110 allVectors_(allVectors)
136 scalar calcSubCycleDeltaT
143 void constrainVelocity
228 const scalar trackFraction,
bool hitPatch(const polyPatch &, trackingData &td, const label patchI, const scalar trackFraction, const tetIndices &tetIs)
Overridable function to handle the particle hitting a patch.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
Wedge front and back plane patch.
Symmetry patch for non-planar or multi-plane patches.
void hitWedgePatch(const wedgePolyPatch &, trackingData &td)
Overridable function to handle the particle hitting a wedge.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
static void writeFields(const Cloud< streamLineParticle > &)
Write.
Particle class that samples fields as it passes through. Used in streamline calculation.
const scalar trackLength_
bool move(trackingData &, const scalar trackTime)
Track all particles to their end point.
A patch is a list of labels that address the faces in the global face list.
void hitSymmetryPatch(const symmetryPolyPatch &, trackingData &td)
Overridable function to handle the particle hitting a.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
Neighbour processor patch.
Class used to pass tracking data to the trackToFace function.
friend Ostream & operator<<(Ostream &, const streamLineParticle &)
const vector & position() const
Return current particle position.
List< DynamicList< vectorList > > & allVectors_
const polyMesh & mesh_
Reference to the polyMesh database.
void hitCyclicPatch(const cyclicPolyPatch &, trackingData &td)
Overridable function to handle the particle hitting a cyclic.
static void readFields(Cloud< streamLineParticle > &)
Read.
const polyMesh & mesh() const
Return the mesh database.
A cloud is a collection of lagrangian particles.
DynamicList< vectorList > & allPositions_
void hitWallPatch(const wallPolyPatch &, trackingData &td, const tetIndices &)
Overridable function to handle the particle hitting a wallPatch.
List< DynamicList< scalarList > > & allScalars_
streamLineParticle(const polyMesh &c, const vector &position, const label cellI, const label lifeTime)
Construct from components.
Mesh consisting of general polyhedral cells.
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects...
const PtrList< interpolation< scalar > > & vsInterp_
void hitSymmetryPlanePatch(const symmetryPlanePolyPatch &, trackingData &td)
Overridable function to handle the particle hitting a.
Factory class to read-construct particles used for.
void hitProcessorPatch(const processorPolyPatch &, trackingData &td)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
const dimensionedScalar c
Speed of light in a vacuum.
trackingData(Cloud< streamLineParticle > &cloud, const PtrList< interpolation< scalar > > &vsInterp, const PtrList< interpolation< vector > > &vvInterp, const label UIndex, const bool trackForward, const label nSubCycle, const scalar trackLength, DynamicList< List< point > > &allPositions, List< DynamicList< scalarList > > &allScalars, List< DynamicList< vectorList > > &allVectors)
This function object reads fields from the time directories and adds them to the mesh database for fu...
Storage and named access for the indices of a tet which is part of the decomposition of a cell...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
const PtrList< interpolation< vector > > & vvInterp_
autoPtr< particle > clone() const
Construct and return a clone.