diff --git a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C index d3f8099ddfe8d71447411f4d24cc00c2f4d72d1e..e6470981e61bb9be81b4fd6a6ab1d2baa9e22c25 100644 --- a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C +++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C @@ -33,26 +33,27 @@ License namespace Foam { + template<> + const char* + NamedEnum + < + externalWallHeatFluxTemperatureFvPatchScalarField::operationMode, + 3 + >::names[] = + { + "fixed_heat_flux", + "fixed_heat_transfer_coefficient", + "unknown" + }; -template<> -const char* -NamedEnum -<externalWallHeatFluxTemperatureFvPatchScalarField::operationMode, 3>::names[]= -{ - "fixed_heat_flux", - "fixed_heat_transfer_coefficient", - "unknown" -}; +} // End namespace Foam -const NamedEnum +const Foam::NamedEnum < - externalWallHeatFluxTemperatureFvPatchScalarField::operationMode, 3 -> -externalWallHeatFluxTemperatureFvPatchScalarField::operationModeNames; + Foam::externalWallHeatFluxTemperatureFvPatchScalarField::operationMode, + 3 +> Foam::externalWallHeatFluxTemperatureFvPatchScalarField::operationModeNames; -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -260,6 +261,10 @@ void Foam::externalWallHeatFluxTemperatureFvPatchScalarField::updateCoeffs() { case fixedHeatFlux: { + refGrad() = (q_ + Qr)/kappa(Tp); + refValue() = 0.0; + valueFraction() = 0.0; + break; } case fixedHeatTransferCoeff: @@ -277,6 +282,13 @@ void Foam::externalWallHeatFluxTemperatureFvPatchScalarField::updateCoeffs() } } hp = 1.0/(1.0/h_ + totalSolidRes); + + Qr /= Tp; + refGrad() = 0.0; + refValue() = hp*Ta_/(hp - Qr); + valueFraction() = + (hp - Qr)/((hp - Qr) + kappa(Tp)*patch().deltaCoeffs()); + break; } default: @@ -290,21 +302,6 @@ void Foam::externalWallHeatFluxTemperatureFvPatchScalarField::updateCoeffs() } } - if (mode_ == fixedHeatFlux) - { - refGrad() = (q_ + Qr)/kappa(Tp); - refValue() = 0.0; - valueFraction() = 0.0; - } - else if (mode_ == fixedHeatTransferCoeff) - { - Qr /= Tp; - refGrad() = 0.0; - refValue() = hp*Ta_/(hp - Qr); - valueFraction() = - (hp - Qr)/((hp - Qr) + kappa(Tp)*patch().deltaCoeffs()); - } - mixedFvPatchScalarField::updateCoeffs(); if (debug) diff --git a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.H b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.H index 911a5549d3fb2ad22c3c461d13db7ac409ec7f70..ad4bc5fd8b45504c9bcd7dd86ef59b6e8c676f80 100644 --- a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.H +++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.H @@ -120,6 +120,7 @@ public: fixedHeatTransferCoeff, unknown }; + static const NamedEnum<operationMode, 3> operationModeNames;