diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.C b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.C index 55a81ea6ec..d495bdbb8c 100644 --- a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.C +++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.C @@ -42,8 +42,8 @@ outletMappedUniformInletHeatAdditionFvPatchField outletPatchName_(), phiName_("phi"), Q_(0), - minTempLimit_(0), - maxTempLimit_(5000) + TMin_(0), + TMax_(5000) {} @@ -60,8 +60,8 @@ outletMappedUniformInletHeatAdditionFvPatchField outletPatchName_(ptf.outletPatchName_), phiName_(ptf.phiName_), Q_(ptf.Q_), - minTempLimit_(ptf.minTempLimit_), - maxTempLimit_(ptf.maxTempLimit_) + TMin_(ptf.TMin_), + TMax_(ptf.TMax_) {} @@ -77,8 +77,8 @@ outletMappedUniformInletHeatAdditionFvPatchField outletPatchName_(dict.lookup("outletPatch")), phiName_(dict.lookupOrDefault("phi", "phi")), Q_(readScalar(dict.lookup("Q"))), - minTempLimit_(dict.lookupOrDefault("minTempLimit", 0)), - maxTempLimit_(dict.lookupOrDefault("maxTempLimit", 5000)) + TMin_(dict.lookupOrDefault("TMin", 0)), + TMax_(dict.lookupOrDefault("TMax", 5000)) {} @@ -93,8 +93,8 @@ outletMappedUniformInletHeatAdditionFvPatchField outletPatchName_(ptf.outletPatchName_), phiName_(ptf.phiName_), Q_(ptf.Q_), - minTempLimit_(ptf.minTempLimit_), - maxTempLimit_(ptf.maxTempLimit_) + TMin_(ptf.TMin_), + TMax_(ptf.TMax_) {} @@ -110,8 +110,8 @@ outletMappedUniformInletHeatAdditionFvPatchField outletPatchName_(ptf.outletPatchName_), phiName_(ptf.phiName_), Q_(ptf.Q_), - minTempLimit_(ptf.minTempLimit_), - maxTempLimit_(ptf.maxTempLimit_) + TMin_(ptf.TMin_), + TMax_(ptf.TMax_) {} @@ -125,18 +125,15 @@ void Foam::outletMappedUniformInletHeatAdditionFvPatchField::updateCoeffs() return; } - const GeometricField& f + const volScalarField& vsf = ( - dynamic_cast&> - ( - this->internalField() - ) + dynamic_cast(this->internalField()) ); - const fvPatch& p = this->patch(); + const fvPatch& fvp = this->patch(); label outletPatchID = - p.patch().boundaryMesh().findPatchID(outletPatchName_); + fvp.patch().boundaryMesh().findPatchID(outletPatchName_); if (outletPatchID < 0) { @@ -145,16 +142,13 @@ void Foam::outletMappedUniformInletHeatAdditionFvPatchField::updateCoeffs() << abort(FatalError); } - const fvPatch& outletPatch = p.boundaryMesh()[outletPatchID]; + const fvPatch& outletPatch = fvp.boundaryMesh()[outletPatchID]; const fvPatchField& outletPatchField = - f.boundaryField()[outletPatchID]; + vsf.boundaryField()[outletPatchID]; const surfaceScalarField& phi = - this->db().lookupObject - ( - phiName_ - ); + db().lookupObject(phiName_); const scalarField& outletPatchPhi = phi.boundaryField()[outletPatchID]; scalar sumOutletPatchPhi = gSum(outletPatchPhi); @@ -162,27 +156,19 @@ void Foam::outletMappedUniformInletHeatAdditionFvPatchField::updateCoeffs() if (sumOutletPatchPhi > SMALL) { const basicThermo& thermo = - this->db().lookupObject(basicThermo::dictName); + db().lookupObject(basicThermo::dictName); + + const scalarField& pp = thermo.p().boundaryField()[outletPatchID]; + const scalarField& pT = thermo.T().boundaryField()[outletPatchID]; scalar averageOutletField = gSum(outletPatchPhi*outletPatchField)/sumOutletPatchPhi; - const scalarField Cpf(thermo.Cp()().boundaryField()[outletPatchID]); + const scalarField Cpf(thermo.Cp(pp, pT, outletPatchID)); scalar totalPhiCp = gSum(outletPatchPhi)*gAverage(Cpf); - operator== - ( - min - ( - max - ( - averageOutletField + Q_/totalPhiCp, - minTempLimit_ - ), - maxTempLimit_ - ) - ); + operator==(min(max(averageOutletField + Q_/totalPhiCp, TMin_), TMax_)); } else { @@ -205,14 +191,10 @@ void Foam::outletMappedUniformInletHeatAdditionFvPatchField::write fvPatchScalarField::write(os); os.writeKeyword("outletPatch") << outletPatchName_ << token::END_STATEMENT << nl; - writeEntryIfDifferent(os, "phi", "phi", phiName_); - os.writeKeyword("Q") << Q_ << token::END_STATEMENT << nl; - os.writeKeyword("minTempLimit") - << minTempLimit_ << token::END_STATEMENT << nl; - os.writeKeyword("maxTempLimit") - << maxTempLimit_ << token::END_STATEMENT << nl; + os.writeKeyword("TMin") << TMin_ << token::END_STATEMENT << nl; + os.writeKeyword("TMax") << TMax_ << token::END_STATEMENT << nl; this->writeEntry("value", os); } diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.H b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.H index b80efdd523..bf38df03a1 100644 --- a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.H +++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/outletMappedUniformInletHeatAddition/outletMappedUniformInletHeatAdditionFvPatchField.H @@ -32,17 +32,17 @@ Description This temperature boundary condition averages the temperature over the "outlet" patch specified by name "outletPatchName" and applies an extra heat source. This is set as a uniform temperature value on this patch. - Additionally minTempLimit/maxTempLimit limits can be applied + Additionally TMin/TMax limits can be applied \heading Patch usage \table - Property | Description | Required | Default value - outletPatch | name of outlet patch | yes | - Q | Heat addition | yes - phi | flux field name | no | phi - minTempLimit | min temperature limit | no | 0.0 - maxTempLimit | max temperature limit | no | 5000.0 + Property | Description | Required | Default value + outletPatch | name of outlet patch | yes | + Q | Heat addition | yes + phi | flux field name | no | phi + TMin | min temperature limit | no | 0.0 + TMax | max temperature limit | no | 5000.0 \endtable Example of the boundary condition specification: @@ -96,10 +96,10 @@ class outletMappedUniformInletHeatAdditionFvPatchField scalar Q_; //- Minimum Temperature Limit - scalar minTempLimit_; + scalar TMin_; //- Maxmum Temperature Limit - scalar maxTempLimit_; + scalar TMax_; public: diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/T b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/T index 821c92211e..1caf3dd1cc 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/T +++ b/tutorials/compressible/rhoPimpleFoam/RAS/TJunction/0/T @@ -26,8 +26,8 @@ boundaryField type outletMappedUniformInletHeatAddition; outletPatchName outlet1; Q 5; // Heat addition in W - minTempLimit 300; - maxTempLimit 500; + TMin 300; + TMax 500; value $internalField; }