38 #ifndef ReactingMultiphaseParcel_H 39 #define ReactingMultiphaseParcel_H 50 template<
class ParcelType>
53 template<
class ParcelType>
64 template<
class ParcelType>
72 static const std::size_t sizeofFields_;
87 public ParcelType::constantProperties
119 inline scalar
TDevol()
const;
122 inline scalar
LDevol()
const;
139 template<
class TrackCloudType>
142 TrackCloudType&
cloud,
152 template<
class TrackCloudType>
155 TrackCloudType&
cloud,
165 template<
class TrackCloudType>
168 TrackCloudType&
cloud,
178 scalar updateMassFractions
214 template<
class TrackCloudType>
217 TrackCloudType&
cloud,
238 template<
class TrackCloudType>
241 TrackCloudType&
cloud,
267 TypeName(
"ReactingMultiphaseParcel");
288 const label tetFacei,
307 const label tetFacei,
310 const scalar nParticle0,
312 const scalar dTarget0,
315 const vector& angularMomentum0,
415 template<
class TrackCloudType>
419 template<
class TrackCloudType>
422 TrackCloudType& cloud,
428 template<
class TrackCloudType>
431 TrackCloudType& cloud,
440 template<
class CloudType,
class CompositionType>
444 const CompositionType& compModel
448 template<
class CloudType>
452 template<
class CloudType,
class CompositionType>
456 const CompositionType& compModel
460 template<
class CloudType>
466 friend Ostream& operator<< <ParcelType>
label canCombust() const
Return const access to the canCombust flag.
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 writeFields(const CloudType &c, const CompositionType &compModel)
Write.
A list of keyword definitions, which are a keyword followed by any number of values (e...
label canCombust_
Flag to identify if the particle can devolatilise and combust.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
void calcDevolatilisation(TrackCloudType &cloud, trackingData &td, const scalar dt, const scalar age, const scalar Ts, const scalar d, const scalar T, const scalar mass, const scalar mass0, const scalarField &YGasEff, const scalarField &YLiquidEff, const scalarField &YSolidEff, label &canCombust, scalarField &dMassDV, scalar &Sh, scalar &N, scalar &NCpW, scalarField &Cs) const
Calculate Devolatilisation.
bool cp(const fileName &src, const fileName &dst, const bool followLink=true)
Copy, recursively if necessary, the source to the destination.
scalar LDevol() const
Return const access to the latent heat of devolatilisation.
const dimensionedScalar & c
Speed of light in a vacuum.
void calc(TrackCloudType &cloud, trackingData &td, const scalar dt)
Update parcel properties over the time interval.
scalarList Y0(nSpecie, 0.0)
virtual autoPtr< particle > clone() const
Construct and return a (basic particle) clone.
static void readFields(CloudType &c, const CompositionType &compModel)
Read.
ReactingMultiphaseParcel(const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti)
Construct from mesh, position and topology.
ParcelType::trackingData trackingData
Use base tracking data.
scalarField YGas_
Mass fractions of gases [].
scalar hRetentionCoeff() const
Return const access to the fraction of enthalpy retained by.
const scalarField & YGas() const
Return const access to mass fractions of gases.
constantProperties()
Null constructor.
A cloud is a collection of lagrangian particles.
scalar TDevol() const
Return const access to the devolatilisation temperature.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
AddToPropertyList(ParcelType, " nGas(Y1..YN)"+" nLiquid(Y1..YN)"+" nSolid(Y1..YN)")
String representation of properties.
void calcSurfaceReactions(TrackCloudType &cloud, trackingData &td, const scalar dt, const scalar d, const scalar T, const scalar mass, const label canCombust, const scalar N, const scalarField &YMix, const scalarField &YGas, const scalarField &YLiquid, const scalarField &YSolid, scalarField &dMassSRGas, scalarField &dMassSRLiquid, scalarField &dMassSRSolid, scalarField &dMassSRCarrier, scalar &Sh, scalar &dhsTrans) const
Calculate surface reactions.
scalarField YSolid_
Mass fractions of solids [].
const scalarField & YLiquid() const
Return const access to mass fractions of liquids.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
scalarField YLiquid_
Mass fractions of liquids [].
PtrList< coordinateSystem > coordinates(solidRegions.size())
friend Ostream & operator(Ostream &, const ReactingMultiphaseParcel< ParcelType > &)
Multiphase variant of the reacting parcel class with one/two-way coupling with the continuous phase...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Mesh consisting of general polyhedral cells.
TypeName("ReactingMultiphaseParcel")
Runtime type information.
Factory class to read-construct particles used for.
void cellValueSourceCorrection(TrackCloudType &cloud, trackingData &td, const scalar dt)
Correct cell values using latest transfer information.
Templated base class for dsmc cloud.
Class to hold reacting multiphase particle constant properties.
const scalarField & YSolid() const
Return const access to mass fractions of solids.
void setCellValues(TrackCloudType &cloud, trackingData &td)
Set cell values.