Classes | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Friends | List of all members
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 >:
Inheritance graph
[legend]
Collaboration diagram for ReactingMultiphaseParcel< ParcelType >:
Collaboration graph
[legend]

Classes

class  constantProperties
 Class to hold reacting multiphase particle constant properties. More...
 
class  iNew
 Factory class to read-construct particles used for. 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 vector &position, const label cellI, const label tetFaceI, const label tetPtI)
 Construct from owner, position, and cloud owner. More...
 
 ReactingMultiphaseParcel (const polyMesh &mesh, const vector &position, 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< particleclone () const
 Construct and return a (basic particle) clone. More...
 
virtual autoPtr< particleclone (const polyMesh &mesh) const
 Construct and return a (basic particle) clone. More...
 
const scalarFieldYGas () const
 Return const access to mass fractions of gases. More...
 
const scalarFieldYLiquid () const
 Return const access to mass fractions of liquids. More...
 
const scalarFieldYSolid () const
 Return const access to mass fractions of solids. More...
 
label canCombust () const
 Return const access to the canCombust flag. More...
 
scalarFieldYGas ()
 Return access to mass fractions of gases. More...
 
scalarFieldYLiquid ()
 Return access to mass fractions of liquids. More...
 
scalarFieldYSolid ()
 Return access to mass fractions of solids. More...
 
labelcanCombust ()
 Return access to the canCombust flag. More...
 
template<class TrackData >
void setCellValues (TrackData &td, const scalar dt, const label cellI)
 Set cell values. More...
 
template<class TrackData >
void cellValueSourceCorrection (TrackData &td, const scalar dt, const label cellI)
 Correct cell values using latest transfer information. More...
 
template<class TrackData >
void calc (TrackData &td, const scalar dt, const label cellI)
 Update parcel properties over the time interval. More...
 
template<class TrackData >
Foam::scalar CpEff (TrackData &td, const scalar p, const scalar T, const label idG, const label idL, const label idS) const
 
template<class TrackData >
Foam::scalar HsEff (TrackData &td, const scalar p, const scalar T, const label idG, const label idL, const label idS) const
 
template<class TrackData >
Foam::scalar LEff (TrackData &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 TrackData >
void calcDevolatilisation (TrackData &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 TrackData >
void calcSurfaceReactions (TrackData &td, const scalar dt, const label cellI, 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

Ostreamoperator (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 50 of file ReactingMultiphaseParcel.H.

Constructor & Destructor Documentation

ReactingMultiphaseParcel ( const polyMesh mesh,
const vector position,
const label  cellI,
const label  tetFaceI,
const label  tetPtI 
)
inline

Construct from owner, position, and cloud owner.

Other properties initialised as null

Definition at line 69 of file ReactingMultiphaseParcelI.H.

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

Here is the caller graph for this function:

ReactingMultiphaseParcel ( const polyMesh mesh,
const vector position,
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 
)
inline

Construct from components.

Definition at line 87 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().

Here is the call graph for this function:

ReactingMultiphaseParcel ( const ReactingMultiphaseParcel< ParcelType > &  p)

Construct as a copy.

ReactingMultiphaseParcel ( const ReactingMultiphaseParcel< ParcelType > &  p,
const polyMesh mesh 
)

Construct as a copy.

Member Function Documentation

void calcDevolatilisation ( TrackData &  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
protected
void calcSurfaceReactions ( TrackData &  td,
const scalar  dt,
const label  cellI,
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
TypeName ( "ReactingMultiphaseParcel< ParcelType >"  )

Runtime type information.

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

String representation of properties.

virtual autoPtr<particle> clone ( ) const
inlinevirtual

Construct and return a (basic particle) clone.

Definition at line 326 of file ReactingMultiphaseParcel.H.

References ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().

Here is the call graph for this function:

virtual autoPtr<particle> clone ( const polyMesh mesh) const
inlinevirtual

Construct and return a (basic particle) clone.

Definition at line 332 of file ReactingMultiphaseParcel.H.

References ReactingMultiphaseParcel< ParcelType >::ReactingMultiphaseParcel().

Here is the call graph for this function:

const Foam::scalarField & YGas ( ) const
inline

Return const access to mass fractions of gases.

Definition at line 176 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().

Here is the call graph for this function:

Here is the caller graph for this function:

const Foam::scalarField & YLiquid ( ) const
inline

Return const access to mass fractions of liquids.

Definition at line 184 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().

Here is the call graph for this function:

Here is the caller graph for this function:

const Foam::scalarField & YSolid ( ) const
inline

Return const access to mass fractions of solids.

Definition at line 192 of file ReactingMultiphaseParcelI.H.

References ReactingMultiphaseParcel< ParcelType >::YSolid_.

Referenced by ReactingMultiphaseParcel< ParcelType >::iNew::operator()(), ReactingMultiphaseParcel< ParcelType >::writeFields(), and ReactingMultiphaseParcel< ParcelType >::YLiquid().

Here is the caller graph for this function:

Foam::label canCombust ( ) const
inline

Return const access to the canCombust flag.

Definition at line 200 of file ReactingMultiphaseParcelI.H.

References ReactingMultiphaseParcel< ParcelType >::canCombust_.

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

Here is the caller graph for this function:

Foam::scalarField & YGas ( )
inline

Return access to mass fractions of gases.

Definition at line 207 of file ReactingMultiphaseParcelI.H.

References ReactingMultiphaseParcel< ParcelType >::YGas_.

Foam::scalarField & YLiquid ( )
inline

Return access to mass fractions of liquids.

Definition at line 214 of file ReactingMultiphaseParcelI.H.

References ReactingMultiphaseParcel< ParcelType >::YLiquid_.

Foam::scalarField & YSolid ( )
inline

Return access to mass fractions of solids.

Definition at line 221 of file ReactingMultiphaseParcelI.H.

References ReactingMultiphaseParcel< ParcelType >::YSolid_.

Foam::label & canCombust ( )
inline

Return access to the canCombust flag.

Definition at line 228 of file ReactingMultiphaseParcelI.H.

References ReactingMultiphaseParcel< ParcelType >::canCombust_.

void setCellValues ( TrackData &  td,
const scalar  dt,
const label  cellI 
)

Set cell values.

Definition at line 135 of file ReactingMultiphaseParcel.C.

References ReactingMultiphaseParcel< ParcelType >::cellValueSourceCorrection().

Referenced by ReactingMultiphaseParcel< ParcelType >::LEff(), and ReactingMultiphaseParcel< ParcelType >::iNew::operator()().

Here is the call graph for this function:

Here is the caller graph for this function:

void cellValueSourceCorrection ( TrackData &  td,
const scalar  dt,
const label  cellI 
)

Correct cell values using latest transfer information.

Definition at line 148 of file ReactingMultiphaseParcel.C.

References ReactingMultiphaseParcel< ParcelType >::calc().

Referenced by ReactingMultiphaseParcel< ParcelType >::iNew::operator()(), and ReactingMultiphaseParcel< ParcelType >::setCellValues().

Here is the call graph for this function:

Here is the caller graph for this function:

void calc ( TrackData &  td,
const scalar  dt,
const label  cellI 
)
void readFields ( CloudType c,
const CompositionType &  compModel 
)
static
void readFields ( CloudType c)
static

Read - no composition.

Definition at line 92 of file ReactingMultiphaseParcelIO.C.

References Foam::readFields(), ReactingMultiphaseParcel< ParcelType >::readFields(), and Cloud< ParticleType >::size().

Here is the call graph for this function:

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

Read - composition supplied.

Definition at line 213 of file ReactingMultiphaseParcelIO.C.

References ReactingMultiphaseParcel< ParcelType >::writeFields().

Here is the call graph for this function:

Foam::scalar CpEff ( TrackData &  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 ( TrackData &  td,
const scalar  p,
const scalar  T,
const label  idG,
const label  idL,
const label  idS 
) const

Definition at line 67 of file ReactingMultiphaseParcel.C.

Foam::scalar LEff ( TrackData &  td,
const scalar  p,
const scalar  T,
const label  idG,
const label  idL,
const label  idS 
) const

Definition at line 86 of file ReactingMultiphaseParcel.C.

References Foam::max(), and ReactingMultiphaseParcel< ParcelType >::setCellValues().

Here is the call graph for this function:

Friends And Related Function Documentation

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

Member Data Documentation

const Foam::label GAS
static

Definition at line 78 of file ReactingMultiphaseParcel.H.

const Foam::label LIQ
static

Definition at line 79 of file ReactingMultiphaseParcel.H.

const Foam::label SLD
static

Definition at line 80 of file ReactingMultiphaseParcel.H.

scalarField YGas_
protected
scalarField YLiquid_
protected
scalarField YSolid_
protected
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 200 of file ReactingMultiphaseParcel.H.

Referenced by ReactingMultiphaseParcel< ParcelType >::calcSurfaceReactions(), and ReactingMultiphaseParcel< ParcelType >::canCombust().


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