Multiphase variant of the reacting parcel class with one/two-way coupling with the continuous phase. More...
Classes | |
class | constantProperties |
Class to hold reacting multiphase particle constant properties. More... | |
class | iNew |
Factory class to read-construct particles used for. More... | |
Public Types | |
typedef ParcelType::trackingData | trackingData |
Use base tracking data. More... | |
Public Member Functions | |
TypeName ("ReactingMultiphaseParcel") | |
Runtime type information. More... | |
AddToPropertyList (ParcelType, " nGas(Y1..YN)"+" nLiquid(Y1..YN)"+" nSolid(Y1..YN)") | |
String representation of properties. More... | |
ReactingMultiphaseParcel (const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti) | |
Construct from mesh, position and topology. More... | |
ReactingMultiphaseParcel (const polyMesh &mesh, const vector &position, const label celli) | |
Construct from a position and a cell, searching for the rest of the. More... | |
ReactingMultiphaseParcel (const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti, const label typeId, const scalar nParticle0, const scalar d0, const scalar dTarget0, const vector &U0, const vector &f0, const vector &angularMomentum0, const vector &torque0, const scalarField &Y0, const scalarField &YGas0, const scalarField &YLiquid0, const scalarField &YSolid0, const constantProperties &constProps) | |
Construct from components. More... | |
ReactingMultiphaseParcel (const polyMesh &mesh, Istream &is, bool readFields=true) | |
Construct from Istream. More... | |
ReactingMultiphaseParcel (const ReactingMultiphaseParcel &p) | |
Construct as a copy. More... | |
ReactingMultiphaseParcel (const ReactingMultiphaseParcel &p, const polyMesh &mesh) | |
Construct as a copy. More... | |
virtual autoPtr< particle > | clone () const |
Construct and return a (basic particle) clone. More... | |
virtual autoPtr< particle > | clone (const polyMesh &mesh) const |
Construct and return a (basic particle) clone. More... | |
const scalarField & | YGas () const |
Return const access to mass fractions of gases. More... | |
const scalarField & | YLiquid () const |
Return const access to mass fractions of liquids. More... | |
const scalarField & | YSolid () const |
Return const access to mass fractions of solids. More... | |
label | canCombust () const |
Return const access to the canCombust flag. More... | |
scalarField & | YGas () |
Return access to mass fractions of gases. More... | |
scalarField & | YLiquid () |
Return access to mass fractions of liquids. More... | |
scalarField & | YSolid () |
Return access to mass fractions of solids. More... | |
label & | canCombust () |
Return access to the canCombust flag. More... | |
template<class TrackCloudType > | |
void | setCellValues (TrackCloudType &cloud, trackingData &td) |
Set cell values. More... | |
template<class TrackCloudType > | |
void | cellValueSourceCorrection (TrackCloudType &cloud, trackingData &td, const scalar dt) |
Correct cell values using latest transfer information. More... | |
template<class TrackCloudType > | |
void | calc (TrackCloudType &cloud, trackingData &td, const scalar dt) |
Update parcel properties over the time interval. More... | |
template<class TrackCloudType > | |
Foam::scalar | CpEff (TrackCloudType &cloud, trackingData &td, const scalar p, const scalar T, const label idG, const label idL, const label idS) const |
template<class TrackCloudType > | |
Foam::scalar | HsEff (TrackCloudType &cloud, trackingData &td, const scalar p, const scalar T, const label idG, const label idL, const label idS) const |
template<class TrackCloudType > | |
Foam::scalar | LEff (TrackCloudType &cloud, trackingData &td, const scalar p, const scalar T, const label idG, const label idL, const label idS) const |
Static Public Member Functions | |
template<class CloudType , class CompositionType > | |
static void | readFields (CloudType &c, const CompositionType &compModel) |
Read. More... | |
template<class CloudType > | |
static void | readFields (CloudType &c) |
Read - no composition. More... | |
template<class CloudType , class CompositionType > | |
static void | writeFields (const CloudType &c, const CompositionType &compModel) |
Write. More... | |
template<class CloudType > | |
static void | writeFields (const CloudType &c) |
Read - composition supplied. More... | |
Static Public Attributes | |
static const label | GAS |
static const label | LIQ |
static const label | SLD |
Protected Member Functions | |
template<class TrackCloudType > | |
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. More... | |
template<class TrackCloudType > | |
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. More... | |
Protected Attributes | |
scalarField | YGas_ |
Mass fractions of gases []. More... | |
scalarField | YLiquid_ |
Mass fractions of liquids []. More... | |
scalarField | YSolid_ |
Mass fractions of solids []. More... | |
label | canCombust_ |
Flag to identify if the particle can devolatilise and combust. More... | |
Friends | |
Ostream & | operator (Ostream &, const ReactingMultiphaseParcel< ParcelType > &) |
Multiphase variant of the reacting parcel class with one/two-way coupling with the continuous phase.
Definition at line 50 of file ReactingMultiphaseParcel.H.
typedef ParcelType::trackingData trackingData |
Use base tracking data.
Definition at line 130 of file ReactingMultiphaseParcel.H.
|
inline |
Construct from mesh, position and topology.
Other properties initialised as null
Definition at line 69 of file ReactingMultiphaseParcelI.H.
Referenced by ReactingMultiphaseParcel< ParcelType >::calcSurfaceReactions(), ReactingMultiphaseParcel< ParcelType >::clone(), ReactingMultiphaseParcel< ParcelType >::constantProperties::constantProperties(), and ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().
|
inline |
Construct from a position and a cell, searching for the rest of the.
required topology. Other properties are initialised as null.
Definition at line 87 of file ReactingMultiphaseParcelI.H.
References ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().
|
inline |
Construct from components.
Definition at line 103 of file ReactingMultiphaseParcelI.H.
ReactingMultiphaseParcel | ( | const polyMesh & | mesh, |
Istream & | is, | ||
bool | readFields = true |
||
) |
Construct from Istream.
Definition at line 46 of file ReactingMultiphaseParcelIO.C.
References IOstream::check(), and DynamicList< T, SizeInc, SizeMult, SizeDiv >::transfer().
ReactingMultiphaseParcel | ( | const ReactingMultiphaseParcel< ParcelType > & | p | ) |
Construct as a copy.
ReactingMultiphaseParcel | ( | const ReactingMultiphaseParcel< ParcelType > & | p, |
const polyMesh & | mesh | ||
) |
Construct as a copy.
|
protected |
Calculate Devolatilisation.
Definition at line 499 of file ReactingMultiphaseParcel.C.
References ReactingMultiphaseParcel< ParcelType >::calcSurfaceReactions(), CompositionModel< CloudType >::carrier(), Foam::cbrt(), composition, Cp(), forAll, CompositionModel< CloudType >::localToCarrierId(), Foam::max(), Foam::pow(), Foam::constant::thermodynamic::RR, Foam::sqr(), Foam::sqrt(), Foam::sum(), and W().
Referenced by ReactingMultiphaseParcel< ParcelType >::calc().
|
protected |
Calculate surface reactions.
Definition at line 604 of file ReactingMultiphaseParcel.C.
References ReactingMultiphaseParcel< ParcelType >::canCombust_, mesh, Foam::min(), N, ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel(), Foam::sum(), ReactingMultiphaseParcel< ParcelType >::YGas_, ReactingMultiphaseParcel< ParcelType >::YLiquid_, and ReactingMultiphaseParcel< ParcelType >::YSolid_.
Referenced by ReactingMultiphaseParcel< ParcelType >::calcDevolatilisation().
TypeName | ( | "ReactingMultiphaseParcel< ParcelType >" | ) |
Runtime type information.
AddToPropertyList | ( | ParcelType | , |
" nGas(Y1..YN)"+" nLiquid(Y1..YN)"+" nSolid(Y1..YN)" | |||
) |
String representation of properties.
Construct and return a (basic particle) clone.
Definition at line 342 of file ReactingMultiphaseParcel.H.
References ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().
Construct and return a (basic particle) clone.
Definition at line 348 of file ReactingMultiphaseParcel.H.
References ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().
|
inline |
Return const access to mass fractions of gases.
Definition at line 189 of file ReactingMultiphaseParcelI.H.
References ReactingMultiphaseParcel< ParcelType >::YGas_, and ReactingMultiphaseParcel< ParcelType >::YLiquid().
Referenced by ReactingMultiphaseParcel< ParcelType >::constantProperties::hRetentionCoeff(), ReactingMultiphaseParcel< ParcelType >::iNew::operator()(), and ReactingMultiphaseParcel< ParcelType >::writeFields().
|
inline |
Return const access to mass fractions of liquids.
Definition at line 197 of file ReactingMultiphaseParcelI.H.
References ReactingMultiphaseParcel< ParcelType >::YLiquid_, and ReactingMultiphaseParcel< ParcelType >::YSolid().
Referenced by ReactingMultiphaseParcel< ParcelType >::iNew::operator()(), ReactingMultiphaseParcel< ParcelType >::writeFields(), and ReactingMultiphaseParcel< ParcelType >::YGas().
|
inline |
Return const access to mass fractions of solids.
Definition at line 205 of file ReactingMultiphaseParcelI.H.
References ReactingMultiphaseParcel< ParcelType >::YSolid_.
Referenced by ReactingMultiphaseParcel< ParcelType >::iNew::operator()(), ReactingMultiphaseParcel< ParcelType >::writeFields(), and ReactingMultiphaseParcel< ParcelType >::YLiquid().
|
inline |
Return const access to the canCombust flag.
Definition at line 213 of file ReactingMultiphaseParcelI.H.
References ReactingMultiphaseParcel< ParcelType >::canCombust_.
Referenced by ReactingMultiphaseParcel< ParcelType >::iNew::operator()().
|
inline |
Return access to mass fractions of gases.
Definition at line 220 of file ReactingMultiphaseParcelI.H.
References ReactingMultiphaseParcel< ParcelType >::YGas_.
|
inline |
Return access to mass fractions of liquids.
Definition at line 227 of file ReactingMultiphaseParcelI.H.
References ReactingMultiphaseParcel< ParcelType >::YLiquid_.
|
inline |
Return access to mass fractions of solids.
Definition at line 234 of file ReactingMultiphaseParcelI.H.
References ReactingMultiphaseParcel< ParcelType >::YSolid_.
|
inline |
Return access to the canCombust flag.
Definition at line 241 of file ReactingMultiphaseParcelI.H.
References ReactingMultiphaseParcel< ParcelType >::canCombust_.
void setCellValues | ( | TrackCloudType & | cloud, |
trackingData & | td | ||
) |
Set cell values.
Definition at line 138 of file ReactingMultiphaseParcel.C.
References ReactingMultiphaseParcel< ParcelType >::cellValueSourceCorrection().
Referenced by ReactingMultiphaseParcel< ParcelType >::LEff(), and ReactingMultiphaseParcel< ParcelType >::iNew::operator()().
void cellValueSourceCorrection | ( | TrackCloudType & | cloud, |
trackingData & | td, | ||
const scalar | dt | ||
) |
Correct cell values using latest transfer information.
Definition at line 150 of file ReactingMultiphaseParcel.C.
References ReactingMultiphaseParcel< ParcelType >::calc().
Referenced by ReactingMultiphaseParcel< ParcelType >::iNew::operator()(), and ReactingMultiphaseParcel< ParcelType >::setCellValues().
void calc | ( | TrackCloudType & | cloud, |
trackingData & | td, | ||
const scalar | dt | ||
) |
Update parcel properties over the time interval.
Definition at line 164 of file ReactingMultiphaseParcel.C.
References ReactingMultiphaseParcel< ParcelType >::calcDevolatilisation(), CompositionModel< CloudType >::carrier(), Foam::cbrt(), composition, forAll, CompositionModel< CloudType >::idGas(), CompositionModel< CloudType >::idLiquid(), CompositionModel< CloudType >::idSolid(), CompositionModel< CloudType >::localToCarrierId(), Foam::constant::mathematical::pi(), Foam::pow4(), Foam::Re(), Su, T0, and Foam::Zero.
Referenced by ReactingMultiphaseParcel< ParcelType >::cellValueSourceCorrection(), and ReactingMultiphaseParcel< ParcelType >::iNew::operator()().
|
static |
Read.
Definition at line 101 of file ReactingMultiphaseParcelIO.C.
References Cloud< ParticleType >::fieldIOobject(), forAll, forAllIter, p, Foam::readFields(), List< T >::size(), Cloud< ParticleType >::size(), solidNames(), ReactingMultiphaseParcel< ParcelType >::YGas_, ReactingMultiphaseParcel< ParcelType >::YLiquid_, and ReactingMultiphaseParcel< ParcelType >::YSolid_.
Referenced by ReactingMultiphaseParcel< ParcelType >::iNew::operator()(), and ReactingMultiphaseParcel< ParcelType >::readFields().
|
static |
Read - no composition.
Definition at line 92 of file ReactingMultiphaseParcelIO.C.
References Foam::readFields(), and ReactingMultiphaseParcel< ParcelType >::readFields().
|
static |
Write.
Definition at line 217 of file ReactingMultiphaseParcelIO.C.
References Cloud< ParticleType >::fieldIOobject(), forAll, forAllConstIter(), p, Cloud< ParticleType >::size(), solidNames(), ReactingMultiphaseParcel< ParcelType >::YGas(), ReactingMultiphaseParcel< ParcelType >::YLiquid(), and ReactingMultiphaseParcel< ParcelType >::YSolid().
Referenced by ReactingMultiphaseParcel< ParcelType >::iNew::operator()(), and ReactingMultiphaseParcel< ParcelType >::writeFields().
|
static |
Read - composition supplied.
Definition at line 208 of file ReactingMultiphaseParcelIO.C.
References ReactingMultiphaseParcel< ParcelType >::writeFields().
Foam::scalar CpEff | ( | TrackCloudType & | cloud, |
trackingData & | td, | ||
const scalar | p, | ||
const scalar | T, | ||
const label | idG, | ||
const label | idL, | ||
const label | idS | ||
) | const |
Definition at line 48 of file ReactingMultiphaseParcel.C.
Foam::scalar HsEff | ( | TrackCloudType & | cloud, |
trackingData & | td, | ||
const scalar | p, | ||
const scalar | T, | ||
const label | idG, | ||
const label | idL, | ||
const label | idS | ||
) | const |
Definition at line 68 of file ReactingMultiphaseParcel.C.
Foam::scalar LEff | ( | TrackCloudType & | cloud, |
trackingData & | td, | ||
const scalar | p, | ||
const scalar | T, | ||
const label | idG, | ||
const label | idL, | ||
const label | idS | ||
) | const |
Definition at line 88 of file ReactingMultiphaseParcel.C.
References Foam::max(), and ReactingMultiphaseParcel< ParcelType >::setCellValues().
|
friend |
Referenced by ReactingMultiphaseParcel< ParcelType >::iNew::iNew().
|
static |
Definition at line 78 of file ReactingMultiphaseParcel.H.
|
static |
Definition at line 79 of file ReactingMultiphaseParcel.H.
|
static |
Definition at line 80 of file ReactingMultiphaseParcel.H.
|
protected |
Mass fractions of gases [].
Definition at line 193 of file ReactingMultiphaseParcel.H.
Referenced by ReactingMultiphaseParcel< ParcelType >::calcSurfaceReactions(), ReactingMultiphaseParcel< ParcelType >::readFields(), and ReactingMultiphaseParcel< ParcelType >::YGas().
|
protected |
Mass fractions of liquids [].
Definition at line 196 of file ReactingMultiphaseParcel.H.
Referenced by ReactingMultiphaseParcel< ParcelType >::calcSurfaceReactions(), ReactingMultiphaseParcel< ParcelType >::readFields(), and ReactingMultiphaseParcel< ParcelType >::YLiquid().
|
protected |
Mass fractions of solids [].
Definition at line 199 of file ReactingMultiphaseParcel.H.
Referenced by ReactingMultiphaseParcel< ParcelType >::calcSurfaceReactions(), ReactingMultiphaseParcel< ParcelType >::readFields(), and ReactingMultiphaseParcel< ParcelType >::YSolid().
|
protected |
Flag to identify if the particle can devolatilise and combust.
Combustion possible only after volatile content falls below threshold value. States include: 0 = can devolatilise, cannot combust but can change 1 = can devolatilise, can combust -1 = cannot devolatilise or combust, and cannot change
Definition at line 207 of file ReactingMultiphaseParcel.H.
Referenced by ReactingMultiphaseParcel< ParcelType >::calcSurfaceReactions(), and ReactingMultiphaseParcel< ParcelType >::canCombust().