ReactingMultiphaseParcel< ParcelType > Class Template Reference

Multiphase variant of the reacting parcel class with one/two-way coupling with the continuous phase. More...

Inheritance diagram for ReactingMultiphaseParcel< ParcelType >:
Collaboration diagram for ReactingMultiphaseParcel< ParcelType >:

Classes

class  constantProperties
 Class to hold reacting multiphase particle constant properties. More...
 

Public Types

typedef ParcelType::trackingData trackingData
 Use base tracking data. More...
 

Public Member Functions

 AddToPropertyList (ParcelType, " mass0"+" 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, const label facei)
 Construct from mesh, coordinates and topology. More...
 
 ReactingMultiphaseParcel (const polyMesh &mesh, const vector &position, const label celli, label &nLocateBoundaryHits)
 Construct from a position and a cell, searching for the rest of the. More...
 
 ReactingMultiphaseParcel (Istream &is, bool readFields=true)
 Construct from Istream. More...
 
 ReactingMultiphaseParcel (const ReactingMultiphaseParcel &p)
 Construct as a copy. More...
 
virtual autoPtr< particle > clone () const
 Construct and return a clone. More...
 
scalar mass0 () const
 Return const access to initial mass [kg]. 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...
 
scalar & mass0 ()
 Return access to initial mass [kg]. 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

static autoPtr< ReactingMultiphaseParcel > New (Istream &is)
 Construct from Istream and return. More...
 
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 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

scalar mass0_
 Initial mass [kg]. More...
 
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 > &)
 

Detailed Description

template<class ParcelType>
class Foam::ReactingMultiphaseParcel< ParcelType >

Multiphase variant of the reacting parcel class with one/two-way coupling with the continuous phase.

Source files

Definition at line 71 of file ReactingMultiphaseParcel.H.

Member Typedef Documentation

◆ trackingData

typedef ParcelType::trackingData trackingData

Use base tracking data.

Definition at line 138 of file ReactingMultiphaseParcel.H.

Constructor & Destructor Documentation

◆ ReactingMultiphaseParcel() [1/4]

ReactingMultiphaseParcel ( const polyMesh &  mesh,
const barycentric &  coordinates,
const label  celli,
const label  tetFacei,
const label  tetPti,
const label  facei 
)
inline

Construct from mesh, coordinates and topology.

Other properties initialised as null

Definition at line 70 of file ReactingMultiphaseParcelI.H.

Referenced by ReactingMultiphaseParcel< ParcelType >::clone(), and ReactingMultiphaseParcel< ParcelType >::New().

Here is the caller graph for this function:

◆ ReactingMultiphaseParcel() [2/4]

ReactingMultiphaseParcel ( const polyMesh &  mesh,
const vector &  position,
const label  celli,
label &  nLocateBoundaryHits 
)
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 90 of file ReactingMultiphaseParcelI.H.

◆ ReactingMultiphaseParcel() [3/4]

◆ ReactingMultiphaseParcel() [4/4]

ReactingMultiphaseParcel ( const ReactingMultiphaseParcel< ParcelType > &  p)

Construct as a copy.

Member Function Documentation

◆ calcDevolatilisation()

void calcDevolatilisation ( TrackCloudType &  cloud,
trackingData &  td,
const scalar  dt,
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
protected

◆ calcSurfaceReactions()

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
protected

Calculate surface reactions.

Definition at line 621 of file ReactingMultiphaseParcel.C.

References Foam::isType(), Foam::min(), Foam::sum(), and Foam::T().

Here is the call graph for this function:

◆ AddToPropertyList()

AddToPropertyList ( ParcelType  ,
" mass0"+" nGas(Y1..YN)"+" nLiquid(Y1..YN)"+" nSolid(Y1..YN)"   
)

String representation of properties.

◆ clone()

virtual autoPtr<particle> clone ( ) const
inlinevirtual

Construct and return a clone.

Definition at line 317 of file ReactingMultiphaseParcel.H.

References ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().

Here is the call graph for this function:

◆ New()

static autoPtr<ReactingMultiphaseParcel> New ( Istream &  is)
inlinestatic

Construct from Istream and return.

Definition at line 323 of file ReactingMultiphaseParcel.H.

References ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().

Here is the call graph for this function:

◆ mass0() [1/2]

Foam::scalar mass0
inline

Return const access to initial mass [kg].

Definition at line 146 of file ReactingMultiphaseParcelI.H.

◆ YGas() [1/2]

const Foam::scalarField & YGas
inline

Return const access to mass fractions of gases.

Definition at line 153 of file ReactingMultiphaseParcelI.H.

Referenced by ReactingMultiphaseParcel< ParcelType >::writeFields().

Here is the caller graph for this function:

◆ YLiquid() [1/2]

const Foam::scalarField & YLiquid
inline

Return const access to mass fractions of liquids.

Definition at line 161 of file ReactingMultiphaseParcelI.H.

Referenced by ReactingMultiphaseParcel< ParcelType >::writeFields().

Here is the caller graph for this function:

◆ YSolid() [1/2]

const Foam::scalarField & YSolid
inline

Return const access to mass fractions of solids.

Definition at line 169 of file ReactingMultiphaseParcelI.H.

Referenced by ReactingMultiphaseParcel< ParcelType >::writeFields().

Here is the caller graph for this function:

◆ canCombust() [1/2]

Foam::label canCombust
inline

Return const access to the canCombust flag.

Definition at line 178 of file ReactingMultiphaseParcelI.H.

◆ mass0() [2/2]

Foam::scalar & mass0
inline

Return access to initial mass [kg].

Definition at line 185 of file ReactingMultiphaseParcelI.H.

◆ YGas() [2/2]

Foam::scalarField & YGas
inline

Return access to mass fractions of gases.

Definition at line 192 of file ReactingMultiphaseParcelI.H.

◆ YLiquid() [2/2]

Foam::scalarField & YLiquid
inline

Return access to mass fractions of liquids.

Definition at line 199 of file ReactingMultiphaseParcelI.H.

◆ YSolid() [2/2]

Foam::scalarField & YSolid
inline

Return access to mass fractions of solids.

Definition at line 206 of file ReactingMultiphaseParcelI.H.

◆ canCombust() [2/2]

Foam::label & canCombust
inline

Return access to the canCombust flag.

Definition at line 213 of file ReactingMultiphaseParcelI.H.

◆ setCellValues()

void setCellValues ( TrackCloudType &  cloud,
trackingData &  td 
)

Set cell values.

Definition at line 140 of file ReactingMultiphaseParcel.C.

◆ cellValueSourceCorrection()

void cellValueSourceCorrection ( TrackCloudType &  cloud,
trackingData &  td,
const scalar  dt 
)

Correct cell values using latest transfer information.

Definition at line 152 of file ReactingMultiphaseParcel.C.

◆ calc()

◆ readFields() [1/2]

void readFields ( CloudType &  c,
const CompositionType &  compModel 
)
static

Read.

Definition at line 108 of file ReactingMultiphaseParcelIO.C.

References Foam::constant::universal::c, forAll, forAllIter, IOobject::MUST_READ, p, Foam::readFields(), List< T >::setSize(), List< T >::size(), and Foam::blendedInterfacialModel::valid().

Referenced by ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ readFields() [2/2]

void readFields ( CloudType &  c)
static

Read - no composition.

Definition at line 100 of file ReactingMultiphaseParcelIO.C.

References Foam::constant::universal::c, and Foam::readFields().

Here is the call graph for this function:

◆ writeFields() [1/2]

void writeFields ( const CloudType &  c,
const CompositionType &  compModel 
)
static

◆ writeFields() [2/2]

void writeFields ( const CloudType &  c)
static

Read - composition supplied.

Definition at line 215 of file ReactingMultiphaseParcelIO.C.

References Foam::constant::universal::c.

◆ CpEff()

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 50 of file ReactingMultiphaseParcel.C.

References p, and Foam::T().

Here is the call graph for this function:

◆ hsEff()

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 70 of file ReactingMultiphaseParcel.C.

References p, and Foam::T().

Here is the call graph for this function:

◆ LEff()

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 90 of file ReactingMultiphaseParcel.C.

References p, and Foam::T().

Here is the call graph for this function:

Friends And Related Function Documentation

◆ operator

Ostream& operator ( Ostream &  ,
const ReactingMultiphaseParcel< ParcelType > &   
)
friend

Member Data Documentation

◆ GAS

◆ LIQ

◆ SLD

◆ mass0_

scalar mass0_
protected

Initial mass [kg].

Definition at line 201 of file ReactingMultiphaseParcel.H.

Referenced by ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().

◆ YGas_

scalarField YGas_
protected

Mass fractions of gases [].

Definition at line 204 of file ReactingMultiphaseParcel.H.

Referenced by ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().

◆ YLiquid_

scalarField YLiquid_
protected

Mass fractions of liquids [].

Definition at line 207 of file ReactingMultiphaseParcel.H.

Referenced by ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().

◆ YSolid_

scalarField YSolid_
protected

Mass fractions of solids [].

Definition at line 210 of file ReactingMultiphaseParcel.H.

Referenced by ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().

◆ canCombust_

label canCombust_
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 218 of file ReactingMultiphaseParcel.H.


The documentation for this class was generated from the following files: