ReactingMultiphaseParcel,ReactingParcel: Use T0 for consistent radiation transfer

Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1636
This commit is contained in:
Henry Weller
2015-06-15 17:40:48 +01:00
parent f9358d33a0
commit 08191ee828
3 changed files with 14 additions and 13 deletions

View File

@ -360,14 +360,16 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
label gid = composition.localToCarrierId(LIQ, i);
td.cloud().rhoTrans(gid)[cellI] += dm*YMix[LIQ]*YLiquid_[i];
}
/*
// No mapping between solid components and carrier phase
/*
forAll(YSolid_, i)
{
label gid = composition.localToCarrierId(SLD, i);
td.cloud().rhoTrans(gid)[cellI] += dm*YMix[SLD]*YSolid_[i];
}
*/
*/
td.cloud().UTrans()[cellI] += dm*U0;
td.cloud().hsTrans()[cellI] += dm*HsEff(td, pc, T0, idG, idL, idS);
@ -441,8 +443,9 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
td.cloud().UTrans()[cellI] += dm*U0;
td.cloud().hsTrans()[cellI] += dm*hs;
}
/*
// No mapping between solid components and carrier phase
/*
forAll(YSolid_, i)
{
scalar dm = np0*dMassSolid[i];
@ -452,7 +455,8 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
td.cloud().UTrans()[cellI] += dm*U0;
td.cloud().hsTrans()[cellI] += dm*hs;
}
*/
*/
forAll(dMassSRCarrier, i)
{
scalar dm = np0*dMassSRCarrier[i];
@ -474,7 +478,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
if (td.cloud().radiation())
{
const scalar ap = this->areaP();
const scalar T4 = pow4(this->T_);
const scalar T4 = pow4(T0);
td.cloud().radAreaP()[cellI] += dt*np0*ap;
td.cloud().radT4()[cellI] += dt*np0*T4;
td.cloud().radAreaPT4()[cellI] += dt*np0*ap*T4;

View File

@ -304,9 +304,6 @@ void Foam::ReactingParcel<ParcelType>::cellValueSourceCorrection
this->Tc_ = td.cloud().constProps().TMin();
}
// constant pressure
// this->pc_ = this->pc_;
}
@ -433,7 +430,7 @@ void Foam::ReactingParcel<ParcelType>::calc
// Sources
//~~~~~~~~
// ~~~~~~~
// Explicit momentum source for particle
vector Su = vector::zero;
@ -608,7 +605,7 @@ void Foam::ReactingParcel<ParcelType>::calc
if (td.cloud().radiation())
{
const scalar ap = this->areaP();
const scalar T4 = pow4(this->T_);
const scalar T4 = pow4(T0);
td.cloud().radAreaP()[cellI] += dt*np0*ap;
td.cloud().radT4()[cellI] += dt*np0*T4;
td.cloud().radAreaPT4()[cellI] += dt*np0*ap*T4;

View File

@ -172,6 +172,9 @@ void Foam::ThermoParcel<ParcelType>::calc
const scalar np0 = this->nParticle_;
const scalar mass0 = this->mass();
// Store T for consistent radiation source
const scalar T0 = this->T_;
// Calc surface values
// ~~~~~~~~~~~~~~~~~~~
@ -210,9 +213,6 @@ void Foam::ThermoParcel<ParcelType>::calc
// Sum Ni*Cpi*Wi of emission species
scalar NCpW = 0.0;
// Store T for consistent radiation source
const scalar T0 = this->T_;
// Calculate new particle temperature
this->T_ =
this->calcHeatTransfer