diff --git a/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.C b/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.C
index 4e04151d19bd5d91ed5466a484d380f50210c5f6..c88c0a59ffe2e637c44f8b09920591fbfae95cdb 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.C
+++ b/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.C
@@ -41,7 +41,7 @@ Foam::totalPressureFvPatchScalarField::totalPressureFvPatchScalarField
     fixedValueFvPatchScalarField(p, iF),
     UName_("U"),
     phiName_("phi"),
-    rhoName_("none"),
+    rhoName_("rho"),
     psiName_("none"),
     gamma_(0.0),
     p0_(p.size(), 0.0)
@@ -58,9 +58,9 @@ Foam::totalPressureFvPatchScalarField::totalPressureFvPatchScalarField
     fixedValueFvPatchScalarField(p, iF),
     UName_(dict.lookupOrDefault<word>("U", "U")),
     phiName_(dict.lookupOrDefault<word>("phi", "phi")),
-    rhoName_(dict.lookupOrDefault<word>("rho", "none")),
+    rhoName_(dict.lookupOrDefault<word>("rho", "rho")),
     psiName_(dict.lookupOrDefault<word>("psi", "none")),
-    gamma_(readScalar(dict.lookup("gamma"))),
+    gamma_(psiName_ != "none" ? readScalar(dict.lookup("gamma")) : 1),
     p0_("p0", dict, p.size())
 {
     if (dict.found("value"))
@@ -167,49 +167,59 @@ void Foam::totalPressureFvPatchScalarField::updateCoeffs
     const fvsPatchField<scalar>& phip =
         patch().lookupPatchField<surfaceScalarField, scalar>(phiName_);
 
-    if (psiName_ == "none" && rhoName_ == "none")
+    if (internalField().dimensions() == dimPressure)
     {
-        operator==(p0p - 0.5*(1.0 - pos(phip))*magSqr(Up));
-    }
-    else if (rhoName_ == "none")
-    {
-        const fvPatchField<scalar>& psip =
-            patch().lookupPatchField<volScalarField, scalar>(psiName_);
-
-        if (gamma_ > 1.0)
+        if (psiName_ == "none")
         {
-            scalar gM1ByG = (gamma_ - 1.0)/gamma_;
+            // Variable density and low-speed compressible flow
 
-            operator==
-            (
-                p0p
-               /pow
-                (
-                    (1.0 + 0.5*psip*gM1ByG*(1.0 - pos(phip))*magSqr(Up)),
-                    1.0/gM1ByG
-                )
-            );
+            const fvPatchField<scalar>& rho =
+                patch().lookupPatchField<volScalarField, scalar>(rhoName_);
+
+            operator==(p0p - 0.5*rho*(1.0 - pos(phip))*magSqr(Up));
         }
         else
         {
-            operator==(p0p/(1.0 + 0.5*psip*(1.0 - pos(phip))*magSqr(Up)));
+            // High-speed compressible flow
+
+            const fvPatchField<scalar>& psip =
+                patch().lookupPatchField<volScalarField, scalar>(psiName_);
+
+            if (gamma_ > 1)
+            {
+                scalar gM1ByG = (gamma_ - 1)/gamma_;
+
+                operator==
+                (
+                    p0p
+                   /pow
+                    (
+                        (1.0 + 0.5*psip*gM1ByG*(1.0 - pos(phip))*magSqr(Up)),
+                        1.0/gM1ByG
+                    )
+                );
+            }
+            else
+            {
+                operator==(p0p/(1.0 + 0.5*psip*(1.0 - pos(phip))*magSqr(Up)));
+            }
         }
+
     }
-    else if (psiName_ == "none")
+    else if (internalField().dimensions() == dimPressure/dimDensity)
     {
-        const fvPatchField<scalar>& rho =
-            patch().lookupPatchField<volScalarField, scalar>(rhoName_);
-
-        operator==(p0p - 0.5*rho*(1.0 - pos(phip))*magSqr(Up));
+        // Incompressible flow
+        operator==(p0p - 0.5*(1.0 - pos(phip))*magSqr(Up));
     }
     else
     {
         FatalErrorInFunction
-            << " rho or psi set inconsistently, rho = " << rhoName_
-            << ", psi = " << psiName_ << ".\n"
-            << "    Set either rho or psi or neither depending on the "
-               "definition of total pressure." << nl
-            << "    Set the unused variable(s) to 'none'.\n"
+            << " Incorrect pressure dimensions " << internalField().dimensions()
+            << nl
+            << "    Should be " << dimPressure
+            << " for compressible/variable density flow" << nl
+            << "    or " << dimPressure/dimDensity
+            << " for incompressible flow," << nl
             << "    on patch " << this->patch().name()
             << " of field " << this->internalField().name()
             << " in file " << this->internalField().objectPath()
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H
index 3688572a86cca1a409d93f0ebde0cdb177e2c129..eb7d95d99bc77b3de67cfa79386cf107516fc92d 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H
+++ b/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H
@@ -54,7 +54,7 @@ Description
             U       | velocity
         \endvartable
 
-    3. compressible transonic (\f$\gamma <= 1\f$):
+    3. compressible transonic (\f$\gamma = 1\f$):
         \f[
             p_p = \frac{p_0}{1 + 0.5 \psi |U|^2}
         \f]
@@ -78,27 +78,28 @@ Description
             G       | coefficient given by \f$\frac{\gamma}{1-\gamma}\f$
         \endvartable
 
-    The modes of operation are set via the combination of \c phi, \c rho, and
-    \c psi entries:
+    The modes of operation are set by the dimensions of the pressure field
+    to which this boundary condition is applied, the \c psi entry and the value
+    of \c gamma:
     \table
-        Mode                    | phi   | rho   | psi
-        incompressible subsonic | phi   | none  | none
-        compressible subsonic   | phi   | rho   | none
-        compressible transonic  | phi   | none  | psi
-        compressible supersonic | phi   | none  | psi
+        Mode                    | dimensions | psi   | gamma
+        incompressible subsonic | p/rho      |       |
+        compressible subsonic   | p          | none  |
+        compressible transonic  | p          | psi   | 1
+        compressible supersonic | p          | psi   | > 1
     \endtable
 
 
     \heading Patch usage
 
     \table
-        Property     | Description             | Required    | Default value
-        U            | velocity field name     | no          | U
-        phi          | flux field name         | no          | phi
-        rho          | density field name      | no          | none
-        psi          | compressibility field name | no       | none
-        gamma        | ratio of specific heats (Cp/Cv) | yes |
-        p0           | total pressure          | yes       |
+        Property     | Description                | Required | Default value
+        U            | Velocity field name        | no       | U
+        phi          | Flux field name            | no       | phi
+        rho          | Density field name         | no       | rho
+        psi          | Compressibility field name | no       | none
+        gamma        | (Cp/Cv)                    | no       | 1
+        p0           | Total pressure             | yes      |
     \endtable
 
     Example of the boundary condition specification:
@@ -106,18 +107,10 @@ Description
     myPatch
     {
         type            totalPressure;
-        U               U;
-        phi             phi;
-        rho             none;
-        psi             none;
-        gamma           1.4;
         p0              uniform 1e5;
     }
     \endverbatim
 
-Note
-    The default boundary behaviour is for subsonic, incompressible flow.
-
 SeeAlso
     Foam::fixedValueFvPatchField
 
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.C b/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.C
index d812a80a3dcfade8cffa369c04fec3d4f55b2f99..744ac51b472f56e5ff9b5539986600eee8a213c5 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.C
+++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.C
@@ -41,10 +41,10 @@ uniformTotalPressureFvPatchScalarField
     fixedValueFvPatchScalarField(p, iF),
     UName_("U"),
     phiName_("phi"),
-    rhoName_("none"),
+    rhoName_("rho"),
     psiName_("none"),
     gamma_(0.0),
-    pressure_()
+    p0_()
 {}
 
 
@@ -59,10 +59,10 @@ uniformTotalPressureFvPatchScalarField
     fixedValueFvPatchScalarField(p, iF),
     UName_(dict.lookupOrDefault<word>("U", "U")),
     phiName_(dict.lookupOrDefault<word>("phi", "phi")),
-    rhoName_(dict.lookupOrDefault<word>("rho", "none")),
+    rhoName_(dict.lookupOrDefault<word>("rho", "rho")),
     psiName_(dict.lookupOrDefault<word>("psi", "none")),
-    gamma_(readScalar(dict.lookup("gamma"))),
-    pressure_(Function1<scalar>::New("pressure", dict))
+    gamma_(psiName_ != "none" ? readScalar(dict.lookup("gamma")) : 1),
+    p0_(Function1<scalar>::New("p0", dict))
 {
     if (dict.found("value"))
     {
@@ -74,7 +74,7 @@ uniformTotalPressureFvPatchScalarField
     else
     {
         const scalar t = this->db().time().timeOutputValue();
-        fvPatchScalarField::operator==(pressure_->value(t));
+        fvPatchScalarField::operator==(p0_->value(t));
     }
 }
 
@@ -94,14 +94,14 @@ uniformTotalPressureFvPatchScalarField
     rhoName_(ptf.rhoName_),
     psiName_(ptf.psiName_),
     gamma_(ptf.gamma_),
-    pressure_(ptf.pressure_, false)
+    p0_(ptf.p0_, false)
 {
     patchType() = ptf.patchType();
 
     // Set the patch pressure to the current total pressure
     // This is not ideal but avoids problems with the creation of patch faces
     const scalar t = this->db().time().timeOutputValue();
-    fvPatchScalarField::operator==(pressure_->value(t));
+    fvPatchScalarField::operator==(p0_->value(t));
 }
 
 
@@ -117,7 +117,7 @@ uniformTotalPressureFvPatchScalarField
     rhoName_(ptf.rhoName_),
     psiName_(ptf.psiName_),
     gamma_(ptf.gamma_),
-    pressure_(ptf.pressure_, false)
+    p0_(ptf.p0_, false)
 {}
 
 
@@ -134,7 +134,7 @@ uniformTotalPressureFvPatchScalarField
     rhoName_(ptf.rhoName_),
     psiName_(ptf.psiName_),
     gamma_(ptf.gamma_),
-    pressure_(ptf.pressure_, false)
+    p0_(ptf.p0_, false)
 {}
 
 
@@ -150,54 +150,64 @@ void Foam::uniformTotalPressureFvPatchScalarField::updateCoeffs
         return;
     }
 
-    scalar p0 = pressure_->value(this->db().time().timeOutputValue());
+    scalar p0 = p0_->value(this->db().time().timeOutputValue());
 
     const fvsPatchField<scalar>& phip =
         patch().lookupPatchField<surfaceScalarField, scalar>(phiName_);
 
-    if (psiName_ == "none" && rhoName_ == "none")
+    if (internalField().dimensions() == dimPressure)
     {
-        operator==(p0 - 0.5*(1.0 - pos(phip))*magSqr(Up));
-    }
-    else if (rhoName_ == "none")
-    {
-        const fvPatchField<scalar>& psip =
-            patch().lookupPatchField<volScalarField, scalar>(psiName_);
-
-        if (gamma_ > 1.0)
+        if (psiName_ == "none")
         {
-            scalar gM1ByG = (gamma_ - 1.0)/gamma_;
+            // Variable density and low-speed compressible flow
 
-            operator==
-            (
-                p0
-               /pow
-                (
-                    (1.0 + 0.5*psip*gM1ByG*(1.0 - pos(phip))*magSqr(Up)),
-                    1.0/gM1ByG
-                )
-            );
+            const fvPatchField<scalar>& rho =
+                patch().lookupPatchField<volScalarField, scalar>(rhoName_);
+
+            operator==(p0 - 0.5*rho*(1.0 - pos(phip))*magSqr(Up));
         }
         else
         {
-            operator==(p0/(1.0 + 0.5*psip*(1.0 - pos(phip))*magSqr(Up)));
+            // High-speed compressible flow
+
+            const fvPatchField<scalar>& psip =
+                patch().lookupPatchField<volScalarField, scalar>(psiName_);
+
+            if (gamma_ > 1)
+            {
+                scalar gM1ByG = (gamma_ - 1)/gamma_;
+
+                operator==
+                (
+                    p0
+                   /pow
+                    (
+                        (1.0 + 0.5*psip*gM1ByG*(1.0 - pos(phip))*magSqr(Up)),
+                        1.0/gM1ByG
+                    )
+                );
+            }
+            else
+            {
+                operator==(p0/(1.0 + 0.5*psip*(1.0 - pos(phip))*magSqr(Up)));
+            }
         }
+
     }
-    else if (psiName_ == "none")
+    else if (internalField().dimensions() == dimPressure/dimDensity)
     {
-        const fvPatchField<scalar>& rho =
-            patch().lookupPatchField<volScalarField, scalar>(rhoName_);
-
-        operator==(p0 - 0.5*rho*(1.0 - pos(phip))*magSqr(Up));
+        // Incompressible flow
+        operator==(p0 - 0.5*(1.0 - pos(phip))*magSqr(Up));
     }
     else
     {
         FatalErrorInFunction
-            << " rho or psi set inconsitently, rho = " << rhoName_
-            << ", psi = " << psiName_ << ".\n"
-            << "    Set either rho or psi or neither depending on the "
-               "definition of total pressure.\n"
-            << "    Set the unused variables to 'none'.\n"
+            << " Incorrect pressure dimensions " << internalField().dimensions()
+            << nl
+            << "    Should be " << dimPressure
+            << " for compressible/variable density flow" << nl
+            << "    or " << dimPressure/dimDensity
+            << " for incompressible flow," << nl
             << "    on patch " << this->patch().name()
             << " of field " << this->internalField().name()
             << " in file " << this->internalField().objectPath()
@@ -222,7 +232,7 @@ void Foam::uniformTotalPressureFvPatchScalarField::write(Ostream& os) const
     os.writeKeyword("rho") << rhoName_ << token::END_STATEMENT << nl;
     os.writeKeyword("psi") << psiName_ << token::END_STATEMENT << nl;
     os.writeKeyword("gamma") << gamma_ << token::END_STATEMENT << nl;
-    pressure_->writeData(os);
+    p0_->writeData(os);
     writeEntry("value", os);
 }
 
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H
index 0f766e413d58380ee70ec4790f3d5aecf110d652..f67be25a9383b230ab547fbbf4ae7dd8b76641ca 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H
+++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H
@@ -29,18 +29,18 @@ Group
 
 Description
     This boundary condition provides a time-varying form of the uniform total
-    pressure boundary condition.
+    pressure boundary condition Foam::totalPressureFvPatchField.
 
     \heading Patch usage
 
     \table
-        Property     | Description             | Required    | Default value
-        U            | velocity field name     | no          | U
-        phi          | flux field name         | no          | phi
-        rho          | density field name      | no          | none
-        psi          | compressibility field name | no       | none
-        gamma        | ratio of specific heats (Cp/Cv) | yes |
-        pressure     | total pressure as a function of time | yes |
+        Property     | Description                | Required    | Default value
+        U            | Velocity field name        | no          | U
+        phi          | Flux field name            | no          | phi
+        rho          | Density field name         | no          | rho
+        psi          | Compressibility field name | no          | none
+        gamma        | (Cp/Cv)                    | no          | 1
+        p0           | Total pressure as a function of time | yes |
     \endtable
 
     Example of the boundary condition specification:
@@ -48,22 +48,13 @@ Description
     myPatch
     {
         type            uniformTotalPressure;
-        U               U;
-        phi             phi;
-        rho             rho;
-        psi             psi;
-        gamma           1.4;
-        pressure        uniform 1e5;
+        p0              uniform 1e5;
     }
     \endverbatim
 
-    The \c pressure entry is specified as a Function1 type, able to describe
+    The \c p0 entry is specified as a Function1 type, able to describe
     time varying functions.
 
-Note
-    The default boundary behaviour is for subsonic, incompressible flow.
-
-
 SeeAlso
     Foam::Function1Types
     Foam::uniformFixedValueFvPatchField
@@ -112,7 +103,7 @@ class uniformTotalPressureFvPatchScalarField
         scalar gamma_;
 
         //- Table of time vs total pressure, including the bounding treatment
-        autoPtr<Function1<scalar>> pressure_;
+        autoPtr<Function1<scalar>> p0_;
 
 
 public:
diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/p b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/p
index 1fec35ae1c6fe7ff33fd795f122030e5c3460bb7..d3bca9b21e593adc7bfc355153d035ce24783825 100644
--- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/p
+++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D/0/p
@@ -33,10 +33,6 @@ boundaryField
     {
         type            totalPressure;
         p0              $internalField;
-        rho             none;
-        psi             none;
-        gamma           1;
-        value           $internalField;
     }
     frontAndBack
     {
diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/p b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/p
index 1fec35ae1c6fe7ff33fd795f122030e5c3460bb7..d3bca9b21e593adc7bfc355153d035ce24783825 100644
--- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/p
+++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS/0/p
@@ -33,10 +33,6 @@ boundaryField
     {
         type            totalPressure;
         p0              $internalField;
-        rho             none;
-        psi             none;
-        gamma           1;
-        value           $internalField;
     }
     frontAndBack
     {
diff --git a/tutorials/compressible/rhoCentralDyMFoam/movingCone/0/p b/tutorials/compressible/rhoCentralDyMFoam/movingCone/0/p
index 0522075d327a906cac6b9639571804da446229f7..196f5c7f2a53335262ac9872bd6ee2265c055d92 100644
--- a/tutorials/compressible/rhoCentralDyMFoam/movingCone/0/p
+++ b/tutorials/compressible/rhoCentralDyMFoam/movingCone/0/p
@@ -39,10 +39,6 @@ boundaryField
     {
         type            totalPressure;
         p0              $internalField;
-        rho             none;
-        psi             none;
-        gamma           1;
-        value           $internalField;
     }
 
     farField
diff --git a/tutorials/compressible/rhoPimpleDyMFoam/annularThermalMixer/constant/boundaryConditions b/tutorials/compressible/rhoPimpleDyMFoam/annularThermalMixer/constant/boundaryConditions
index 9412b2521d669312d74035b7adbf3cbd90a91207..6380ceb1ebaa6aebdaa4fb9f22e46ee2042c3af8 100644
--- a/tutorials/compressible/rhoPimpleDyMFoam/annularThermalMixer/constant/boundaryConditions
+++ b/tutorials/compressible/rhoPimpleDyMFoam/annularThermalMixer/constant/boundaryConditions
@@ -42,11 +42,7 @@ outlet
     p
     {
         type            totalPressure;
-        value           uniform 1e5;
         p0              uniform 1e5;
-        rho             rho;
-        psi             none;
-        gamma           1.4;
     }
 
     U
diff --git a/tutorials/compressible/sonicDyMFoam/movingCone/0/p b/tutorials/compressible/sonicDyMFoam/movingCone/0/p
index 0522075d327a906cac6b9639571804da446229f7..196f5c7f2a53335262ac9872bd6ee2265c055d92 100644
--- a/tutorials/compressible/sonicDyMFoam/movingCone/0/p
+++ b/tutorials/compressible/sonicDyMFoam/movingCone/0/p
@@ -39,10 +39,6 @@ boundaryField
     {
         type            totalPressure;
         p0              $internalField;
-        rho             none;
-        psi             none;
-        gamma           1;
-        value           $internalField;
     }
 
     farField
diff --git a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p
index 92fe672c8223056fe60cc03d1147cdfc66554a7d..315aec8a091981d3d867dafaf1d0342015cffa31 100644
--- a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p
+++ b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p
@@ -39,10 +39,6 @@ boundaryField
     {
         type            totalPressure;
         p0              $internalField;
-        rho             none;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
 
     farField
diff --git a/tutorials/incompressible/pimpleFoam/TJunction/0/p b/tutorials/incompressible/pimpleFoam/TJunction/0/p
index 17217a216a1ccd8ed0d5507501635e7a8bc9199b..d663238d281be2b75bc4c310a7ab2eef9538fa5c 100644
--- a/tutorials/incompressible/pimpleFoam/TJunction/0/p
+++ b/tutorials/incompressible/pimpleFoam/TJunction/0/p
@@ -23,16 +23,11 @@ boundaryField
     inlet
     {
         type            uniformTotalPressure;
-        pressure        table
+        p0              table
         (
             (0 10)
             (1 40)
         );
-        p0              40; // only used for restarts
-        rho             none;
-        psi             none;
-        gamma           1;
-        value           uniform 40;
     }
 
     outlet1
diff --git a/tutorials/incompressible/pimpleFoam/TJunctionFan/0.orig/p b/tutorials/incompressible/pimpleFoam/TJunctionFan/0.orig/p
index 42728c992c060c84f25b6230b8e883ce133fd575..d41f644fe163bb5883d740f60a9c6bbc084271c1 100644
--- a/tutorials/incompressible/pimpleFoam/TJunctionFan/0.orig/p
+++ b/tutorials/incompressible/pimpleFoam/TJunctionFan/0.orig/p
@@ -24,17 +24,11 @@ boundaryField
     inlet
     {
         type            uniformTotalPressure;
-        rho             none;
-        psi             none;
-        gamma           1;
-        pressure        table
-        2
+        p0              table
         (
             (0 10)
             (1 40)
-        )
-        ;
-        value           uniform 40;
+        );
     }
     outlet1
     {
diff --git a/tutorials/lagrangian/reactingParcelFoam/counterFlowFlame2DLTS/0/p b/tutorials/lagrangian/reactingParcelFoam/counterFlowFlame2DLTS/0/p
index 1fec35ae1c6fe7ff33fd795f122030e5c3460bb7..d3bca9b21e593adc7bfc355153d035ce24783825 100644
--- a/tutorials/lagrangian/reactingParcelFoam/counterFlowFlame2DLTS/0/p
+++ b/tutorials/lagrangian/reactingParcelFoam/counterFlowFlame2DLTS/0/p
@@ -33,10 +33,6 @@ boundaryField
     {
         type            totalPressure;
         p0              $internalField;
-        rho             none;
-        psi             none;
-        gamma           1;
-        value           $internalField;
     }
     frontAndBack
     {
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/0/p b/tutorials/multiphase/cavitatingFoam/les/throttle/0/p
index fdd5db3dfeae6c1d9f139dc0df041feb7d07eba4..d2d06233aa7af67929d2c573d01b1de94e6c0560 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle/0/p
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle/0/p
@@ -23,9 +23,6 @@ boundaryField
     inlet
     {
         type            totalPressure;
-        rho             rho;
-        psi             none;
-        gamma           1;
         p0              uniform 300e5;
     }
 
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.orig/p b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.orig/p
index 7bde4729a42fc80282ed5d50647929f3e59f2f07..d007d373270234416b8bbc2ad8569b617d249c5e 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.orig/p
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.orig/p
@@ -23,9 +23,6 @@ boundaryField
     inlet
     {
         type            totalPressure;
-        rho             rho;
-        psi             none;
-        gamma           1;
         p0              uniform 300e5;
     }
 
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/0/p b/tutorials/multiphase/cavitatingFoam/ras/throttle/0/p
index fdd5db3dfeae6c1d9f139dc0df041feb7d07eba4..d2d06233aa7af67929d2c573d01b1de94e6c0560 100644
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/0/p
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/0/p
@@ -23,9 +23,6 @@ boundaryField
     inlet
     {
         type            totalPressure;
-        rho             rho;
-        psi             none;
-        gamma           1;
         p0              uniform 300e5;
     }
 
diff --git a/tutorials/multiphase/compressibleMultiphaseInterFoam/laminar/damBreak4phase/0.orig/p_rgh b/tutorials/multiphase/compressibleMultiphaseInterFoam/laminar/damBreak4phase/0.orig/p_rgh
index c97740b9fe8fede872cf1979831cd9e318f493fe..32450fed7b5ed4075ef74932f73d9d48037654e8 100644
--- a/tutorials/multiphase/compressibleMultiphaseInterFoam/laminar/damBreak4phase/0.orig/p_rgh
+++ b/tutorials/multiphase/compressibleMultiphaseInterFoam/laminar/damBreak4phase/0.orig/p_rgh
@@ -42,10 +42,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 1e5;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           $internalField;
     }
 
     defaultFaces
diff --git a/tutorials/multiphase/interDyMFoam/ras/DTCHull/0.orig/p_rgh b/tutorials/multiphase/interDyMFoam/ras/DTCHull/0.orig/p_rgh
index 7546ea7122e43a27396e42f3e8d3083cf997ed43..e8fe51c50d855b016d7230c8a0f7099866b1a2bb 100644
--- a/tutorials/multiphase/interDyMFoam/ras/DTCHull/0.orig/p_rgh
+++ b/tutorials/multiphase/interDyMFoam/ras/DTCHull/0.orig/p_rgh
@@ -39,10 +39,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           $internalField;
     }
 
     hull
diff --git a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0.orig/p_rgh b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0.orig/p_rgh
index bb91b933fe027f4fb60884f42c88db3f67036823..297c28eb09d0d940d0857ae681f7df0c79d2007c 100644
--- a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0.orig/p_rgh
+++ b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0.orig/p_rgh
@@ -38,10 +38,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
 }
 
diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/0.orig/p_rgh b/tutorials/multiphase/interDyMFoam/ras/floatingObject/0.orig/p_rgh
index 11d59b65de82fc225e937afdac86ac34eac60ed9..7602ec8372cc4cd7696f60908a630a5b5a867000 100644
--- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/0.orig/p_rgh
+++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/0.orig/p_rgh
@@ -28,10 +28,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
     floatingObject
     {
diff --git a/tutorials/multiphase/interFoam/laminar/damBreak/damBreak/0/p_rgh b/tutorials/multiphase/interFoam/laminar/damBreak/damBreak/0/p_rgh
index 64bcdfe9e2a2817f52911141065992e85cea3788..97c1c5f1180a0efe7dd95cca900e1b0c990a0fcc 100644
--- a/tutorials/multiphase/interFoam/laminar/damBreak/damBreak/0/p_rgh
+++ b/tutorials/multiphase/interFoam/laminar/damBreak/damBreak/0/p_rgh
@@ -42,10 +42,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
 
     defaultFaces
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/p_rgh b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/p_rgh
index 69ce1c56b5718f6f5bcdde91ca28daf1178c35be..913189f4ff1c537de076f50ba8f48c808eeb1909 100644
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/p_rgh
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/p_rgh
@@ -39,10 +39,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
 
     front
diff --git a/tutorials/multiphase/interFoam/ras/DTCHull/0.orig/p_rgh b/tutorials/multiphase/interFoam/ras/DTCHull/0.orig/p_rgh
index 7546ea7122e43a27396e42f3e8d3083cf997ed43..e8fe51c50d855b016d7230c8a0f7099866b1a2bb 100644
--- a/tutorials/multiphase/interFoam/ras/DTCHull/0.orig/p_rgh
+++ b/tutorials/multiphase/interFoam/ras/DTCHull/0.orig/p_rgh
@@ -39,10 +39,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           $internalField;
     }
 
     hull
diff --git a/tutorials/multiphase/interFoam/ras/damBreak/damBreak/0/p_rgh b/tutorials/multiphase/interFoam/ras/damBreak/damBreak/0/p_rgh
index 64bcdfe9e2a2817f52911141065992e85cea3788..97c1c5f1180a0efe7dd95cca900e1b0c990a0fcc 100644
--- a/tutorials/multiphase/interFoam/ras/damBreak/damBreak/0/p_rgh
+++ b/tutorials/multiphase/interFoam/ras/damBreak/damBreak/0/p_rgh
@@ -42,10 +42,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
 
     defaultFaces
diff --git a/tutorials/multiphase/interFoam/ras/damBreakPorousBaffle/0/p_rgh b/tutorials/multiphase/interFoam/ras/damBreakPorousBaffle/0/p_rgh
index f24e6e1ede3d72fc52f3edde3a6aa6452bf558fd..57e3aa66bd27cf1a585c2d0f5550e1fcd3cbd9dc 100644
--- a/tutorials/multiphase/interFoam/ras/damBreakPorousBaffle/0/p_rgh
+++ b/tutorials/multiphase/interFoam/ras/damBreakPorousBaffle/0/p_rgh
@@ -42,11 +42,7 @@ boundaryField
     atmosphere
     {
         type            totalPressure;
-        rho             rho;
-        psi             none;
-        gamma           1;
         p0              uniform 0;
-        value           uniform 0;
     }
     defaultFaces
     {
diff --git a/tutorials/multiphase/interFoam/ras/waterChannel/0/p_rgh b/tutorials/multiphase/interFoam/ras/waterChannel/0/p_rgh
index 128b2a26f526e11886630b5724ec0f27958ff64c..fca212c496550d2c1e9fae05b605acde390b9edc 100644
--- a/tutorials/multiphase/interFoam/ras/waterChannel/0/p_rgh
+++ b/tutorials/multiphase/interFoam/ras/waterChannel/0/p_rgh
@@ -24,10 +24,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
 
     ".*"
diff --git a/tutorials/multiphase/interFoam/ras/weirOverflow/0.orig/p_rgh b/tutorials/multiphase/interFoam/ras/weirOverflow/0.orig/p_rgh
index a36f8077f7ee95f3224a6e0b276b9fe040c3d956..cfd401c53c2a84ee4dc1d56d21b444cfd8265cd2 100644
--- a/tutorials/multiphase/interFoam/ras/weirOverflow/0.orig/p_rgh
+++ b/tutorials/multiphase/interFoam/ras/weirOverflow/0.orig/p_rgh
@@ -41,10 +41,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             none;
-        psi             none;
-        gamma           1;
-        value           uniform $pressure;
     }
 
     defaultFaces
diff --git a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/p_rgh b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/p_rgh
index 64bcdfe9e2a2817f52911141065992e85cea3788..97c1c5f1180a0efe7dd95cca900e1b0c990a0fcc 100644
--- a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/p_rgh
+++ b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/p_rgh
@@ -42,10 +42,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
 
     defaultFaces
diff --git a/tutorials/multiphase/interPhaseChangeDyMFoam/propeller/0.orig/p_rgh b/tutorials/multiphase/interPhaseChangeDyMFoam/propeller/0.orig/p_rgh
index 7538444499981491864a85ba9be3fed52630ee14..873c3994ca75ea40e06b7aad93a21861d62cb5df 100644
--- a/tutorials/multiphase/interPhaseChangeDyMFoam/propeller/0.orig/p_rgh
+++ b/tutorials/multiphase/interPhaseChangeDyMFoam/propeller/0.orig/p_rgh
@@ -33,10 +33,6 @@ boundaryField
     {
         type            totalPressure;
         p0              $internalField;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           $internalField;
     }
 
     wall
diff --git a/tutorials/multiphase/multiphaseEulerFoam/damBreak4phase/0.orig/p_rgh b/tutorials/multiphase/multiphaseEulerFoam/damBreak4phase/0.orig/p_rgh
index 22671e295d29c2fce1e5a0f8dee6cf0c33418547..46470aab9a6cecfd8787699a5c25a9cec9ae9346 100644
--- a/tutorials/multiphase/multiphaseEulerFoam/damBreak4phase/0.orig/p_rgh
+++ b/tutorials/multiphase/multiphaseEulerFoam/damBreak4phase/0.orig/p_rgh
@@ -44,10 +44,6 @@ boundaryField
         p0              uniform 0;
         U               U.air;
         phi             phi.air;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
 
     defaultFaces
diff --git a/tutorials/multiphase/multiphaseEulerFoam/damBreak4phaseFine/0.orig/p_rgh b/tutorials/multiphase/multiphaseEulerFoam/damBreak4phaseFine/0.orig/p_rgh
index 64bcdfe9e2a2817f52911141065992e85cea3788..97c1c5f1180a0efe7dd95cca900e1b0c990a0fcc 100644
--- a/tutorials/multiphase/multiphaseEulerFoam/damBreak4phaseFine/0.orig/p_rgh
+++ b/tutorials/multiphase/multiphaseEulerFoam/damBreak4phaseFine/0.orig/p_rgh
@@ -42,10 +42,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
 
     defaultFaces
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0.orig/p_rgh b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0.orig/p_rgh
index 64bcdfe9e2a2817f52911141065992e85cea3788..97c1c5f1180a0efe7dd95cca900e1b0c990a0fcc 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0.orig/p_rgh
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0.orig/p_rgh
@@ -42,10 +42,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
 
     defaultFaces
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0.orig/p_rgh b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0.orig/p_rgh
index 64bcdfe9e2a2817f52911141065992e85cea3788..97c1c5f1180a0efe7dd95cca900e1b0c990a0fcc 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0.orig/p_rgh
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0.orig/p_rgh
@@ -42,10 +42,6 @@ boundaryField
     {
         type            totalPressure;
         p0              uniform 0;
-        rho             rho;
-        psi             none;
-        gamma           1;
-        value           uniform 0;
     }
 
     defaultFaces