31 template<
class ParcelType>
32 Foam::string Foam::ReactingParcel<ParcelType>::propertyList_ =
35 template<
class ParcelType>
44 template<
class ParcelType>
52 ParcelType(mesh, is, readFields),
61 if (is.
format() == IOstream::ASCII)
67 is.
read(reinterpret_cast<char*>(&mass0_), sizeofFields_);
77 "ReactingParcel<ParcelType>::ReactingParcel" 87 template<
class ParcelType>
88 template<
class CloudType>
100 template<
class ParcelType>
101 template<
class CloudType,
class CompositionType>
105 const CompositionType& compModel
126 const wordList& phaseTypes = compModel.phaseTypes();
129 if (compModel.nPhase() == 1)
131 stateLabels = compModel.stateLabels()[0];
139 p.
Y_.setSize(nPhases, 0.0);
149 "Y" + phaseTypes[j] + stateLabels[j],
164 template<
class ParcelType>
165 template<
class CloudType>
168 ParcelType::writeFields(c);
172 template<
class ParcelType>
173 template<
class CloudType,
class CompositionType>
177 const CompositionType& compModel
180 ParcelType::writeFields(c);
197 const wordList& phaseTypes = compModel.phaseTypes();
199 if (compModel.nPhase() == 1)
201 stateLabels = compModel.stateLabels()[0];
210 "Y" + phaseTypes[j] + stateLabels[j],
235 template<
class ParcelType>
242 if (os.format() == IOstream::ASCII)
244 os << static_cast<const ParcelType&>(
p)
245 << token::SPACE <<
p.mass0()
246 << token::SPACE <<
p.Y();
250 os << static_cast<const ParcelType&>(
p);
253 reinterpret_cast<const char*>(&
p.mass0_),
262 "Ostream& operator<<(Ostream&, const ReactingParcel<ParcelType>&)" #define forAll(list, i)
Loop across all elements in list.
streamFormat format() const
Return current stream format.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
void checkFieldIOobject(const Cloud< ParticleType > &c, const IOField< DataType > &data) const
Check lagrangian data field.
#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)...
void size(const label)
Override size to be inconsistent with allocated storage.
virtual bool check(const char *operation) const
Check IOstream status for given operation.
scalarField Y_
Mass fractions of mixture [].
const scalarField & Y() const
Return const access to mass fractions of mixture [].
static void writeFields(const CloudType &c, const CompositionType &compModel)
Write.
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.
Useful combination of include files which define Sin, Sout and Serr and the use of IO streams general...
static void readFields(CloudType &c, const CompositionType &compModel)
Read.
virtual Istream & read(token &)=0
Return next token from stream.
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects...
forAllConstIter(PtrDictionary< phaseModel >, mixture.phases(), phase)
Base cloud calls templated on particle type.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
PtrList< volScalarField > & Y
ReactingParcel(const polyMesh &mesh, const vector &position, const label celli, const label tetFacei, const label tetPtI)
Construct from owner, position, and cloud owner.
Mesh consisting of general polyhedral cells.
IOobject fieldIOobject(const word &fieldName, const IOobject::readOption r) const
Helper to construct IOobject for field and current time.
Reacting parcel class with one/two-way coupling with the continuous phase.
scalar mass0_
Initial mass [kg].
void transfer(List< T > &)
Transfer contents of the argument List into this.
A class for handling character strings derived from std::string.
Templated base class for dsmc cloud.
A primitive field of type <T> with automated input and output.