diff --git a/src/functionObjects/field/wallHeatFlux/wallHeatFlux.C b/src/functionObjects/field/wallHeatFlux/wallHeatFlux.C index 895a88a0c2a7d0bbc7cde64bb05bd2e6e0ce53da..94c3326a1df2416e46c973b81a6bae439d14778f 100644 --- a/src/functionObjects/field/wallHeatFlux/wallHeatFlux.C +++ b/src/functionObjects/field/wallHeatFlux/wallHeatFlux.C @@ -66,15 +66,18 @@ void Foam::functionObjects::wallHeatFlux::calcHeatFlux volScalarField& wallHeatFlux ) { - surfaceScalarField heatFlux(fvc::interpolate(alpha)*fvc::snGrad(he)); - volScalarField::Boundary& wallHeatFluxBf = wallHeatFlux.boundaryFieldRef(); - const surfaceScalarField::Boundary& heatFluxBf = heatFlux.boundaryField(); + const volScalarField::Boundary& heBf = he.boundaryField(); + + const volScalarField::Boundary& alphaBf = alpha.boundaryField(); forAll(wallHeatFluxBf, patchi) { - wallHeatFluxBf[patchi] = heatFluxBf[patchi]; + if (!wallHeatFluxBf[patchi].coupled()) + { + wallHeatFluxBf[patchi] = alphaBf[patchi]*heBf[patchi].snGrad(); + } } if (foundObject<volScalarField>(qrName_)) @@ -85,7 +88,10 @@ void Foam::functionObjects::wallHeatFlux::calcHeatFlux forAll(wallHeatFluxBf, patchi) { - wallHeatFluxBf[patchi] -= radHeatFluxBf[patchi]; + if (!wallHeatFluxBf[patchi].coupled()) + { + wallHeatFluxBf[patchi] -= radHeatFluxBf[patchi]; + } } } }