Commit d2f3ad34 authored by andy's avatar andy
Browse files

ENH: Updated coal parcel surface reaction models

parent 5bb2ac5e
......@@ -44,7 +44,8 @@ Foam::COxidationDiffusionLimitedRate<CloudType>::COxidationDiffusionLimitedRate
O2GlobalId_(owner.composition().globalCarrierId("O2")),
CO2GlobalId_(owner.composition().globalCarrierId("CO2")),
WC_(0.0),
WO2_(0.0)
WO2_(0.0),
HcCO2_(0.0)
{
// Determine Cs ids
label idSolid = owner.composition().idSolid();
......@@ -55,6 +56,8 @@ Foam::COxidationDiffusionLimitedRate<CloudType>::COxidationDiffusionLimitedRate
const scalar WCO2 = owner.thermo().carrier().W(CO2GlobalId_);
WC_ = WCO2 - WO2_;
HcCO2_ = owner.thermo().carrier().Hc(CO2GlobalId_);
if (Sb_ < 0)
{
FatalErrorIn
......@@ -158,14 +161,11 @@ Foam::scalar Foam::COxidationDiffusionLimitedRate<CloudType>::calculate
dMassSRCarrier[CO2GlobalId_] += dmCO2;
const scalar HsC = thermo.solids().properties()[CsLocalId_].Hs(T);
const scalar HCO2 = thermo.carrier().H(CO2GlobalId_, T);
// carrier enthalpy transfer handled by change in composition
// const scalar HsO2 = thermo.carrier().Hs(O2GlobalId_, T);
// dhsTrans -= dmO2*HsO2;
// carrier sensible enthalpy exchange handled via change in mass
// Heat of reaction [J]
return dmC*HsC - dmCO2*HCO2;
return dmC*HsC - dmCO2*HcCO2_;
}
......
......@@ -86,6 +86,9 @@ class COxidationDiffusionLimitedRate
//- Molecular weight of O2 [kg/kmol]
scalar WO2_;
//- Formation enthalpy for CO2 [J/kg]
scalar HcCO2_;
public:
......
......@@ -45,7 +45,8 @@ COxidationKineticDiffusionLimitedRate
O2GlobalId_(owner.composition().globalCarrierId("O2")),
CO2GlobalId_(owner.composition().globalCarrierId("CO2")),
WC_(0.0),
WO2_(0.0)
WO2_(0.0),
HcCO2_(0.0)
{
// Determine Cs ids
label idSolid = owner.composition().idSolid();
......@@ -56,6 +57,8 @@ COxidationKineticDiffusionLimitedRate
const scalar WCO2 = owner.thermo().carrier().W(CO2GlobalId_);
WC_ = WCO2 - WO2_;
HcCO2_ = owner.thermo().carrier().Hc(CO2GlobalId_);
const scalar YCloc = owner.composition().Y0(idSolid)[CsLocalId_];
const scalar YSolidTot = owner.composition().YMixture0()[idSolid];
Info<< " C(s): particle mass fraction = " << YCloc*YSolidTot << endl;
......@@ -161,14 +164,11 @@ Foam::scalar Foam::COxidationKineticDiffusionLimitedRate<CloudType>::calculate
dMassSRCarrier[CO2GlobalId_] += dmCO2;
const scalar HsC = thermo.solids().properties()[CsLocalId_].Hs(T);
const scalar HCO2 = thermo.carrier().H(CO2GlobalId_, T);
// carrier enthalpy transfer handled by change in composition
// const scalar HsO2 = thermo.carrier().Hs(O2GlobalId_, T);
// dhsTrans -= dmO2*HsO2;
// carrier sensible enthalpy exchange handled via change in mass
// Heat of reaction [J]
return dmC*HsC - dmCO2*HCO2;
return dmC*HsC - dmCO2*HcCO2_;
}
......
......@@ -94,6 +94,9 @@ class COxidationKineticDiffusionLimitedRate
//- Molecular weight of O2 [kg/kmol]
scalar WO2_;
//- Formation enthalpy for CO2 [J/kg]
scalar HcCO2_;
public:
......
......@@ -57,7 +57,8 @@ Foam::COxidationMurphyShaddix<CloudType>::COxidationMurphyShaddix
O2GlobalId_(owner.composition().globalCarrierId("O2")),
CO2GlobalId_(owner.composition().globalCarrierId("CO2")),
WC_(0.0),
WO2_(0.0)
WO2_(0.0),
HcCO2_(0.0)
{
// Determine Cs ids
label idSolid = owner.composition().idSolid();
......@@ -68,6 +69,8 @@ Foam::COxidationMurphyShaddix<CloudType>::COxidationMurphyShaddix
const scalar WCO2 = owner.thermo().carrier().W(CO2GlobalId_);
WC_ = WCO2 - WO2_;
HcCO2_ = owner.thermo().carrier().Hc(CO2GlobalId_);
const scalar YCloc = owner.composition().Y0(idSolid)[CsLocalId_];
const scalar YSolidTot = owner.composition().YMixture0()[idSolid];
Info<< " C(s): particle mass fraction = " << YCloc*YSolidTot << endl;
......@@ -221,14 +224,11 @@ Foam::scalar Foam::COxidationMurphyShaddix<CloudType>::calculate
dMassSolid[CsLocalId_] += dOmega*WC_;
const scalar HsC = thermo.solids().properties()[CsLocalId_].Hs(T);
const scalar HCO2 = thermo.carrier().H(CO2GlobalId_, T);
// carrier enthalpy transfer handled by change in composition
// const scalar HsO2 = thermo.carrier().Hs(O2GlobalId_, T);
// dhsTrans -= dmO2*HsO2;
// carrier sensible enthalpy exchange handled via change in mass
// Heat of reaction
return dOmega*(WC_*HsC - (WC_ + WO2_)*HCO2);
// Heat of reaction [J]
return dOmega*(WC_*HsC - (WC_ + WO2_)*HcCO2_);
}
......
......@@ -115,6 +115,9 @@ class COxidationMurphyShaddix
//- Molecular weight of O2 [kg/kmol]
scalar WO2_;
//- Formation enthalpy for CO2 [J/kg]
scalar HcCO2_;
public:
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment