Go to the documentation of this file.
44 #ifndef ReactingParcel_H
45 #define ReactingParcel_H
56 template<
class ParcelType>
59 template<
class ParcelType>
71 template<
class ParcelType>
85 public ParcelType::constantProperties
113 inline scalar
pMin()
const;
122 public ParcelType::trackingData
142 typedef typename ParcelType::trackingData::trackPart
trackPart;
147 template<
class TrackCloudType>
150 const TrackCloudType&
cloud,
151 trackPart part = ParcelType::trackingData::tpLinearTrack
162 inline scalar
pc()
const;
185 template<
class TrackCloudType>
188 TrackCloudType&
cloud,
242 const label tetFacei,
261 const label tetFacei,
264 const scalar nParticle0,
266 const scalar dTarget0,
269 const vector& angularMomentum0,
281 bool newFormat =
true
337 inline scalar
mass0()
const;
358 inline scalar&
mass0();
367 template<
class TrackCloudType>
371 template<
class TrackCloudType>
374 TrackCloudType&
cloud,
380 template<
class TrackCloudType>
383 TrackCloudType&
cloud,
394 template<
class TrackCloudType>
397 TrackCloudType&
cloud,
406 template<
class CloudType,
class CompositionType>
410 const CompositionType& compModel
414 template<
class CloudType>
418 template<
class CloudType,
class CompositionType>
422 const CompositionType& compModel
426 template<
class CloudType>
435 const bool namesOnly =
false
440 template<
class CloudType>
448 template<
class CloudType,
class CompositionType>
452 const CompositionType& compModel,
458 template<
class CloudType>
466 template<
class CloudType,
class CompositionType>
470 const CompositionType& compModel,
477 friend Ostream& operator<< <ParcelType>
scalar mass0() const
Return const access to initial mass [kg].
AddToPropertyList(ParcelType, " mass0"+" nPhases(Y1..YN)")
String representation of properties.
const scalarField & YSolid() const
Return const access to mass fractions of solids.
virtual autoPtr< particle > clone() const
Construct and return a (basic particle) clone.
const interpolation< scalar > & pInterp() const
Return const access to the interpolator for continuous phase.
A class for handling words, derived from Foam::string.
static void readFields(CloudType &c, const CompositionType &compModel)
Read - composition supplied.
trackingData(const TrackCloudType &cloud, trackPart part=ParcelType::trackingData::tpLinearTrack)
Construct from components.
void calc(TrackCloudType &cloud, trackingData &td, const scalar dt)
Update parcel properties over the time interval.
TypeName("ReactingParcel")
Runtime type information.
const scalarField & Y() const
Return const access to mass fractions of mixture [].
scalar pc() const
Return the continuous phase pressure.
Mesh consisting of general polyhedral cells.
static void readObjects(CloudType &c, const objectRegistry &obr)
Read particle fields as objects from the obr registry.
Registry of regIOobjects.
ParcelType::trackingData::trackPart trackPart
void calcPhaseChange(TrackCloudType &cloud, trackingData &td, const scalar dt, const scalar Re, const scalar Pr, const scalar Ts, const scalar nus, const scalar d, const scalar T, const scalar mass, const label idPhase, const scalar YPhase, const scalarField &YComponents, scalarField &dMassPC, scalar &Sh, scalar &N, scalar &NCpW, scalarField &Cs)
Calculate Phase change.
const scalarField & YLiquid() const
Return const access to mass fractions of liquids.
static void writeObjects(const CloudType &c, objectRegistry &obr)
Write particle fields as objects into the obr registry.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
void setCellValues(TrackCloudType &cloud, trackingData &td)
Set cell values.
PtrList< coordinateSystem > coordinates(solidRegions.size())
dimensionedScalar Pr("Pr", dimless, laminarTransport)
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
Templated base class for dsmc cloud.
iNew(const polyMesh &mesh)
const scalarField & YGas() const
Return const access to mass fractions of gases.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
ReactingParcel(const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti)
Construct from mesh, coordinates and topology.
void cellValueSourceCorrection(TrackCloudType &cloud, trackingData &td, const scalar dt)
Correct cell values using latest transfer information.
scalar mass0_
Initial mass [kg].
static void writeFields(const CloudType &c, const CompositionType &compModel)
Write - composition supplied.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A cloud is a registry collection of lagrangian particles.
bool constantVolume() const
Return const access to the constant volume flag.
bool cp(const fileName &src, const fileName &dst, const bool followLink=true)
Copy the source to the destination (recursively if necessary).
Class to hold reacting parcel constant properties.
Factory class to read-construct particles used for.
A List of wordRe with additional matching capabilities.
scalarField Re(const UList< complex > &cf)
Extract real component.
constantProperties()
Null constructor.
void writeProperties(Ostream &os, const wordRes &filters, const word &delim, const bool namesOnly=false) const
Write individual parcel properties to stream.
scalar pMin() const
Return const access to the minimum pressure.
const dimensionedScalar c
Speed of light in a vacuum.
scalarField Y_
Mass fractions of mixture [].
autoPtr< ReactingParcel< ParcelType > > operator()(Istream &is) const
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
const Vector< label > N(dict.get< Vector< label >>("N"))
scalarList Y0(nSpecie, Zero)
virtual autoPtr< particle > clone(const polyMesh &mesh) const
Construct and return a (basic particle) clone.
void correctSurfaceValues(TrackCloudType &cloud, trackingData &td, const scalar T, const scalarField &Cs, scalar &rhos, scalar &mus, scalar &Prs, scalar &kappas)
Correct surface values due to emitted species.
Reacting parcel class with one/two-way coupling with the continuous phase.
static const std::size_t sizeofFields
Size in bytes of the fields.
scalar updateMassFraction(const scalar mass0, const scalarField &dMass, scalarField &Y) const
Update mass fraction.