diff --git a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C
index 5ee38ffba1adbfcd21583e99300897678fbeb7aa..0b8ef68cf08e2aa8ef791d8bdfdc04ba75162570 100644
--- a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C
+++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C
@@ -114,8 +114,17 @@ turbulentHeatFluxTemperatureFvPatchScalarField
     q_("q", dict, p.size()),
     QrName_(dict.lookupOrDefault<word>("Qr", "none"))
 {
-    fvPatchField<scalar>::operator=(patchInternalField());
-    gradient() = 0.0;
+    if (dict.found("value") && dict.found("gradient"))
+    {
+        fvPatchField<scalar>::operator=(Field<scalar>("value", dict, p.size()));
+        gradient() = Field<scalar>("gradient", dict, p.size());
+    }
+    else
+    {
+        // Still reading so cannot yet evaluate. Make up a value.
+        fvPatchField<scalar>::operator=(patchInternalField());
+        gradient() = 0.0;
+    }
 }