45 particle(mesh, coordinates, celli, tetFacei, tetPtI),
68 start_(this->position()),
88 if (is.
format() == IOstream::ASCII)
100 reinterpret_cast<char*>(&start_),
101 sizeof(start_) +
sizeof(end_) +
sizeof(level_)
102 +
sizeof(i_) +
sizeof(j_) +
sizeof(k_)
110 "trackedParticle::trackedParticle" 111 "(const Cloud<trackedParticle>&, Istream&, bool)" 122 const scalar trackTime
127 scalar tEnd = (1.0 - stepFraction())*trackTime;
129 if (tEnd <= small && onBoundaryFace())
147 const scalar
f = 1 - stepFraction();
148 const vector s = end_ - start_;
149 trackToAndHitFace(f*s, f, cloud, td);
279 os << static_cast<const particle&>(
p)
289 os << static_cast<const particle&>(
p);
292 reinterpret_cast<const char*>(&p.start_),
293 sizeof(p.start_) +
sizeof(p.end_) +
sizeof(p.level_)
294 +
sizeof(p.i_) +
sizeof(p.j_) +
sizeof(p.k_)
299 os.
check(
"Ostream& operator<<(Ostream&, const trackedParticle&)");
void hitWallPatch(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a wallPatch.
void correctAfterParallelTransfer(const label patchi, trackingData &td)
Convert processor patch addressing to the global equivalents.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
virtual bool check(const char *operation) const
Check IOstream status for given operation.
void hitCyclicAMIPatch(Cloud< trackedParticle > &, trackingData &, const vector &)
Overridable function to handle the particle hitting a cyclicAMI.
List< PackedBoolList > & featureEdgeVisited_
bool hitPatch(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a patch.
void hitCyclicACMIPatch(Cloud< trackedParticle > &, trackingData &, const vector &)
Overridable function to handle the particle hitting a cyclicACMI.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
bool move(Cloud< trackedParticle > &, trackingData &, const scalar)
Track all particles to their end point.
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.
Particle class that marks cells it passes through. Used to mark cells visited by feature edges...
gmvFile<< "tracers "<< particles.size()<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().x()<< " ";}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().y()<< " ";}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().z()<< " ";}gmvFile<< nl;forAll(lagrangianScalarNames, i){ word name=lagrangianScalarNames[i];IOField< scalar > s(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
virtual Istream & read(token &)=0
Return next token from stream.
void hitSymmetryPlanePatch(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a.
bool switchProcessor
Flag to switch processor.
void hitWedgePatch(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a wedge.
label k() const
Transported label.
streamFormat format() const
Return current stream format.
label readLabel(Istream &is)
Base cloud calls templated on particle type.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
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(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a.
bool keepParticle
Flag to indicate whether to keep particle (false = delete)
A cell is defined as a list of faces with extra functionality.
void hitProcessorPatch(Cloud< trackedParticle > &, trackingData &)
label i() const
Transported label.
Ostream & operator<<(Ostream &, const ensightPart &)
void hitCyclicPatch(Cloud< trackedParticle > &, trackingData &)
Overridable function to handle the particle hitting a cyclic.
virtual Ostream & write(const token &)=0
Write next token to stream.
Mesh consisting of general polyhedral cells.