33 template<
class ParcelType>
34 Foam::string Foam::KinematicParcel<ParcelType>::propertyList_ =
37 template<
class ParcelType>
40 sizeof(KinematicParcel<ParcelType>)
41 - offsetof(KinematicParcel<ParcelType>, active_)
47 template<
class ParcelType>
55 ParcelType(mesh, is, readFields),
69 if (is.
format() == IOstream::ASCII)
84 is.
read(reinterpret_cast<char*>(&active_), sizeofFields_);
91 "KinematicParcel<ParcelType>::KinematicParcel" 92 "(const polyMesh&, Istream&, bool)" 97 template<
class ParcelType>
98 template<
class CloudType>
101 bool valid = c.
size();
197 template<
class ParcelType>
198 template<
class CloudType>
201 ParcelType::writeFields(c);
234 tTurb[i] = p.
tTurb();
235 UTurb[i] = p.
UTurb();
240 const bool valid = np > 0;
244 nParticle.write(valid);
246 dTarget.write(valid);
257 template<
class ParcelType>
264 if (os.format() == IOstream::ASCII)
266 os << static_cast<const ParcelType&>(
p)
267 << token::SPACE <<
p.active()
268 << token::SPACE <<
p.typeId()
269 << token::SPACE <<
p.nParticle()
270 << token::SPACE <<
p.d()
271 << token::SPACE <<
p.dTarget()
272 << token::SPACE <<
p.U()
273 << token::SPACE <<
p.rho()
274 << token::SPACE <<
p.age()
275 << token::SPACE <<
p.tTurb()
276 << token::SPACE <<
p.UTurb();
280 os << static_cast<const ParcelType&>(
p);
283 reinterpret_cast<const char*>(&
p.active_),
291 "Ostream& operator<<(Ostream&, const KinematicParcel<ParcelType>&)"
const vector & U() const
Return const access to velocity.
static void writeFields(const TrackCloudType &c)
Write.
scalar tTurb() const
Return const access to time spent in turbulent eddy.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
const vector & UTurb() const
Return const access to turbulent velocity fluctuation.
void readFields(const typename GeoFieldType::Mesh &mesh, const IOobjectList &objects, const HashSet< word > &selectedFields, LIFOStack< regIOobject *> &storedObjects)
Read the selected GeometricFields of the specified type.
Kinematic parcel class with rotational motion (as spherical particles only) and one/two-way coupling ...
virtual bool check(const char *operation) const
Check IOstream status for given operation.
scalar nParticle() const
Return const access to number of particles.
#define forAllIter(Container, container, iter)
Iterate across all elements in the container object of type.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
scalar d() const
Return const access to diameter.
scalar tTurb_
Time spent in turbulent eddy [s].
scalar rho() const
Return const access to density.
label size() const
Return the number of particles in the cloud.
KinematicParcel(const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti)
Construct from mesh, coordinates and topology.
scalar dTarget() const
Return const access to target diameter.
Useful combination of include files which define Sin, Sout and Serr and the use of IO streams general...
scalar dTarget_
Target diameter [m].
scalar age() const
Return const access to the age.
virtual Istream & read(token &)=0
Return next token from stream.
scalar rho_
Density [kg/m3].
bool active_
Active flag - tracking inactive when active = false.
label typeId_
Parcel type id.
vector UTurb_
Turbulent velocity fluctuation [m/s].
static void readFields(TrackCloudType &c)
Read.
streamFormat format() const
Return current stream format.
forAllConstIter(PtrDictionary< phaseModel >, mixture.phases(), phase)
label readLabel(Istream &is)
bool active() const
Return const access to active flag.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
scalar nParticle_
Number of particles in Parcel.
vector U_
Velocity of Parcel [m/s].
const dimensionedScalar c
Speed of light in a vacuum.
void checkFieldIOobject(const Cloud< ParticleType > &c, const IOField< DataType > &data) const
Check lagrangian data field.
Mesh consisting of general polyhedral cells.
virtual bool write(const bool valid=true) const
Write using setting from DB.
label typeId() const
Return const access to type id.
A class for handling character strings derived from std::string.
Templated base class for dsmc cloud.
IOobject fieldIOobject(const word &fieldName, const IOobject::readOption r) const
Helper to construct IOobject for field and current time.
A primitive field of type <T> with automated input and output.