ENH: radiation - temperature dependent properties

ENH: radiationModel - expose T()
This commit is contained in:
Andrew Heather
2024-06-04 10:10:24 +01:00
committed by Mark OLESEN
parent de39878b9b
commit d71b3c4633
5 changed files with 13 additions and 8 deletions

View File

@ -139,7 +139,7 @@ void Foam::radiation::MarshakRadiationFvPatchScalarField::updateCoeffs()
const tmp<scalarField> temissivity const tmp<scalarField> temissivity
( (
boundaryRadiation.emissivity(patch().index()) boundaryRadiation.emissivity(patch().index(), 0, nullptr, &Tp)
); );
const scalarField& emissivity = temissivity(); const scalarField& emissivity = temissivity();

View File

@ -178,14 +178,14 @@ updateCoeffs()
const tmp<scalarField> temissivity const tmp<scalarField> temissivity
( (
boundaryRadiation.emissivity(patch().index()) boundaryRadiation.emissivity(patch().index(), 0, nullptr, &Tp)
); );
const scalarField& emissivity = temissivity(); const scalarField& emissivity = temissivity();
const tmp<scalarField> ttransmissivity const tmp<scalarField> ttransmissivity
( (
boundaryRadiation.transmissivity(patch().index()) boundaryRadiation.transmissivity(patch().index(), 0, nullptr, &Tp)
); );
const scalarField& transmissivity = ttransmissivity(); const scalarField& transmissivity = ttransmissivity();

View File

@ -167,15 +167,17 @@ updateCoeffs()
boundaryRadiationProperties::New(internalField().mesh()); boundaryRadiationProperties::New(internalField().mesh());
const auto& Tp = radiation.T().boundaryField()[patchi];
const tmp<scalarField> temissivity const tmp<scalarField> temissivity
( (
boundaryRadiation.emissivity(patch().index(), lambdaId) boundaryRadiation.emissivity(patchi, lambdaId, nullptr, &Tp)
); );
const scalarField& emissivity = temissivity(); const scalarField& emissivity = temissivity();
const tmp<scalarField> ttransmissivity const tmp<scalarField> ttransmissivity
( (
boundaryRadiation.transmissivity(patch().index(), lambdaId) boundaryRadiation.transmissivity(patchi, lambdaId, nullptr, &Tp)
); );
const scalarField& transmissivity = ttransmissivity(); const scalarField& transmissivity = ttransmissivity();
@ -217,7 +219,7 @@ updateCoeffs()
const volScalarField& qSec = const volScalarField& qSec =
this->db().lookupObject<volScalarField>(qSecName); this->db().lookupObject<volScalarField>(qSecName);
Ir += qSec.boundaryField()[patch().index()]; Ir += qSec.boundaryField()[patchi];
} }
} }

View File

@ -240,6 +240,9 @@ public:
return radiation_; return radiation_;
} }
//- Return access to the temperature field
const volScalarField& T() const noexcept { return T_; }
//- Source term component (for power of T^4) //- Source term component (for power of T^4)
virtual tmp<volScalarField> Rp() const = 0; virtual tmp<volScalarField> Rp() const = 0;

View File

@ -738,14 +738,14 @@ void Foam::radiation::viewFactor::calculate()
fvPatchScalarField& qrPatch = qrBf[patchID]; fvPatchScalarField& qrPatch = qrBf[patchID];
greyDiffusiveViewFactorFixedValueFvPatchScalarField& qrp = auto& qrp =
refCast refCast
< <
greyDiffusiveViewFactorFixedValueFvPatchScalarField greyDiffusiveViewFactorFixedValueFvPatchScalarField
>(qrPatch); >(qrPatch);
const tmp<scalarField> teb = const tmp<scalarField> teb =
boundaryRadiation.emissivity(patchID, bandI); boundaryRadiation.emissivity(patchID, bandI, nullptr, &Tp);
const scalarField& eb = teb(); const scalarField& eb = teb();