33 template<
class ParcelType>
34 Foam::string Foam::KinematicParcel<ParcelType>::propertyList_ =
37 template<
class ParcelType>
40 offsetof(KinematicParcel<ParcelType>, rhoc_)
41 - offsetof(KinematicParcel<ParcelType>, active_)
47 template<
class ParcelType>
55 ParcelType(mesh, is, readFields),
72 if (is.
format() == IOstream::ASCII)
87 is.
read(reinterpret_cast<char*>(&active_), sizeofFields_);
94 "KinematicParcel<ParcelType>::KinematicParcel" 95 "(const polyMesh&, Istream&, bool)" 100 template<
class ParcelType>
101 template<
class CloudType>
104 bool valid = c.
size();
200 template<
class ParcelType>
201 template<
class CloudType>
204 ParcelType::writeFields(c);
237 tTurb[i] = p.
tTurb();
238 UTurb[i] = p.
UTurb();
243 const bool valid = np > 0;
247 nParticle.write(valid);
249 dTarget.write(valid);
260 template<
class ParcelType>
267 if (os.format() == IOstream::ASCII)
269 os << static_cast<const ParcelType&>(
p)
270 << token::SPACE <<
p.active()
271 << token::SPACE <<
p.typeId()
272 << token::SPACE <<
p.nParticle()
273 << token::SPACE <<
p.d()
274 << token::SPACE <<
p.dTarget()
275 << token::SPACE <<
p.U()
276 << token::SPACE <<
p.rho()
277 << token::SPACE <<
p.age()
278 << token::SPACE <<
p.tTurb()
279 << token::SPACE <<
p.UTurb();
283 os << static_cast<const ParcelType&>(
p);
286 reinterpret_cast<const char*>(&
p.active_),
294 "Ostream& operator<<(Ostream&, const KinematicParcel<ParcelType>&)"
const vector & U() const
Return const access to velocity.
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.
static void readFields(CloudType &c)
Read.
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.
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].
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.
static void writeFields(const CloudType &c)
Write.
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.