diff --git a/TODO b/TODO
new file mode 100644
index 0000000000000000000000000000000000000000..aab3581489b42f7039305521c1c0ded91d800a2f
--- /dev/null
+++ b/TODO
@@ -0,0 +1,23 @@
+- check 
+    new fvMesh
+    new fvMeshSubset
+for consistency with createMesh.H
+
+
+
+- Check the following:
+
+doc/changes/inotify.txt
+ 
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/applications/solvers/DNS/dnsFoam/readTransportProperties.H b/applications/solvers/DNS/dnsFoam/readTransportProperties.H
index 77af096bf8a46b50328d45d758e1ec14c91301c7..0d80908542768ce4ee95f96875bc48bfc24558e4 100644
--- a/applications/solvers/DNS/dnsFoam/readTransportProperties.H
+++ b/applications/solvers/DNS/dnsFoam/readTransportProperties.H
@@ -7,7 +7,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/DNS/dnsFoam/readTurbulenceProperties.H b/applications/solvers/DNS/dnsFoam/readTurbulenceProperties.H
index 20fd654ceffcfecacbf4a8dbcdb99e907eeaa02f..ba1d5dcd8029e4de63ae5ea49dc226bec906800b 100644
--- a/applications/solvers/DNS/dnsFoam/readTurbulenceProperties.H
+++ b/applications/solvers/DNS/dnsFoam/readTurbulenceProperties.H
@@ -7,7 +7,7 @@
             "turbulenceProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/basic/laplacianFoam/createFields.H b/applications/solvers/basic/laplacianFoam/createFields.H
index 3359f2896c252cef7c7bc79f185856afda6c0132..616afe1a885d3324aec5389b820e90edfd105db6 100644
--- a/applications/solvers/basic/laplacianFoam/createFields.H
+++ b/applications/solvers/basic/laplacianFoam/createFields.H
@@ -23,7 +23,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/basic/scalarTransportFoam/createFields.H b/applications/solvers/basic/scalarTransportFoam/createFields.H
index 54a0bc45eca17a2e5b3c686c34c73c98789aa9aa..07731be3d6e07f2f23744f180e18eefd4aa573eb 100644
--- a/applications/solvers/basic/scalarTransportFoam/createFields.H
+++ b/applications/solvers/basic/scalarTransportFoam/createFields.H
@@ -39,7 +39,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.C b/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.C
index 39c2158ddaa8189903d227bedf27b1f43d1ade68..7cc76e0f8d058d641dbb95c4065ee4ceeb117264 100644
--- a/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.C
+++ b/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.C
@@ -50,10 +50,11 @@ PDRkEpsilon::PDRkEpsilon
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, rho, U, phi, thermophysicalModel),
+    RASModel(typeName, rho, U, phi, thermophysicalModel, turbulenceModelName),
 
     Cmu_
     (
diff --git a/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.H b/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.H
index 483c7257dc6968cb87c8d37e91ea438b9a5fe76b..c5e641012cccdc67934f307cc13de0debd5aef23 100644
--- a/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.H
+++ b/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.H
@@ -112,7 +112,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C
index 385b9e53f0f41c8fa856f99e4268c1d44eb4ff92..32b525859e78865421435bb6a16e03554d1370bc 100644
--- a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C
+++ b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C
@@ -62,7 +62,7 @@ Foam::XiEqModels::SCOPEXiEq::SCOPEXiEq
                 "combustionProperties",
                 Su.mesh().time().constant(),
                 Su.mesh(),
-                IOobject::MUST_READ
+                IOobject::MUST_READ_IF_MODIFIED
             )
         ),
         thermo
diff --git a/applications/solvers/combustion/PDRFoam/createFields.H b/applications/solvers/combustion/PDRFoam/createFields.H
index 74a18ab6f5affe39d56ff90d41f084cd6e09e4f3..233383ab1cc9c1e524a0ac82d8f87a3709c9d616 100644
--- a/applications/solvers/combustion/PDRFoam/createFields.H
+++ b/applications/solvers/combustion/PDRFoam/createFields.H
@@ -110,7 +110,7 @@
             "PDRProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/combustion/PDRFoam/readCombustionProperties.H b/applications/solvers/combustion/PDRFoam/readCombustionProperties.H
index 9f4435b2519e27142055e9257f898391adb3a635..acc5cb78686f04cd910f5762aa77d3e678db8ff2 100644
--- a/applications/solvers/combustion/PDRFoam/readCombustionProperties.H
+++ b/applications/solvers/combustion/PDRFoam/readCombustionProperties.H
@@ -7,7 +7,7 @@
             "combustionProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/combustion/XiFoam/readCombustionProperties.H b/applications/solvers/combustion/XiFoam/readCombustionProperties.H
index da0a3a94a2481a75efae0aeda45783bd865d0b3e..58b0626fb415105c78eb5cfc8d05ba0670956cc7 100644
--- a/applications/solvers/combustion/XiFoam/readCombustionProperties.H
+++ b/applications/solvers/combustion/XiFoam/readCombustionProperties.H
@@ -7,7 +7,7 @@
             "combustionProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/combustion/dieselEngineFoam/readCombustionProperties.H b/applications/solvers/combustion/dieselEngineFoam/readCombustionProperties.H
index 687d83ea9460c0710244607376d37d6e476746a6..84cf9b9756a8ca420c58fdfeb5f64b3fcf6f0843 100644
--- a/applications/solvers/combustion/dieselEngineFoam/readCombustionProperties.H
+++ b/applications/solvers/combustion/dieselEngineFoam/readCombustionProperties.H
@@ -7,7 +7,7 @@ IOdictionary combustionProperties
         "combustionProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE
     )
 );
diff --git a/applications/solvers/combustion/fireFoam/createFields.H b/applications/solvers/combustion/fireFoam/createFields.H
index 95bda056065ba96ea419070c6a751a3c6d1ad101..9a6274bb1a7a6c4ab0ccb48cc7a0d570109ab7ae 100644
--- a/applications/solvers/combustion/fireFoam/createFields.H
+++ b/applications/solvers/combustion/fireFoam/createFields.H
@@ -65,7 +65,7 @@ IOdictionary combustionProperties
         "combustionProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE
     )
 );
diff --git a/applications/solvers/combustion/reactingFoam/readChemistryProperties.H b/applications/solvers/combustion/reactingFoam/readChemistryProperties.H
index ab51afe28361cdf65bc74af68961a6732535d6b3..f0bcf7597fcf71f1e9b8ee2dbc879200a85fa2cc 100644
--- a/applications/solvers/combustion/reactingFoam/readChemistryProperties.H
+++ b/applications/solvers/combustion/reactingFoam/readChemistryProperties.H
@@ -7,7 +7,7 @@ IOdictionary chemistryProperties
         "chemistryProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE,
         false
     )
diff --git a/applications/solvers/combustion/rhoReactingFoam/readChemistryProperties.H b/applications/solvers/combustion/rhoReactingFoam/readChemistryProperties.H
index ab51afe28361cdf65bc74af68961a6732535d6b3..f0bcf7597fcf71f1e9b8ee2dbc879200a85fa2cc 100644
--- a/applications/solvers/combustion/rhoReactingFoam/readChemistryProperties.H
+++ b/applications/solvers/combustion/rhoReactingFoam/readChemistryProperties.H
@@ -7,7 +7,7 @@ IOdictionary chemistryProperties
         "chemistryProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE,
         false
     )
diff --git a/applications/solvers/compressible/rhoCentralFoam/BCs/T/smoluchowskiJumpTFvPatchScalarField.C b/applications/solvers/compressible/rhoCentralFoam/BCs/T/smoluchowskiJumpTFvPatchScalarField.C
index a6d98559a755ccfb3d6d8b6496645f43e0697695..24ce0fe938dccdf09b21b4f413ee2ae0d3f9d324 100644
--- a/applications/solvers/compressible/rhoCentralFoam/BCs/T/smoluchowskiJumpTFvPatchScalarField.C
+++ b/applications/solvers/compressible/rhoCentralFoam/BCs/T/smoluchowskiJumpTFvPatchScalarField.C
@@ -29,14 +29,9 @@ License
 #include "volFields.H"
 #include "mathematicalConstants.H"
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
-smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
+Foam::smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
 (
     const fvPatch& p,
     const DimensionedField<scalar, volMesh>& iF
@@ -52,7 +47,8 @@ smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
     valueFraction() = 0.0;
 }
 
-smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
+
+Foam::smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
 (
     const smoluchowskiJumpTFvPatchScalarField& ptf,
     const fvPatch& p,
@@ -67,7 +63,7 @@ smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
 {}
 
 
-smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
+Foam::smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
 (
     const fvPatch& p,
     const DimensionedField<scalar, volMesh>& iF,
@@ -118,7 +114,7 @@ smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
 }
 
 
-smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
+Foam::smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
 (
     const smoluchowskiJumpTFvPatchScalarField& ptpsf,
     const DimensionedField<scalar, volMesh>& iF
@@ -134,7 +130,7 @@ smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
 // Map from self
-void smoluchowskiJumpTFvPatchScalarField::autoMap
+void Foam::smoluchowskiJumpTFvPatchScalarField::autoMap
 (
     const fvPatchFieldMapper& m
 )
@@ -144,7 +140,7 @@ void smoluchowskiJumpTFvPatchScalarField::autoMap
 
 
 // Reverse-map the given fvPatchField onto this fvPatchField
-void smoluchowskiJumpTFvPatchScalarField::rmap
+void Foam::smoluchowskiJumpTFvPatchScalarField::rmap
 (
     const fvPatchField<scalar>& ptf,
     const labelList& addr
@@ -155,7 +151,7 @@ void smoluchowskiJumpTFvPatchScalarField::rmap
 
 
 // Update the coefficients associated with the patch field
-void smoluchowskiJumpTFvPatchScalarField::updateCoeffs()
+void Foam::smoluchowskiJumpTFvPatchScalarField::updateCoeffs()
 {
     if (updated())
     {
@@ -174,11 +170,16 @@ void smoluchowskiJumpTFvPatchScalarField::updateCoeffs()
     // Prandtl number reading consistent with rhoCentralFoam
     const dictionary& thermophysicalProperties =
         db().lookupObject<IOdictionary>("thermophysicalProperties");
-    dimensionedScalar Pr = dimensionedScalar("Pr", dimless, 1.0);
-    if (thermophysicalProperties.found("Pr"))
-    {
-        Pr = thermophysicalProperties.lookup("Pr");
-    }
+
+    dimensionedScalar Pr
+    (
+        dimensionedScalar::lookupOrDefault
+        (
+            "Pr",
+            thermophysicalProperties,
+            1.0
+        )
+    );
 
     Field<scalar> C2 = pmu/prho
         *sqrt(ppsi*constant::mathematical::piByTwo)
@@ -197,7 +198,7 @@ void smoluchowskiJumpTFvPatchScalarField::updateCoeffs()
 
 
 // Write
-void smoluchowskiJumpTFvPatchScalarField::write(Ostream& os) const
+void Foam::smoluchowskiJumpTFvPatchScalarField::write(Ostream& os) const
 {
     fvPatchScalarField::write(os);
     os.writeKeyword("accommodationCoeff")
@@ -211,10 +212,12 @@ void smoluchowskiJumpTFvPatchScalarField::write(Ostream& os) const
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
+namespace Foam
+{
+
 makePatchTypeField(fvPatchScalarField, smoluchowskiJumpTFvPatchScalarField);
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+}
 
-} // End namespace Foam
 
 // ************************************************************************* //
diff --git a/applications/solvers/compressible/rhoCentralFoam/readFluxScheme.H b/applications/solvers/compressible/rhoCentralFoam/readFluxScheme.H
index 9f54c43ef33c943eb9afcd67af5bb90259c68577..13f8f02c9c607e14dba0882d6f1b142108e1d411 100644
--- a/applications/solvers/compressible/rhoCentralFoam/readFluxScheme.H
+++ b/applications/solvers/compressible/rhoCentralFoam/readFluxScheme.H
@@ -1,7 +1,6 @@
 word fluxScheme("Kurganov");
-if (mesh.schemesDict().found("fluxScheme"))
+if (mesh.schemesDict().readIfPresent("fluxScheme", fluxScheme))
 {
-    fluxScheme = word(mesh.schemesDict().lookup("fluxScheme"));
     if ((fluxScheme == "Tadmor") || (fluxScheme == "Kurganov"))
     {
         Info<< "fluxScheme: " << fluxScheme << endl;
diff --git a/applications/solvers/compressible/rhoCentralFoam/readThermophysicalProperties.H b/applications/solvers/compressible/rhoCentralFoam/readThermophysicalProperties.H
index 435bcb7745e8c32b89a1c2991f6b0fd9192a42a5..f9e309ffec9372161a3b1828003d49c67cd8861d 100644
--- a/applications/solvers/compressible/rhoCentralFoam/readThermophysicalProperties.H
+++ b/applications/solvers/compressible/rhoCentralFoam/readThermophysicalProperties.H
@@ -9,14 +9,18 @@ IOdictionary thermophysicalProperties
         "thermophysicalProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE
     )
 );
 
-dimensionedScalar Pr = dimensionedScalar("Pr", dimless, 1.0);
+dimensionedScalar Pr
+(
+    dimensionedScalar::lookupOrDefault
+    (
+        "Pr",
+        thermophysicalProperties,
+        1.0
+    )
+);
 
-if (thermophysicalProperties.found("Pr"))
-{
-    Pr = thermophysicalProperties.lookup("Pr");
-}
diff --git a/applications/solvers/compressible/rhoPorousSimpleFoam/createFields.H b/applications/solvers/compressible/rhoPorousSimpleFoam/createFields.H
index 5285e6e3b226a354b864b4c731cc9e751fc17b04..efad823a91243bbe1d3583fa1fee3a3b22553081 100644
--- a/applications/solvers/compressible/rhoPorousSimpleFoam/createFields.H
+++ b/applications/solvers/compressible/rhoPorousSimpleFoam/createFields.H
@@ -70,22 +70,13 @@
     dimensionedScalar initialMass = fvc::domainIntegrate(rho);
 
     thermalPorousZones pZones(mesh);
-    Switch pressureImplicitPorosity(false);
 
+    // nUCorrectors used for pressureImplicitPorosity
     int nUCorr = 0;
-    if (pZones.size())
-    {
-        // nUCorrectors for pressureImplicitPorosity
-        if (mesh.solutionDict().subDict("SIMPLE").found("nUCorrectors"))
-        {
-            nUCorr = readInt
-            (
-                mesh.solutionDict().subDict("SIMPLE").lookup("nUCorrectors")
-            );
-        }
+    const bool pressureImplicitPorosity =
+    (
+        pZones.size()
+     && mesh.solutionDict().subDict("SIMPLE").readIfPresent("nUCorrectors", nUCorr)
+     && (nUCorr > 0)
+    );
 
-        if (nUCorr > 0)
-        {
-            pressureImplicitPorosity = true;
-        }
-    }
diff --git a/applications/solvers/compressible/rhoSonicFoam/readThermodynamicProperties.H b/applications/solvers/compressible/rhoSonicFoam/readThermodynamicProperties.H
index 1fc57fc5fdc6ef0a6d8d232922fa06f124314a3a..4e19adaae48e5d432cde086746bd2472899eab33 100644
--- a/applications/solvers/compressible/rhoSonicFoam/readThermodynamicProperties.H
+++ b/applications/solvers/compressible/rhoSonicFoam/readThermodynamicProperties.H
@@ -7,7 +7,7 @@
             "thermodynamicProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/compressible/rhopSonicFoam/readThermodynamicProperties.H b/applications/solvers/compressible/rhopSonicFoam/readThermodynamicProperties.H
index 3b8c82c8e5976907c6d6143caf91401e2d247c87..2064187a2f043d532dd77751f70e3eb244464a8c 100644
--- a/applications/solvers/compressible/rhopSonicFoam/readThermodynamicProperties.H
+++ b/applications/solvers/compressible/rhopSonicFoam/readThermodynamicProperties.H
@@ -7,7 +7,7 @@
             "thermodynamicProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
@@ -26,8 +26,13 @@
 
     dimensionedScalar gamma = Cp/Cv;
 
-    dimensionedScalar Pr = dimensionedScalar("Pr", dimless, 1.0);
-    if (thermodynamicProperties.found("Pr"))
-    {
-        Pr = thermodynamicProperties.lookup("Pr");
-    }
+    dimensionedScalar Pr
+    (
+        dimensionedScalar::lookupOrDefault
+        (
+            "Pr",
+            thermodynamicProperties,
+            1.0
+        )
+    );
+
diff --git a/applications/solvers/compressible/sonicDyMFoam/readThermodynamicProperties.H b/applications/solvers/compressible/sonicDyMFoam/readThermodynamicProperties.H
index 1fc57fc5fdc6ef0a6d8d232922fa06f124314a3a..4e19adaae48e5d432cde086746bd2472899eab33 100644
--- a/applications/solvers/compressible/sonicDyMFoam/readThermodynamicProperties.H
+++ b/applications/solvers/compressible/sonicDyMFoam/readThermodynamicProperties.H
@@ -7,7 +7,7 @@
             "thermodynamicProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/compressible/sonicDyMFoam/readTransportProperties.H b/applications/solvers/compressible/sonicDyMFoam/readTransportProperties.H
index 1502e2033a05c54d882dd06ea42731938527d1a8..c30f65b445886d784d88d0f421f99865fcd423cc 100644
--- a/applications/solvers/compressible/sonicDyMFoam/readTransportProperties.H
+++ b/applications/solvers/compressible/sonicDyMFoam/readTransportProperties.H
@@ -7,7 +7,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/compressible/sonicLiquidFoam/readThermodynamicProperties.H b/applications/solvers/compressible/sonicLiquidFoam/readThermodynamicProperties.H
index d8dad7d80036abcccef5cde70fcdbbe6c9e5ffdc..82f3655f4650f7cc4e4ae6f5627d6aebdd806c81 100644
--- a/applications/solvers/compressible/sonicLiquidFoam/readThermodynamicProperties.H
+++ b/applications/solvers/compressible/sonicLiquidFoam/readThermodynamicProperties.H
@@ -7,7 +7,7 @@
             "thermodynamicProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/compressible/sonicLiquidFoam/readTransportProperties.H b/applications/solvers/compressible/sonicLiquidFoam/readTransportProperties.H
index 1502e2033a05c54d882dd06ea42731938527d1a8..c30f65b445886d784d88d0f421f99865fcd423cc 100644
--- a/applications/solvers/compressible/sonicLiquidFoam/readTransportProperties.H
+++ b/applications/solvers/compressible/sonicLiquidFoam/readTransportProperties.H
@@ -7,7 +7,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/discreteMethods/molecularDynamics/mdEquilibrationFoam/readmdEquilibrationDict.H b/applications/solvers/discreteMethods/molecularDynamics/mdEquilibrationFoam/readmdEquilibrationDict.H
index b94745d9df20114094e7b75fdff62d15042164eb..3f43981907d797f26b14afc96465c32e390e8ec6 100644
--- a/applications/solvers/discreteMethods/molecularDynamics/mdEquilibrationFoam/readmdEquilibrationDict.H
+++ b/applications/solvers/discreteMethods/molecularDynamics/mdEquilibrationFoam/readmdEquilibrationDict.H
@@ -7,7 +7,7 @@ IOdictionary mdEquilibrationDict
         "mdEquilibrationDict",
         runTime.system(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE
     )
 );
diff --git a/applications/solvers/electromagnetics/electrostaticFoam/createFields.H b/applications/solvers/electromagnetics/electrostaticFoam/createFields.H
index 64522273b81124124f141993ea46a4810f493410..04c86c4edb5655fdea66b7f96ff89e392f353380 100644
--- a/applications/solvers/electromagnetics/electrostaticFoam/createFields.H
+++ b/applications/solvers/electromagnetics/electrostaticFoam/createFields.H
@@ -7,7 +7,7 @@
             "physicalProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/electromagnetics/magneticFoam/createFields.H b/applications/solvers/electromagnetics/magneticFoam/createFields.H
index a3712c19aa1d7baaa5c2a03572b22938d30d6cbc..22d40089213178d452b55a42c2b3ecd503afa61d 100644
--- a/applications/solvers/electromagnetics/magneticFoam/createFields.H
+++ b/applications/solvers/electromagnetics/magneticFoam/createFields.H
@@ -21,7 +21,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/electromagnetics/mhdFoam/createFields.H b/applications/solvers/electromagnetics/mhdFoam/createFields.H
index 04e05c032d088f68a1d151fbff6e57448785b426..fb5a00493222b712387c1e8253f05925b264309b 100644
--- a/applications/solvers/electromagnetics/mhdFoam/createFields.H
+++ b/applications/solvers/electromagnetics/mhdFoam/createFields.H
@@ -7,7 +7,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/electromagnetics/mhdFoam/readBPISOControls.H b/applications/solvers/electromagnetics/mhdFoam/readBPISOControls.H
index 4363850cdf8505017a38e3cfdc6990989ec5e1a7..5ddbdab95ea330941806173082a6d8fb006fe6d2 100644
--- a/applications/solvers/electromagnetics/mhdFoam/readBPISOControls.H
+++ b/applications/solvers/electromagnetics/mhdFoam/readBPISOControls.H
@@ -1,3 +1,4 @@
-const dictionary& Bpiso = mesh.solutionDict().subDict("BPISO");
+    const dictionary& Bpiso = mesh.solutionDict().subDict("BPISO");
+
+    const int nBcorr = Bpiso.lookupOrDefault<int>("nCorrectors", 1);
 
-int nBcorr(readInt(Bpiso.lookup("nCorrectors")));
diff --git a/applications/solvers/financial/financialFoam/createFields.H b/applications/solvers/financial/financialFoam/createFields.H
index 6cdbbe2bde3c24d5d5a49f631a0fbd36db924cf9..dc0da4d2a3ed8656c291a702e4a50113cfdc5082 100644
--- a/applications/solvers/financial/financialFoam/createFields.H
+++ b/applications/solvers/financial/financialFoam/createFields.H
@@ -7,7 +7,7 @@
             "financialProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/Make/options b/applications/solvers/heatTransfer/chtMultiRegionFoam/Make/options
index 4cd6539edfbc9612e34b9915a5de2365cce47059..e7a1103a4fdb8033301e52cc03836ada6e96a84a 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/Make/options
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/Make/options
@@ -6,10 +6,12 @@ EXE_INC = \
     -I$(LIB_SRC)/meshTools/lnInclude \
     -I$(LIB_SRC)/finiteVolume/lnInclude \
     -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
+    -I$(LIB_SRC)/thermophysicalModels/basicSolidThermo/lnInclude \
     -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel
 
 EXE_LIBS = \
     -lbasicThermophysicalModels \
+    -lbasicSolidThermo \
     -lspecie \
     -lcompressibleRASModels \
     -lcompressibleLESModels \
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C
index 738319ec1003c3f6f3543de90a03eeb0bb66e781..922b94a8d616b4bec942b4b3c8ec8cea48238943 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C
@@ -37,6 +37,7 @@ Description
 #include "regionProperties.H"
 #include "compressibleCourantNo.H"
 #include "solidRegionDiffNo.H"
+#include "basicSolidThermo.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/options b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/options
index a97ce0aae4ee3a35627f0598841a6dd7faf8c0ed..166480807990dc3f456f9a720b8d1add2a93dfdf 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/options
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/options
@@ -7,6 +7,7 @@ EXE_INC = \
     -I$(LIB_SRC)/finiteVolume/lnInclude \
     -I$(LIB_SRC)/meshTools/lnInclude \
     -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
+    -I$(LIB_SRC)/thermophysicalModels/basicSolidThermo/lnInclude \
     -I$(LIB_SRC)/turbulenceModels \
     -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel/lnInclude \
     -I$(LIB_SRC)/turbulenceModels/compressible/RAS/lnInclude
@@ -14,5 +15,6 @@ EXE_INC = \
 EXE_LIBS = \
     -lfiniteVolume \
     -lbasicThermophysicalModels \
+    -lbasicSolidThermo \
     -lspecie \
     -lcompressibleRASModels
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C
index 927bd8124d8731c3cbe598b655752c8f546ebb04..be93fd01dff18f7a0a3a39cf9505c153b55214eb 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C
@@ -35,6 +35,7 @@ Description
 #include "fixedGradientFvPatchFields.H"
 #include "regionProperties.H"
 #include "compressibleCourantNo.H"
+#include "basicSolidThermo.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/readFluidMultiRegionSIMPLEControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/readFluidMultiRegionSIMPLEControls.H
index 3054562d5d68076c7d36389b5479b4a41c113e9f..f8a11b7159e7a462047826847a8184a223504b2f 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/readFluidMultiRegionSIMPLEControls.H
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/readFluidMultiRegionSIMPLEControls.H
@@ -1,25 +1,11 @@
-    dictionary simple = fluidRegions[i].solutionDict().subDict("SIMPLE");
+    const dictionary& simple = fluidRegions[i].solutionDict().subDict("SIMPLE");
 
-    int nNonOrthCorr = 0;
-    if (simple.found("nNonOrthogonalCorrectors"))
-    {
-        nNonOrthCorr = readInt(simple.lookup("nNonOrthogonalCorrectors"));
-    }
+    const int nNonOrthCorr =
+        simple.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0);
 
-    bool momentumPredictor = true;
-    if (simple.found("momentumPredictor"))
-    {
-        momentumPredictor = Switch(simple.lookup("momentumPredictor"));
-    }
+    const bool momentumPredictor =
+        simple.lookupOrDefault("momentumPredictor", true);
 
-    bool fluxGradp = false;
-    if (simple.found("fluxGradp"))
-    {
-        fluxGradp = Switch(simple.lookup("fluxGradp"));
-    }
+    const bool transonic =
+        simple.lookupOrDefault("transonic", false);
 
-    bool transonic = false;
-    if (simple.found("transonic"))
-    {
-        transonic = Switch(simple.lookup("transonic"));
-    }
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H
index 8f109a3f8293ea88e9cd38b72d43632ae37a28a2..be13e670c326347f530dd991a4656e1dad22030f 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H
@@ -1,8 +1,5 @@
     // Initialise solid field pointer lists
-    PtrList<volScalarField> rhos(solidRegions.size());
-    PtrList<volScalarField> cps(solidRegions.size());
-    PtrList<volScalarField> Ks(solidRegions.size());
-    PtrList<volScalarField> Ts(solidRegions.size());
+    PtrList<basicSolidThermo> thermos(solidRegions.size());
 
     // Populate solid field pointer lists
     forAll(solidRegions, i)
@@ -10,75 +7,10 @@
         Info<< "*** Reading solid mesh thermophysical properties for region "
             << solidRegions[i].name() << nl << endl;
 
-        Info<< "    Adding to rhos\n" << endl;
-        rhos.set
+        Info<< "    Adding to thermos\n" << endl;
+        thermos.set
         (
             i,
-            new volScalarField
-            (
-                IOobject
-                (
-                    "rho",
-                    runTime.timeName(),
-                    solidRegions[i],
-                    IOobject::MUST_READ,
-                    IOobject::AUTO_WRITE
-                ),
-                solidRegions[i]
-            )
-        );
-
-        Info<< "    Adding to cps\n" << endl;
-        cps.set
-        (
-            i,
-            new volScalarField
-            (
-                IOobject
-                (
-                    "cp",
-                    runTime.timeName(),
-                    solidRegions[i],
-                    IOobject::MUST_READ,
-                    IOobject::AUTO_WRITE
-                ),
-                solidRegions[i]
-            )
-        );
-
-        Info<< "    Adding to Ks\n" << endl;
-        Ks.set
-        (
-            i,
-            new volScalarField
-            (
-                IOobject
-                (
-                    "K",
-                    runTime.timeName(),
-                    solidRegions[i],
-                    IOobject::MUST_READ,
-                    IOobject::AUTO_WRITE
-                ),
-                solidRegions[i]
-            )
-        );
-
-        Info<< "    Adding to Ts\n" << endl;
-        Ts.set
-        (
-            i,
-            new volScalarField
-            (
-                IOobject
-                (
-                    "T",
-                    runTime.timeName(),
-                    solidRegions[i],
-                    IOobject::MUST_READ,
-                    IOobject::AUTO_WRITE
-                ),
-                solidRegions[i]
-            )
+            basicSolidThermo::New(solidRegions[i])
         );
     }
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/readSolidMultiRegionSIMPLEControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/readSolidMultiRegionSIMPLEControls.H
index 22e9b177f1874742fe3d8b8d24ceb2caab3f1d68..e1d58d9f654ddb9d2cc8bd5c0abc57cfcc0a8da9 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/readSolidMultiRegionSIMPLEControls.H
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/readSolidMultiRegionSIMPLEControls.H
@@ -1,7 +1,5 @@
-    dictionary simple = solidRegions[i].solutionDict().subDict("SIMPLE");
+    const dictionary& simple = solidRegions[i].solutionDict().subDict("SIMPLE");
+
+    const int nNonOrthCorr =
+        simple.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0);
 
-    int nNonOrthCorr = 0;
-    if (simple.found("nNonOrthogonalCorrectors"))
-    {
-        nNonOrthCorr = readInt(simple.lookup("nNonOrthogonalCorrectors"));
-    }
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H
index f9e80e3d72385e7f6ae80107cc3b65921904c35f..1e78cc297ae5e6d01e81316a3dddb50fed7c6e74 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H
@@ -1,6 +1,14 @@
     fvMesh& mesh = solidRegions[i];
+    basicSolidThermo& thermo = thermos[i];
 
-    volScalarField& rho = rhos[i];
-    volScalarField& cp = cps[i];
-    volScalarField& K = Ks[i];
-    volScalarField& T = Ts[i];
+    tmp<volScalarField> trho = thermo.rho();
+    const volScalarField& rho = trho();
+
+    tmp<volScalarField> tcp = thermo.cp();
+    const volScalarField& cp = tcp();
+
+    tmp<volScalarField> tK = thermo.K();
+    //tmp<volSymmTensorField> tK = thermo.directionalK();
+    const volScalarField& K = tK();
+
+    volScalarField& T = thermo.T();
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/readFluidMultiRegionPIMPLEControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/readFluidMultiRegionPIMPLEControls.H
index 413c0225f0a34a82b3af1751011d7e8af7b935ba..71e49a33a80dd12898300126df31b1a1f1c87512 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/readFluidMultiRegionPIMPLEControls.H
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/readFluidMultiRegionPIMPLEControls.H
@@ -1,9 +1,11 @@
     const dictionary& pimple = mesh.solutionDict().subDict("PIMPLE");
 
-    int nCorr(readInt(pimple.lookup("nCorrectors")));
+    const int nCorr =
+        pimple.lookupOrDefault<int>("nCorrectors", 1);
 
-    int nNonOrthCorr =
+    const int nNonOrthCorr =
         pimple.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0);
 
-    bool momentumPredictor =
-        pimple.lookupOrDefault<Switch>("momentumPredictor", true);
+    const bool momentumPredictor =
+        pimple.lookupOrDefault("momentumPredictor", true);
+
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/readFluidMultiRegionPISOControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/readFluidMultiRegionPISOControls.H
index 75d6d96d1119f2630f6973a626959c54b7928407..1f8cdb82a334c408603fed2745d4fbc224a7bfa4 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/readFluidMultiRegionPISOControls.H
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/readFluidMultiRegionPISOControls.H
@@ -1,27 +1,17 @@
-    dictionary piso = fluidRegions[i].solutionDict().subDict("PISO");
+    const dictionary& piso = fluidRegions[i].solutionDict().subDict("PISO");
 
-    int nCorr(readInt(piso.lookup("nCorrectors")));
+    const int nOuterCorr =
+        piso.lookupOrDefault<int>("nOuterCorrectors", 1);
 
-    int nNonOrthCorr = 0;
-    if (piso.found("nNonOrthogonalCorrectors"))
-    {
-        nNonOrthCorr = readInt(piso.lookup("nNonOrthogonalCorrectors"));
-    }
+    const int nCorr =
+        piso.lookupOrDefault<int>("nCorrectors", 1);
 
-    bool momentumPredictor = true;
-    if (piso.found("momentumPredictor"))
-    {
-        momentumPredictor = Switch(piso.lookup("momentumPredictor"));
-    }
+    const int nNonOrthCorr =
+        piso.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0);
 
-    bool transonic = false;
-    if (piso.found("transonic"))
-    {
-        transonic = Switch(piso.lookup("transonic"));
-    }
+    const bool momentumPredictor =
+        piso.lookupOrDefault("momentumPredictor", true);
+
+    const bool transonic =
+        piso.lookupOrDefault("transonic", false);
 
-    int nOuterCorr = 1;
-    if (piso.found("nOuterCorrectors"))
-    {
-        nOuterCorr = readInt(piso.lookup("nOuterCorrectors"));
-    }
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/readPIMPLEControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/readPIMPLEControls.H
index 42793d9b9fdb82a890b5994673f07ade7745a659..f6371c47cbca42cd47c7d3c959edd57c929f42cc 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/readPIMPLEControls.H
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/readPIMPLEControls.H
@@ -4,4 +4,6 @@
 
     const dictionary& pimple = solutionDict.subDict("PIMPLE");
 
-    int nOuterCorr(readInt(pimple.lookup("nOuterCorrectors")));
+    const int nOuterCorr =
+        pimple.lookupOrDefault<int>("nOuterCorrectors", 1);
+
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/regionProperties/regionProperties.C b/applications/solvers/heatTransfer/chtMultiRegionFoam/regionProperties/regionProperties.C
index 89eaaabd480e979ba7b368e9755a872c70dbe9b2..f85e8f5440ac4581d2f9df3f361f5828e2a6cbb3 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/regionProperties/regionProperties.C
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/regionProperties/regionProperties.C
@@ -36,7 +36,7 @@ Foam::regionProperties::regionProperties(const Time& runTime)
             "regionProperties",
             runTime.time().constant(),
             runTime.db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H
index 8f109a3f8293ea88e9cd38b72d43632ae37a28a2..be13e670c326347f530dd991a4656e1dad22030f 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H
@@ -1,8 +1,5 @@
     // Initialise solid field pointer lists
-    PtrList<volScalarField> rhos(solidRegions.size());
-    PtrList<volScalarField> cps(solidRegions.size());
-    PtrList<volScalarField> Ks(solidRegions.size());
-    PtrList<volScalarField> Ts(solidRegions.size());
+    PtrList<basicSolidThermo> thermos(solidRegions.size());
 
     // Populate solid field pointer lists
     forAll(solidRegions, i)
@@ -10,75 +7,10 @@
         Info<< "*** Reading solid mesh thermophysical properties for region "
             << solidRegions[i].name() << nl << endl;
 
-        Info<< "    Adding to rhos\n" << endl;
-        rhos.set
+        Info<< "    Adding to thermos\n" << endl;
+        thermos.set
         (
             i,
-            new volScalarField
-            (
-                IOobject
-                (
-                    "rho",
-                    runTime.timeName(),
-                    solidRegions[i],
-                    IOobject::MUST_READ,
-                    IOobject::AUTO_WRITE
-                ),
-                solidRegions[i]
-            )
-        );
-
-        Info<< "    Adding to cps\n" << endl;
-        cps.set
-        (
-            i,
-            new volScalarField
-            (
-                IOobject
-                (
-                    "cp",
-                    runTime.timeName(),
-                    solidRegions[i],
-                    IOobject::MUST_READ,
-                    IOobject::AUTO_WRITE
-                ),
-                solidRegions[i]
-            )
-        );
-
-        Info<< "    Adding to Ks\n" << endl;
-        Ks.set
-        (
-            i,
-            new volScalarField
-            (
-                IOobject
-                (
-                    "K",
-                    runTime.timeName(),
-                    solidRegions[i],
-                    IOobject::MUST_READ,
-                    IOobject::AUTO_WRITE
-                ),
-                solidRegions[i]
-            )
-        );
-
-        Info<< "    Adding to Ts\n" << endl;
-        Ts.set
-        (
-            i,
-            new volScalarField
-            (
-                IOobject
-                (
-                    "T",
-                    runTime.timeName(),
-                    solidRegions[i],
-                    IOobject::MUST_READ,
-                    IOobject::AUTO_WRITE
-                ),
-                solidRegions[i]
-            )
+            basicSolidThermo::New(solidRegions[i])
         );
     }
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/readSolidMultiRegionPISOControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/readSolidMultiRegionPISOControls.H
index ce6a1c5bb2626f82eb411bc20b4f57b64e3271ff..0c965a8322a640c77373945bd6bb39b84907a1a9 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/readSolidMultiRegionPISOControls.H
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/readSolidMultiRegionPISOControls.H
@@ -1,7 +1,5 @@
     const dictionary& piso = solidRegions[i].solutionDict().subDict("PISO");
 
-    int nNonOrthCorr = 0;
-    if (piso.found("nNonOrthogonalCorrectors"))
-    {
-        nNonOrthCorr = readInt(piso.lookup("nNonOrthogonalCorrectors"));
-    }
+    const int nNonOrthCorr =
+        piso.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0);
+
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/setRegionSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/setRegionSolidFields.H
index f9e80e3d72385e7f6ae80107cc3b65921904c35f..1e78cc297ae5e6d01e81316a3dddb50fed7c6e74 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/setRegionSolidFields.H
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/setRegionSolidFields.H
@@ -1,6 +1,14 @@
     fvMesh& mesh = solidRegions[i];
+    basicSolidThermo& thermo = thermos[i];
 
-    volScalarField& rho = rhos[i];
-    volScalarField& cp = cps[i];
-    volScalarField& K = Ks[i];
-    volScalarField& T = Ts[i];
+    tmp<volScalarField> trho = thermo.rho();
+    const volScalarField& rho = trho();
+
+    tmp<volScalarField> tcp = thermo.cp();
+    const volScalarField& cp = tcp();
+
+    tmp<volScalarField> tK = thermo.K();
+    //tmp<volSymmTensorField> tK = thermo.directionalK();
+    const volScalarField& K = tK();
+
+    volScalarField& T = thermo.T();
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solidRegionDiffusionNo.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solidRegionDiffusionNo.H
index 4b09671de2ef040980f62cbbcb10054fb5ba8cb9..77dc6f04bf44ba748359c2f8bf3267307416b650 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solidRegionDiffusionNo.H
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solidRegionDiffusionNo.H
@@ -1,15 +1,17 @@
     scalar DiNum = -GREAT;
 
-    forAll(solidRegions, regionI)
+    forAll(solidRegions, i)
     {
+#       include "setRegionSolidFields.H"
+
         DiNum = max
         (
             solidRegionDiffNo
             (
-                solidRegions[regionI],
+                solidRegions[i],
                 runTime,
-                rhos[regionI]*cps[regionI],
-                Ks[regionI]
+                rho*cp,
+                K
             ),
             DiNum
         );
diff --git a/applications/solvers/incompressible/boundaryFoam/createFields.H b/applications/solvers/incompressible/boundaryFoam/createFields.H
index e99a99001312286bfd50196189bc5863bd3b232d..90a66649892b06729d588dc3ca0edc63b818aa0f 100644
--- a/applications/solvers/incompressible/boundaryFoam/createFields.H
+++ b/applications/solvers/incompressible/boundaryFoam/createFields.H
@@ -44,7 +44,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/incompressible/channelFoam/readTransportProperties.H b/applications/solvers/incompressible/channelFoam/readTransportProperties.H
index 87c93c9195880f243c7ac035020345c283fd2450..abaee647c753d14e25258899dcfbcba9acce273f 100644
--- a/applications/solvers/incompressible/channelFoam/readTransportProperties.H
+++ b/applications/solvers/incompressible/channelFoam/readTransportProperties.H
@@ -6,7 +6,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/applications/solvers/incompressible/icoFoam/createFields.H b/applications/solvers/incompressible/icoFoam/createFields.H
index 6a7d6b9a80a6407871d5539d410e736177a1b770..02093c39386f9282418fa2cea1ff4a13099009ed 100644
--- a/applications/solvers/incompressible/icoFoam/createFields.H
+++ b/applications/solvers/incompressible/icoFoam/createFields.H
@@ -7,7 +7,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/readControls.H b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/readControls.H
index ef396ec9ff7b597ae3b6f8cc3ec0274b20f7896a..8789bd0ab4bad10d74bfac4b69d9e68f0459789d 100644
--- a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/readControls.H
+++ b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/readControls.H
@@ -1,14 +1,9 @@
     #include "readTimeControls.H"
     #include "readPIMPLEControls.H"
 
-    bool correctPhi = false;
-    if (pimple.found("correctPhi"))
-    {
-        correctPhi = Switch(pimple.lookup("correctPhi"));
-    }
+    const bool correctPhi =
+        pimple.lookupOrDefault("correctPhi", false);
+
+    const bool checkMeshCourantNo =
+        pimple.lookupOrDefault("checkMeshCourantNo", false);
 
-    bool checkMeshCourantNo = false;
-    if (pimple.found("checkMeshCourantNo"))
-    {
-        checkMeshCourantNo = Switch(pimple.lookup("checkMeshCourantNo"));
-    }
diff --git a/applications/solvers/incompressible/porousSimpleFoam/createFields.H b/applications/solvers/incompressible/porousSimpleFoam/createFields.H
index 6861ae0005e70f41dc5d04623c47726a4487fca5..7ce03c196722beb5a4c3f4fee850d2680aec5d93 100644
--- a/applications/solvers/incompressible/porousSimpleFoam/createFields.H
+++ b/applications/solvers/incompressible/porousSimpleFoam/createFields.H
@@ -43,22 +43,13 @@
 
 
     porousZones pZones(mesh);
-    Switch pressureImplicitPorosity(false);
 
+    // nUCorrectors used for pressureImplicitPorosity
     int nUCorr = 0;
-    if (pZones.size())
-    {
-        // nUCorrectors for pressureImplicitPorosity
-        if (mesh.solutionDict().subDict("SIMPLE").found("nUCorrectors"))
-        {
-            nUCorr = readInt
-            (
-                mesh.solutionDict().subDict("SIMPLE").lookup("nUCorrectors")
-            );
-        }
+    const bool pressureImplicitPorosity =
+    (
+        pZones.size()
+     && mesh.solutionDict().subDict("SIMPLE").readIfPresent("nUCorrectors", nUCorr)
+     && (nUCorr > 0)
+    );
 
-        if (nUCorr > 0)
-        {
-            pressureImplicitPorosity = true;
-        }
-    }
diff --git a/applications/solvers/incompressible/shallowWaterFoam/readGravitationalAcceleration.H b/applications/solvers/incompressible/shallowWaterFoam/readGravitationalAcceleration.H
index d609c186144ddcf804ec00e7ac2b1707735e0c32..d8a8bf8d0629529a7adc7e6e8c3f3eedbf0c76e0 100644
--- a/applications/solvers/incompressible/shallowWaterFoam/readGravitationalAcceleration.H
+++ b/applications/solvers/incompressible/shallowWaterFoam/readGravitationalAcceleration.H
@@ -7,7 +7,7 @@ IOdictionary gravitationalProperties
         "gravitationalProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE
     )
 );
diff --git a/applications/solvers/lagrangian/coalChemistryFoam/readChemistryProperties.H b/applications/solvers/lagrangian/coalChemistryFoam/readChemistryProperties.H
index ab51afe28361cdf65bc74af68961a6732535d6b3..f0bcf7597fcf71f1e9b8ee2dbc879200a85fa2cc 100644
--- a/applications/solvers/lagrangian/coalChemistryFoam/readChemistryProperties.H
+++ b/applications/solvers/lagrangian/coalChemistryFoam/readChemistryProperties.H
@@ -7,7 +7,7 @@ IOdictionary chemistryProperties
         "chemistryProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE,
         false
     )
diff --git a/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelFoam/createFields.H b/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelFoam/createFields.H
index 179ac149badfef1c97ec876a581d746f4195ce69..0ad057e229970748c7d4e3b330643b700fb2dfe2 100644
--- a/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelFoam/createFields.H
+++ b/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelFoam/createFields.H
@@ -7,7 +7,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/readChemistryProperties.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/readChemistryProperties.H
index ab51afe28361cdf65bc74af68961a6732535d6b3..f0bcf7597fcf71f1e9b8ee2dbc879200a85fa2cc 100644
--- a/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/readChemistryProperties.H
+++ b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/readChemistryProperties.H
@@ -7,7 +7,7 @@ IOdictionary chemistryProperties
         "chemistryProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE,
         false
     )
diff --git a/applications/solvers/lagrangian/reactingParcelFilmFoam/createFields.H b/applications/solvers/lagrangian/reactingParcelFilmFoam/createFields.H
index 8048acd6484c127f2797f533f42e3d2a60a93586..909d0351f7010d177cfa2990a647724585d2dccb 100644
--- a/applications/solvers/lagrangian/reactingParcelFilmFoam/createFields.H
+++ b/applications/solvers/lagrangian/reactingParcelFilmFoam/createFields.H
@@ -97,7 +97,7 @@
             "additionalControls",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/lagrangian/reactingParcelFilmFoam/readChemistryProperties.H b/applications/solvers/lagrangian/reactingParcelFilmFoam/readChemistryProperties.H
index ab51afe28361cdf65bc74af68961a6732535d6b3..f0bcf7597fcf71f1e9b8ee2dbc879200a85fa2cc 100644
--- a/applications/solvers/lagrangian/reactingParcelFilmFoam/readChemistryProperties.H
+++ b/applications/solvers/lagrangian/reactingParcelFilmFoam/readChemistryProperties.H
@@ -7,7 +7,7 @@ IOdictionary chemistryProperties
         "chemistryProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE,
         false
     )
diff --git a/applications/solvers/lagrangian/reactingParcelFoam/readChemistryProperties.H b/applications/solvers/lagrangian/reactingParcelFoam/readChemistryProperties.H
index ab51afe28361cdf65bc74af68961a6732535d6b3..f0bcf7597fcf71f1e9b8ee2dbc879200a85fa2cc 100644
--- a/applications/solvers/lagrangian/reactingParcelFoam/readChemistryProperties.H
+++ b/applications/solvers/lagrangian/reactingParcelFoam/readChemistryProperties.H
@@ -7,7 +7,7 @@ IOdictionary chemistryProperties
         "chemistryProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE,
         false
     )
diff --git a/applications/solvers/multiphase/bubbleFoam/createFields.H b/applications/solvers/multiphase/bubbleFoam/createFields.H
index 9367838a52bcfa3d43337c70396d7c865e4c2504..57bb7e88d50b7ffc42fc61633acd01eed6e67d75 100644
--- a/applications/solvers/multiphase/bubbleFoam/createFields.H
+++ b/applications/solvers/multiphase/bubbleFoam/createFields.H
@@ -91,7 +91,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/multiphase/bubbleFoam/createRASTurbulence.H b/applications/solvers/multiphase/bubbleFoam/createRASTurbulence.H
index 1ae6219fd6f9a112fda06c05a63081200a19217f..049b6c0b3610160c88fe1f6942456f34addc8fec 100644
--- a/applications/solvers/multiphase/bubbleFoam/createRASTurbulence.H
+++ b/applications/solvers/multiphase/bubbleFoam/createRASTurbulence.H
@@ -5,7 +5,7 @@
             "RASProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
@@ -96,7 +96,7 @@
         )
     );
 
-    if (RASProperties.lookupOrDefault<Switch>("printCoeffs", false))
+    if (RASProperties.lookupOrDefault("printCoeffs", false))
     {
         Info<< "kEpsilonCoeffs" << kEpsilonDict << nl
             << "wallFunctionCoeffs" << wallFunctionDict << endl;
diff --git a/applications/solvers/multiphase/cavitatingFoam/readThermodynamicProperties.H b/applications/solvers/multiphase/cavitatingFoam/readThermodynamicProperties.H
index d3fbb9307aa853f5123b03f25290b208bc0cee7c..3740f1056330f92ca9f6b16a615c996f9676b60c 100644
--- a/applications/solvers/multiphase/cavitatingFoam/readThermodynamicProperties.H
+++ b/applications/solvers/multiphase/cavitatingFoam/readThermodynamicProperties.H
@@ -7,7 +7,7 @@
             "thermodynamicProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/multiphase/compressibleInterDyMFoam/readControls.H b/applications/solvers/multiphase/compressibleInterDyMFoam/readControls.H
index a2e4ef3747f5e90cf13fcc16d721275040144869..a5a2a183e5b5911c7148b6794eda84a6d0a374c5 100644
--- a/applications/solvers/multiphase/compressibleInterDyMFoam/readControls.H
+++ b/applications/solvers/multiphase/compressibleInterDyMFoam/readControls.H
@@ -1,5 +1,5 @@
-   #include "readPISOControls.H"
-   #include "readTimeControls.H"
+    #include "readPISOControls.H"
+    #include "readTimeControls.H"
 
     label nAlphaCorr
     (
@@ -19,14 +19,9 @@
             << exit(FatalError);
     }
 
-    bool correctPhi = true;
-    if (piso.found("correctPhi"))
-    {
-        correctPhi = Switch(piso.lookup("correctPhi"));
-    }
+    const bool correctPhi =
+        piso.lookupOrDefault("correctPhi", true);
+
+    const bool checkMeshCourantNo =
+        piso.lookupOrDefault("checkMeshCourantNo", false);
 
-    bool checkMeshCourantNo = false;
-    if (piso.found("checkMeshCourantNo"))
-    {
-        checkMeshCourantNo = Switch(piso.lookup("checkMeshCourantNo"));
-    }
diff --git a/applications/solvers/multiphase/interDyMFoam/readControls.H b/applications/solvers/multiphase/interDyMFoam/readControls.H
index 3640d73adc6bbe61745f1a3b7ed4dbf4421131f3..10b09bf8ffa6a706103d59b386da2a5124ebca9c 100644
--- a/applications/solvers/multiphase/interDyMFoam/readControls.H
+++ b/applications/solvers/multiphase/interDyMFoam/readControls.H
@@ -1,14 +1,9 @@
 #   include "readTimeControls.H"
 #   include "readPISOControls.H"
 
-    bool correctPhi = true;
-    if (piso.found("correctPhi"))
-    {
-        correctPhi = Switch(piso.lookup("correctPhi"));
-    }
+    const bool correctPhi =
+        piso.lookupOrDefault("correctPhi", true);
+
+    const bool checkMeshCourantNo =
+        piso.lookupOrDefault("checkMeshCourantNo", false);
 
-    bool checkMeshCourantNo = false;
-    if (piso.found("checkMeshCourantNo"))
-    {
-        checkMeshCourantNo = Switch(piso.lookup("checkMeshCourantNo"));
-    }
diff --git a/applications/solvers/multiphase/interPhaseChangeFoam/phaseChangeTwoPhaseMixtures/phaseChangeTwoPhaseMixture/phaseChangeTwoPhaseMixtureNew.C b/applications/solvers/multiphase/interPhaseChangeFoam/phaseChangeTwoPhaseMixtures/phaseChangeTwoPhaseMixture/phaseChangeTwoPhaseMixtureNew.C
index bffffd6aae8f75e220ba05c39735c26d8ecfb132..27da4ad0c02b9400c3fdd605e8c7964023aef938 100644
--- a/applications/solvers/multiphase/interPhaseChangeFoam/phaseChangeTwoPhaseMixtures/phaseChangeTwoPhaseMixture/phaseChangeTwoPhaseMixtureNew.C
+++ b/applications/solvers/multiphase/interPhaseChangeFoam/phaseChangeTwoPhaseMixtures/phaseChangeTwoPhaseMixture/phaseChangeTwoPhaseMixtureNew.C
@@ -46,7 +46,7 @@ Foam::phaseChangeTwoPhaseMixture::New
                 "transportProperties",
                 U.time().constant(),
                 U.db(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/applications/solvers/multiphase/multiphaseInterFoam/Make/files b/applications/solvers/multiphase/multiphaseInterFoam/Make/files
index 0204e6cabf9b31dfb9fd1d6c1985a1759f16908f..4820de61a553d6ea05ce5e7acc09c7fdaf36737f 100644
--- a/applications/solvers/multiphase/multiphaseInterFoam/Make/files
+++ b/applications/solvers/multiphase/multiphaseInterFoam/Make/files
@@ -1,5 +1,5 @@
 multiphaseMixture/phase/phase.C
-multiphaseMixture/alphaContactAngle/alphaContactAngleFvPatchScalarField.C
+multiphaseMixture/multiphaseAlphaContactAngle/multiphaseAlphaContactAngleFvPatchScalarField.C
 multiphaseMixture/multiphaseMixture.C
 multiphaseInterFoam.C
 
diff --git a/applications/solvers/multiphase/multiphaseInterFoam/Make/options b/applications/solvers/multiphase/multiphaseInterFoam/Make/options
index 1fc821726c9c4e0e9710d90f77a366ec7d7519fb..6e9363f13f8c2a2553afadfb7a61600a1d8ebf39 100644
--- a/applications/solvers/multiphase/multiphaseInterFoam/Make/options
+++ b/applications/solvers/multiphase/multiphaseInterFoam/Make/options
@@ -2,17 +2,15 @@ EXE_INC = \
     -I../interFoam \
     -ImultiphaseMixture \
     -ImultiphaseMixture/phase \
-    -ImultiphaseMixture/alphaContactAngle \
+    -ImultiphaseMixture/multiphaseAlphaContactAngle \
     -I$(LIB_SRC)/transportModels \
     -I$(LIB_SRC)/transportModels/incompressible/lnInclude \
-    -I$(LIB_SRC)/transportModels/interfaceProperties/lnInclude \
     -I$(LIB_SRC)/turbulenceModels/incompressible/turbulenceModel \
     -I$(LIB_SRC)/finiteVolume/lnInclude
 
 EXE_LIBS = \
     -linterfaceProperties \
     -lincompressibleTransportModels \
-    -lincompressibleTransportModels \
     -lincompressibleRASModels \
     -lincompressibleLESModels \
-    -lfiniteVolume
+    -lfiniteVolume
\ No newline at end of file
diff --git a/applications/solvers/multiphase/multiphaseInterFoam/createFields.H b/applications/solvers/multiphase/multiphaseInterFoam/createFields.H
index fb6449629402a36f340e711e6ef89d7b64da8d96..6ef68821969fae9ec3e0009b25aed4e1c772c567 100644
--- a/applications/solvers/multiphase/multiphaseInterFoam/createFields.H
+++ b/applications/solvers/multiphase/multiphaseInterFoam/createFields.H
@@ -26,7 +26,7 @@
         mesh
     );
 
-#   include "createPhi.H"
+    #include "createPhi.H"
 
     multiphaseMixture mixture(U, phi);
 
diff --git a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseInterFoam.C b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseInterFoam.C
index 1a5bed606d5563a9013816b5a734c5082e8163dd..546e635346773d8b6fcfcb4ef8eb1ec868df5309 100644
--- a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseInterFoam.C
+++ b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseInterFoam.C
@@ -80,7 +80,7 @@ int main(int argc, char *argv[])
 
         #include "continuityErrs.H"
 
-        turbulence->correct();
+        //turbulence->correct();
 
         runTime.write();
 
diff --git a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/alphaContactAngle/alphaContactAngleFvPatchScalarField.C b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseAlphaContactAngle/multiphaseAlphaContactAngleFvPatchScalarField.C
similarity index 76%
rename from applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/alphaContactAngle/alphaContactAngleFvPatchScalarField.C
rename to applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseAlphaContactAngle/multiphaseAlphaContactAngleFvPatchScalarField.C
index 3cf76bab1b0002e7f7ae900eac6eeb6318d05616..9cc9b7ed07d29a2dee736e4e0f96b336d15e59bf 100644
--- a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/alphaContactAngle/alphaContactAngleFvPatchScalarField.C
+++ b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseAlphaContactAngle/multiphaseAlphaContactAngleFvPatchScalarField.C
@@ -23,7 +23,7 @@ License
 
 \*---------------------------------------------------------------------------*/
 
-#include "alphaContactAngleFvPatchScalarField.H"
+#include "multiphaseAlphaContactAngleFvPatchScalarField.H"
 #include "addToRunTimeSelectionTable.H"
 #include "fvPatchFieldMapper.H"
 
@@ -32,7 +32,8 @@ License
 namespace Foam
 {
 
-alphaContactAngleFvPatchScalarField::interfaceThetaProps::interfaceThetaProps
+multiphaseAlphaContactAngleFvPatchScalarField::interfaceThetaProps::
+interfaceThetaProps
 (
     Istream& is
 )
@@ -47,7 +48,7 @@ alphaContactAngleFvPatchScalarField::interfaceThetaProps::interfaceThetaProps
 Istream& operator>>
 (
     Istream& is,
-    alphaContactAngleFvPatchScalarField::interfaceThetaProps& tp
+    multiphaseAlphaContactAngleFvPatchScalarField::interfaceThetaProps& tp
 )
 {
     is  >> tp.theta0_ >> tp.uTheta_ >> tp.thetaA_ >> tp.thetaR_;
@@ -58,7 +59,7 @@ Istream& operator>>
 Ostream& operator<<
 (
     Ostream& os,
-    const alphaContactAngleFvPatchScalarField::interfaceThetaProps& tp
+    const multiphaseAlphaContactAngleFvPatchScalarField::interfaceThetaProps& tp
 )
 {
     os  << tp.theta0_ << token::SPACE
@@ -72,7 +73,8 @@ Ostream& operator<<
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
-alphaContactAngleFvPatchScalarField::alphaContactAngleFvPatchScalarField
+multiphaseAlphaContactAngleFvPatchScalarField::
+multiphaseAlphaContactAngleFvPatchScalarField
 (
     const fvPatch& p,
     const DimensionedField<scalar, volMesh>& iF
@@ -82,9 +84,10 @@ alphaContactAngleFvPatchScalarField::alphaContactAngleFvPatchScalarField
 {}
 
 
-alphaContactAngleFvPatchScalarField::alphaContactAngleFvPatchScalarField
+multiphaseAlphaContactAngleFvPatchScalarField::
+multiphaseAlphaContactAngleFvPatchScalarField
 (
-    const alphaContactAngleFvPatchScalarField& gcpsf,
+    const multiphaseAlphaContactAngleFvPatchScalarField& gcpsf,
     const fvPatch& p,
     const DimensionedField<scalar, volMesh>& iF,
     const fvPatchFieldMapper& mapper
@@ -95,7 +98,8 @@ alphaContactAngleFvPatchScalarField::alphaContactAngleFvPatchScalarField
 {}
 
 
-alphaContactAngleFvPatchScalarField::alphaContactAngleFvPatchScalarField
+multiphaseAlphaContactAngleFvPatchScalarField::
+multiphaseAlphaContactAngleFvPatchScalarField
 (
     const fvPatch& p,
     const DimensionedField<scalar, volMesh>& iF,
@@ -109,9 +113,10 @@ alphaContactAngleFvPatchScalarField::alphaContactAngleFvPatchScalarField
 }
 
 
-alphaContactAngleFvPatchScalarField::alphaContactAngleFvPatchScalarField
+multiphaseAlphaContactAngleFvPatchScalarField::
+multiphaseAlphaContactAngleFvPatchScalarField
 (
-    const alphaContactAngleFvPatchScalarField& gcpsf,
+    const multiphaseAlphaContactAngleFvPatchScalarField& gcpsf,
     const DimensionedField<scalar, volMesh>& iF
 )
 :
@@ -122,7 +127,7 @@ alphaContactAngleFvPatchScalarField::alphaContactAngleFvPatchScalarField
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-void alphaContactAngleFvPatchScalarField::write(Ostream& os) const
+void multiphaseAlphaContactAngleFvPatchScalarField::write(Ostream& os) const
 {
     fvPatchScalarField::write(os);
     os.writeKeyword("thetaProperties")
@@ -133,7 +138,7 @@ void alphaContactAngleFvPatchScalarField::write(Ostream& os) const
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-makePatchTypeField(fvPatchScalarField, alphaContactAngleFvPatchScalarField);
+makePatchTypeField(fvPatchScalarField, multiphaseAlphaContactAngleFvPatchScalarField);
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/alphaContactAngle/alphaContactAngleFvPatchScalarField.H b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseAlphaContactAngle/multiphaseAlphaContactAngleFvPatchScalarField.H
similarity index 84%
rename from applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/alphaContactAngle/alphaContactAngleFvPatchScalarField.H
rename to applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseAlphaContactAngle/multiphaseAlphaContactAngleFvPatchScalarField.H
index 322d0975264d6a11bfefae2c54b3bfc9f6f13500..ccbb146abb2c39c1df7c776809748480e0f1d16a 100644
--- a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/alphaContactAngle/alphaContactAngleFvPatchScalarField.H
+++ b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseAlphaContactAngle/multiphaseAlphaContactAngleFvPatchScalarField.H
@@ -22,19 +22,19 @@ License
     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
 
 Class
-    Foam::alphaContactAngleFvPatchScalarField
+    Foam::multiphaseAlphaContactAngleFvPatchScalarField
 
 Description
     Contact-angle boundary condition for multi-phase interface-capturing
     simulations.  Used in conjuction with multiphaseMixture.
 
 SourceFiles
-    alphaContactAngleFvPatchScalarField.C
+    multiphaseAlphaContactAngleFvPatchScalarField.C
 
 \*---------------------------------------------------------------------------*/
 
-#ifndef alphaContactAngleFvPatchScalarField_H
-#define alphaContactAngleFvPatchScalarField_H
+#ifndef multiphaseAlphaContactAngleFvPatchScalarField_H
+#define multiphaseAlphaContactAngleFvPatchScalarField_H
 
 #include "zeroGradientFvPatchFields.H"
 #include "multiphaseMixture.H"
@@ -45,10 +45,10 @@ namespace Foam
 {
 
 /*---------------------------------------------------------------------------*\
-                           Class alphaContactAngleFvPatch Declaration
+                           Class multiphaseAlphaContactAngleFvPatch Declaration
 \*---------------------------------------------------------------------------*/
 
-class alphaContactAngleFvPatchScalarField
+class multiphaseAlphaContactAngleFvPatchScalarField
 :
     public zeroGradientFvPatchScalarField
 {
@@ -132,31 +132,31 @@ private:
 public:
 
     //- Runtime type information
-    TypeName("alphaContactAngle");
+    TypeName("multiphaseAlphaContactAngle");
 
 
     // Constructors
 
         //- Construct from patch and internal field
-        alphaContactAngleFvPatchScalarField
+        multiphaseAlphaContactAngleFvPatchScalarField
         (
             const fvPatch&,
             const DimensionedField<scalar, volMesh>&
         );
 
         //- Construct from patch, internal field and dictionary
-        alphaContactAngleFvPatchScalarField
+        multiphaseAlphaContactAngleFvPatchScalarField
         (
             const fvPatch&,
             const DimensionedField<scalar, volMesh>&,
             const dictionary&
         );
 
-        //- Construct by mapping given alphaContactAngleFvPatchScalarField
+        //- Construct by mapping given multiphaseAlphaContactAngleFvPatchScalarField
         //  onto a new patch
-        alphaContactAngleFvPatchScalarField
+        multiphaseAlphaContactAngleFvPatchScalarField
         (
-            const alphaContactAngleFvPatchScalarField&,
+            const multiphaseAlphaContactAngleFvPatchScalarField&,
             const fvPatch&,
             const DimensionedField<scalar, volMesh>&,
             const fvPatchFieldMapper&
@@ -167,14 +167,14 @@ public:
         {
             return tmp<fvPatchScalarField>
             (
-                new alphaContactAngleFvPatchScalarField(*this)
+                new multiphaseAlphaContactAngleFvPatchScalarField(*this)
             );
         }
 
         //- Construct as copy setting internal field reference
-        alphaContactAngleFvPatchScalarField
+        multiphaseAlphaContactAngleFvPatchScalarField
         (
-            const alphaContactAngleFvPatchScalarField&,
+            const multiphaseAlphaContactAngleFvPatchScalarField&,
             const DimensionedField<scalar, volMesh>&
         );
 
@@ -186,7 +186,7 @@ public:
         {
             return tmp<fvPatchScalarField>
             (
-                new alphaContactAngleFvPatchScalarField(*this, iF)
+                new multiphaseAlphaContactAngleFvPatchScalarField(*this, iF)
             );
         }
 
diff --git a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C
index 7af947d4a71b9b68dc2c83d5a3fdab461b4fbb3d..c6dba40e138e330e833d6236b78a58c11a1a2ddd 100644
--- a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C
+++ b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C
@@ -24,7 +24,7 @@ License
 \*---------------------------------------------------------------------------*/
 
 #include "multiphaseMixture.H"
-#include "alphaContactAngleFvPatchScalarField.H"
+#include "multiphaseAlphaContactAngleFvPatchScalarField.H"
 #include "Time.H"
 #include "subCycle.H"
 #include "fvCFD.H"
@@ -351,10 +351,11 @@ void Foam::multiphaseMixture::correctContactAngle
 
     forAll(boundary, patchi)
     {
-        if (isA<alphaContactAngleFvPatchScalarField>(gbf[patchi]))
+        if (isA<multiphaseAlphaContactAngleFvPatchScalarField>(gbf[patchi]))
         {
-            const alphaContactAngleFvPatchScalarField& acap =
-                refCast<const alphaContactAngleFvPatchScalarField>(gbf[patchi]);
+            const multiphaseAlphaContactAngleFvPatchScalarField& acap =
+                refCast<const multiphaseAlphaContactAngleFvPatchScalarField>
+                (gbf[patchi]);
 
             vectorField& nHatPatch = nHatb[patchi];
 
@@ -362,7 +363,7 @@ void Foam::multiphaseMixture::correctContactAngle
                 mesh_.Sf().boundaryField()[patchi]
                /mesh_.magSf().boundaryField()[patchi];
 
-            alphaContactAngleFvPatchScalarField::thetaPropsTable::
+            multiphaseAlphaContactAngleFvPatchScalarField::thetaPropsTable::
                 const_iterator tp =
                 acap.thetaProps().find(interfacePair(alpha1, alpha2));
 
diff --git a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.H b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.H
index 1d94d47e915cebd30ada7bed7450aae92a502757..2a430da5b267ab852ca6904370f4a3272c136a7a 100644
--- a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.H
+++ b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.H
@@ -210,7 +210,7 @@ public:
 
 
     //- Destructor
-    ~multiphaseMixture()
+    virtual ~multiphaseMixture()
     {}
 
 
diff --git a/applications/solvers/multiphase/settlingFoam/createFields.H b/applications/solvers/multiphase/settlingFoam/createFields.H
index c8e05c4209ca9d5494d5b8c01d8bbf77c109c192..a2a5707b9eb8f063d0034587f3cbe5d7ee711c19 100644
--- a/applications/solvers/multiphase/settlingFoam/createFields.H
+++ b/applications/solvers/multiphase/settlingFoam/createFields.H
@@ -50,7 +50,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
@@ -184,7 +184,7 @@
             "RASProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
@@ -276,7 +276,7 @@
         )
     );
 
-    if (RASProperties.lookupOrDefault<Switch>("printCoeffs", false))
+    if (RASProperties.lookupOrDefault("printCoeffs", false))
     {
         Info<< "kEpsilonCoeffs" << kEpsilonDict << nl
             << "wallFunctionCoeffs" << wallFunctionDict << endl;
diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H b/applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H
index 8a1269058106f9edd37a2a4124c68f6410c95021..65761d9ec9b69c4f2889f01544572f84dc191aad 100644
--- a/applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H
+++ b/applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H
@@ -7,7 +7,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
@@ -153,7 +153,7 @@
             "interfacialProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
@@ -175,10 +175,8 @@
     );
 
     word dragPhase("blended");
-    if (interfacialProperties.found("dragPhase"))
+    if (interfacialProperties.readIfPresent("dragPhase", dragPhase))
     {
-        dragPhase = word(interfacialProperties.lookup("dragPhase"));
-
         bool validDrag =
             dragPhase == "a" || dragPhase == "b" || dragPhase == "blended";
 
diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C
index 611ce8fa167caaf2a1eb9f57a985528c1688e6c2..57096ebd0c74100fac28ea906fe17b4ec4504ac2 100644
--- a/applications/solvers/multiphase/twoPhaseEulerFoam/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C
+++ b/applications/solvers/multiphase/twoPhaseEulerFoam/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C
@@ -56,7 +56,7 @@ Foam::kineticTheoryModel::kineticTheoryModel
             "kineticTheoryProperties",
             Ua_.time().constant(),
             Ua_.mesh(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/readPPProperties.H b/applications/solvers/multiphase/twoPhaseEulerFoam/readPPProperties.H
index 3acbf758d04105e7d3ec4f6aad60035c7398d082..c1b319cbc96c9613a5d379b020b564204d55207e 100644
--- a/applications/solvers/multiphase/twoPhaseEulerFoam/readPPProperties.H
+++ b/applications/solvers/multiphase/twoPhaseEulerFoam/readPPProperties.H
@@ -5,7 +5,7 @@
             "ppProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/stressAnalysis/solidDisplacementFoam/readMechanicalProperties.H b/applications/solvers/stressAnalysis/solidDisplacementFoam/readMechanicalProperties.H
index 91bd5f3da20abfb3da45716dfaf01aadc86cea5b..9f256bd6891346da0be3844abc2882fb2079bb46 100644
--- a/applications/solvers/stressAnalysis/solidDisplacementFoam/readMechanicalProperties.H
+++ b/applications/solvers/stressAnalysis/solidDisplacementFoam/readMechanicalProperties.H
@@ -7,7 +7,7 @@
             "mechanicalProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/solvers/stressAnalysis/solidDisplacementFoam/readSolidDisplacementFoamControls.H b/applications/solvers/stressAnalysis/solidDisplacementFoam/readSolidDisplacementFoamControls.H
index 343b7bcaed48cba52e9b52863cbdb364f00ed35f..8b59cc497e5a310375408631d6c28bc0e90b8030 100644
--- a/applications/solvers/stressAnalysis/solidDisplacementFoam/readSolidDisplacementFoamControls.H
+++ b/applications/solvers/stressAnalysis/solidDisplacementFoam/readSolidDisplacementFoamControls.H
@@ -1,5 +1,6 @@
 const dictionary& stressControl = mesh.solutionDict().subDict("stressAnalysis");
 
-int nCorr(readInt(stressControl.lookup("nCorrectors")));
+const int nCorr = stressControl.lookupOrDefault<int>("nCorrectors", 1);
+
 scalar convergenceTolerance(readScalar(stressControl.lookup("D")));
 Switch compactNormalStress(stressControl.lookup("compactNormalStress"));
diff --git a/applications/solvers/stressAnalysis/solidDisplacementFoam/readThermalProperties.H b/applications/solvers/stressAnalysis/solidDisplacementFoam/readThermalProperties.H
index a4c3082fb5a71d758afa43660945f6edc1e9759d..12e10a607b4dc4effa5e04a0f1b59697df48e7d7 100644
--- a/applications/solvers/stressAnalysis/solidDisplacementFoam/readThermalProperties.H
+++ b/applications/solvers/stressAnalysis/solidDisplacementFoam/readThermalProperties.H
@@ -7,7 +7,7 @@
             "thermalProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/test/DynamicField/DynamicFieldTest.C b/applications/test/DynamicField/DynamicFieldTest.C
index e78747fb0f88ce68b700dbc2c9133e46705f0e4d..3e5a8dfc547c6fa7d99623ade1aa6a991a752839 100644
--- a/applications/test/DynamicField/DynamicFieldTest.C
+++ b/applications/test/DynamicField/DynamicFieldTest.C
@@ -43,6 +43,9 @@ int main(int argc, char *argv[])
         dl.append(2);
         dl.append(1);
         Pout<< "appending : dl:" << dl << endl;
+
+        dl[2] *= 10;
+        Pout<< "assigning : dl:" << dl << endl;
     }
 
     {
diff --git a/applications/test/Hashing/hashingTests b/applications/test/Hashing/hashingTests
index 162854bbefcedf30038a7bb7ef5c35149ad6d3e8..2ccc793e748cfe7f53c94cf530b0b167c89587fd 100644
--- a/applications/test/Hashing/hashingTests
+++ b/applications/test/Hashing/hashingTests
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/applications/test/LduMatrix/createFields.H b/applications/test/LduMatrix/createFields.H
index ea64f13026b379739aa4d88f7f3f317c99c04f1d..57714aa787144ff08e6d273d8efba6fb2d451f99 100644
--- a/applications/test/LduMatrix/createFields.H
+++ b/applications/test/LduMatrix/createFields.H
@@ -7,7 +7,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/test/dataEntry/testDataEntry.C b/applications/test/dataEntry/testDataEntry.C
index 583701322b08f0f885d0b669bdbfeb3de609da63..456f0d478d5155a407acf1604f415cc43e50a75e 100644
--- a/applications/test/dataEntry/testDataEntry.C
+++ b/applications/test/dataEntry/testDataEntry.C
@@ -48,7 +48,7 @@ int main(int argc, char *argv[])
             "dataEntryProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/test/dictionary/testDictRegex b/applications/test/dictionary/testDictRegex
index 01d4274ba8dad8147a4b62e254317b0ae1cd7f38..e1833efb3f688e485bc9c80504daf947fd9b10a6 100644
--- a/applications/test/dictionary/testDictRegex
+++ b/applications/test/dictionary/testDictRegex
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version         2.0;
diff --git a/applications/test/fvSolutionCombine/fvSolutionCombine.C b/applications/test/fvSolutionCombine/fvSolutionCombine.C
index a98d803bf37a82105798bb0e37c89291e688d91b..19abc81611fbdc5537900c49c2b32c3fcd83cbcb 100644
--- a/applications/test/fvSolutionCombine/fvSolutionCombine.C
+++ b/applications/test/fvSolutionCombine/fvSolutionCombine.C
@@ -116,7 +116,7 @@ int main(int argc, char *argv[])
             dictName,
             "system",
             runTime,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/applications/test/regex/testRegexps b/applications/test/regex/testRegexps
index 72287eea4344e36c0b9e9ca5ac50005a684ddc2a..fca98249c6084d310762cb15c01bcf0f4a03ac8b 100644
--- a/applications/test/regex/testRegexps
+++ b/applications/test/regex/testRegexps
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/applications/test/router/routerDict b/applications/test/router/routerDict
index b21e5544fef1f40899ad547f356ee81f0a32c5db..310c2653e3e54c550e9aa9744d33351ae76441e4 100644
--- a/applications/test/router/routerDict
+++ b/applications/test/router/routerDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/test/spline/test-splines b/applications/test/spline/test-splines
index 63f7bd17dd1cf34c86d3f7ad039fe36ec0dc9cfa..05ab2185cdd40126d81181dadd09523e1e2e12a7 100644
--- a/applications/test/spline/test-splines
+++ b/applications/test/spline/test-splines
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 (
diff --git a/applications/test/wordRe/testRegexps b/applications/test/wordRe/testRegexps
index c18cac80287d8a3294a676aaf683651cccc7e826..0eefa0f781a91d08388ace58001d9dfe1d139fbb 100644
--- a/applications/test/wordRe/testRegexps
+++ b/applications/test/wordRe/testRegexps
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/applications/utilities/errorEstimation/estimateScalarError/estimateScalarError.C b/applications/utilities/errorEstimation/estimateScalarError/estimateScalarError.C
index 9b305731db1bc553970847b26157bae5b7fde558..8b2339233ca079d9447b2cf14fb16f2db9d1eeca 100644
--- a/applications/utilities/errorEstimation/estimateScalarError/estimateScalarError.C
+++ b/applications/utilities/errorEstimation/estimateScalarError/estimateScalarError.C
@@ -57,7 +57,7 @@ int main(int argc, char *argv[])
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/errorEstimation/icoErrorEstimate/icoErrorEstimate.C b/applications/utilities/errorEstimation/icoErrorEstimate/icoErrorEstimate.C
index 33486ec3017350fc6ab008d10fdbfebb70e2190d..05a7e5c57cd48b56be8e503652dcad64bf07242a 100644
--- a/applications/utilities/errorEstimation/icoErrorEstimate/icoErrorEstimate.C
+++ b/applications/utilities/errorEstimation/icoErrorEstimate/icoErrorEstimate.C
@@ -56,7 +56,7 @@ int main(int argc, char *argv[])
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/errorEstimation/icoMomentError/icoMomentError.C b/applications/utilities/errorEstimation/icoMomentError/icoMomentError.C
index 57629b598071af0bb21eb02f0472fcaf9c0cf0be..d0f668c8c9b96f02cfd766805e5c5d4b8e439b98 100644
--- a/applications/utilities/errorEstimation/icoMomentError/icoMomentError.C
+++ b/applications/utilities/errorEstimation/icoMomentError/icoMomentError.C
@@ -57,7 +57,7 @@ int main(int argc, char *argv[])
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/errorEstimation/momentScalarError/momentScalarError.C b/applications/utilities/errorEstimation/momentScalarError/momentScalarError.C
index 72744a9f8d5c9413da5e8509f77fd715942cce48..246380a029f178c9bb313acdcecff41c9d677b77 100644
--- a/applications/utilities/errorEstimation/momentScalarError/momentScalarError.C
+++ b/applications/utilities/errorEstimation/momentScalarError/momentScalarError.C
@@ -58,7 +58,7 @@ int main(int argc, char *argv[])
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMesh.C b/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMesh.C
index c2f3640f2d14a44ddf5a4c300e774e34f81b7b52..3ef371188ec587ae08786b635f8e8390d138c917 100644
--- a/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMesh.C
+++ b/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMesh.C
@@ -639,7 +639,7 @@ int main(int argc, char *argv[])
         "motionProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE
     );
 
@@ -669,7 +669,7 @@ int main(int argc, char *argv[])
             "autoRefineMeshDict",
             runTime.system(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMeshDict b/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMeshDict
index 9c57e17dbf70a84b8d7155cf2b96babd832612cb..334ea8cd308d530320940a9469e19c66b6353819 100644
--- a/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMeshDict
+++ b/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/mesh/advanced/combinePatchFaces/combinePatchFaces.C b/applications/utilities/mesh/advanced/combinePatchFaces/combinePatchFaces.C
index 0b09b7859d730cb90cbb079deaef88d690eee64b..21c9f5867a2f1ac273fd646b70590e86cadf6a84 100644
--- a/applications/utilities/mesh/advanced/combinePatchFaces/combinePatchFaces.C
+++ b/applications/utilities/mesh/advanced/combinePatchFaces/combinePatchFaces.C
@@ -74,7 +74,7 @@ void checkSnapMesh
             "snapMeshDict",
             runTime.system(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/mesh/advanced/modifyMesh/modifyMesh.C b/applications/utilities/mesh/advanced/modifyMesh/modifyMesh.C
index 7cd57e792d5d47a4c4f774a53b1fac4a7e86d951..befadc88e2d22e062614618b9b99e9f6418a162b 100644
--- a/applications/utilities/mesh/advanced/modifyMesh/modifyMesh.C
+++ b/applications/utilities/mesh/advanced/modifyMesh/modifyMesh.C
@@ -346,7 +346,7 @@ int main(int argc, char *argv[])
             "modifyMeshDict",
             runTime.system(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/mesh/advanced/modifyMesh/modifyMeshDict b/applications/utilities/mesh/advanced/modifyMesh/modifyMeshDict
index f2cf26169293c0ec4e8bff832f82720ae594dc13..b656cbffcad1120021862b7a2a0ef7264bbc25d0 100644
--- a/applications/utilities/mesh/advanced/modifyMesh/modifyMeshDict
+++ b/applications/utilities/mesh/advanced/modifyMesh/modifyMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/mesh/advanced/selectCells/edgeStats.C b/applications/utilities/mesh/advanced/selectCells/edgeStats.C
index 561cef9bfdf198d66d054532ab3488d7b951710a..103d963be5a67ad02d9ed459f85e30d0c4f0a193 100644
--- a/applications/utilities/mesh/advanced/selectCells/edgeStats.C
+++ b/applications/utilities/mesh/advanced/selectCells/edgeStats.C
@@ -78,7 +78,7 @@ Foam::edgeStats::edgeStats(const polyMesh& mesh)
         "motionProperties",
         mesh.time().constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE
     );
 
diff --git a/applications/utilities/mesh/advanced/selectCells/selectCells.C b/applications/utilities/mesh/advanced/selectCells/selectCells.C
index 8f79846050462adf87eef46794ce980c6c5ccb70..f5ad8412f7900167cfde4e07f4eebfd107ab3fba 100644
--- a/applications/utilities/mesh/advanced/selectCells/selectCells.C
+++ b/applications/utilities/mesh/advanced/selectCells/selectCells.C
@@ -346,7 +346,7 @@ int main(int argc, char *argv[])
             "selectCellsDict",
             runTime.system(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/mesh/advanced/selectCells/selectCellsDict b/applications/utilities/mesh/advanced/selectCells/selectCellsDict
index 87f91eafb40ef9afbbfbeeb0bee439cee8a13a31..10b73f34b5376768b4988342208041d39841c7b9 100644
--- a/applications/utilities/mesh/advanced/selectCells/selectCellsDict
+++ b/applications/utilities/mesh/advanced/selectCells/selectCellsDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/mesh/conversion/Optional/ccm26ToFoam/ccm26ToFoam.C b/applications/utilities/mesh/conversion/Optional/ccm26ToFoam/ccm26ToFoam.C
index 58070fc473cc4010d0d9f07a5cb499ea303946ec..decabfeae0107b3508b8aca691bd2b7e059d6a46 100644
--- a/applications/utilities/mesh/conversion/Optional/ccm26ToFoam/ccm26ToFoam.C
+++ b/applications/utilities/mesh/conversion/Optional/ccm26ToFoam/ccm26ToFoam.C
@@ -579,12 +579,17 @@ void ReadCells
 
 int main(int argc, char *argv[])
 {
+    argList::addNote
+    (
+        "read CCM files as written by proSTAR/ccm\n"
+        " - does not handle 'interfaces' (couples), cyclics or data\n"
+        " - does not handle mesh regions (porosity, solids, ...)\n"
+    );
     argList::noParallel();
-    argList::validArgs.append("ccm26 file");
-
-#   include "setRootCase.H"
-#   include "createTime.H"
+    argList::validArgs.append("ccmFile");
 
+    #include "setRootCase.H"
+    #include "createTime.H"
 
     // Foam mesh data
     // ~~~~~~~~~~~~~~
@@ -615,6 +620,7 @@ int main(int argc, char *argv[])
 
     {
         const fileName ccmFile = args[1];
+        const word ccmExt = ccmFile.ext();
 
         if (!isFile(ccmFile))
         {
@@ -623,8 +629,6 @@ int main(int argc, char *argv[])
                 << exit(FatalError);
         }
 
-        word ccmExt = ccmFile.ext();
-
         if (ccmExt != "ccm" && ccmExt != "ccmg")
         {
             FatalErrorIn(args.executable())
diff --git a/applications/utilities/mesh/conversion/fluentMeshToFoam/create3DCellShape.C b/applications/utilities/mesh/conversion/fluentMeshToFoam/create3DCellShape.C
index ddf722d3241613a285e7275f850a17103671d284..adcce3869d951d33248cef85ddca10523e5a9e3b 100644
--- a/applications/utilities/mesh/conversion/fluentMeshToFoam/create3DCellShape.C
+++ b/applications/utilities/mesh/conversion/fluentMeshToFoam/create3DCellShape.C
@@ -90,7 +90,7 @@ cellShape create3DCellShape
     // make a list of outward-pointing faces
     labelListList localFaces(faceLabels.size());
 
-    forAll  (faceLabels, faceI)
+    forAll(faceLabels, faceI)
     {
         const label curFaceLabel = faceLabels[faceI];
 
diff --git a/applications/utilities/mesh/conversion/foamToStarMesh/foamToStarMesh.C b/applications/utilities/mesh/conversion/foamToStarMesh/foamToStarMesh.C
index 09e34235e5fda8fcb6820b6a4f0cdbf8b31ed0f3..2587a5d4571e5c071511d1528a4903bdf415e2f4 100644
--- a/applications/utilities/mesh/conversion/foamToStarMesh/foamToStarMesh.C
+++ b/applications/utilities/mesh/conversion/foamToStarMesh/foamToStarMesh.C
@@ -62,6 +62,10 @@ using namespace Foam;
 
 int main(int argc, char *argv[])
 {
+    argList::addNote
+    (
+        "read OpenFOAM mesh and write a pro-STAR (v4) bnd/cel/vrt format"
+    );
     argList::noParallel();
     timeSelector::addOptions();
 
@@ -74,7 +78,7 @@ int main(int argc, char *argv[])
     argList::addBoolOption
     (
         "noBnd",
-        "suppress writing the .bnd file"
+        "suppress writing a boundary (.bnd) file"
     );
 
 #   include "setRootCase.H"
diff --git a/applications/utilities/mesh/conversion/foamToStarMesh/getTimeIndex.H b/applications/utilities/mesh/conversion/foamToStarMesh/getTimeIndex.H
index 85a92405dda760fbbfc5931102afe41aa602b2e6..d722c432e3b4aa5a45e7c11c1e5bfcd7c6d4f7a8 100644
--- a/applications/utilities/mesh/conversion/foamToStarMesh/getTimeIndex.H
+++ b/applications/utilities/mesh/conversion/foamToStarMesh/getTimeIndex.H
@@ -29,7 +29,7 @@
                     runTime.timeName(),
                     "uniform",
                     runTime,
-                    IOobject::MUST_READ,
+                    IOobject::MUST_READ_IF_MODIFIED,
                     IOobject::NO_WRITE,
                     false
                 )
diff --git a/applications/utilities/mesh/conversion/foamToSurface/getTimeIndex.H b/applications/utilities/mesh/conversion/foamToSurface/getTimeIndex.H
index 85a92405dda760fbbfc5931102afe41aa602b2e6..d722c432e3b4aa5a45e7c11c1e5bfcd7c6d4f7a8 100644
--- a/applications/utilities/mesh/conversion/foamToSurface/getTimeIndex.H
+++ b/applications/utilities/mesh/conversion/foamToSurface/getTimeIndex.H
@@ -29,7 +29,7 @@
                     runTime.timeName(),
                     "uniform",
                     runTime,
-                    IOobject::MUST_READ,
+                    IOobject::MUST_READ_IF_MODIFIED,
                     IOobject::NO_WRITE,
                     false
                 )
diff --git a/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C b/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C
index a3f607ba0b04e809439c4fb585a8724c24acd2f6..fa1fe3b04104d6126c2b00371da620114b5f0b59 100644
--- a/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C
+++ b/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C
@@ -233,6 +233,44 @@ void storeCellInZone
 }
 
 
+// Reads mesh format
+scalar readMeshFormat(IFstream& inFile)
+{
+    Info<< "Starting to read mesh format at line " << inFile.lineNumber() << endl;
+
+    string line;
+    inFile.getLine(line);
+    IStringStream lineStr(line);
+
+    scalar version;
+    label asciiFlag, nBytes;
+    lineStr >> version >> asciiFlag >> nBytes;
+
+    Info<< "Read format version " << version << "  ascii " << asciiFlag << endl;
+
+    if (asciiFlag != 0)
+    {
+        FatalIOErrorIn("readMeshFormat(IFstream&)", inFile)
+            << "Can only read ascii msh files."
+            << exit(FatalIOError);
+    }
+
+    inFile.getLine(line);
+    IStringStream tagStr(line);
+    word tag(tagStr);
+
+    if (tag != "$EndMeshFormat")
+    {
+        FatalIOErrorIn("readMeshFormat(IFstream&)", inFile)
+            << "Did not find $ENDNOD tag on line "
+            << inFile.lineNumber() << exit(FatalIOError);
+    }
+    Info<< endl;
+
+    return version;
+}
+
+
 // Reads points and map
 void readPoints(IFstream& inFile, pointField& points, Map<label>& mshToFoam)
 {
@@ -278,9 +316,9 @@ void readPoints(IFstream& inFile, pointField& points, Map<label>& mshToFoam)
 
     if (tag != "$ENDNOD" && tag != "$EndNodes")
     {
-        FatalErrorIn("readPoints(..)")
+        FatalIOErrorIn("readPoints(..)", inFile)
             << "Did not find $ENDNOD tag on line "
-            << inFile.lineNumber() << exit(FatalError);
+            << inFile.lineNumber() << exit(FatalIOError);
     }
     Info<< endl;
 }
@@ -351,9 +389,9 @@ void readPhysNames(IFstream& inFile, Map<word>& physicalNames)
 
     if (tag != "$EndPhysicalNames")
     {
-        FatalErrorIn("readPhysicalNames(..)")
+        FatalIOErrorIn("readPhysicalNames(..)", inFile)
             << "Did not find $EndPhysicalNames tag on line "
-            << inFile.lineNumber() << exit(FatalError);
+            << inFile.lineNumber() << exit(FatalIOError);
     }
     Info<< endl;
 }
@@ -362,7 +400,7 @@ void readPhysNames(IFstream& inFile, Map<word>& physicalNames)
 // Reads cells and patch faces
 void readCells
 (
-    const bool version2Format,
+    const scalar versionFormat,
     const bool keepOrientation,
     const pointField& points,
     const Map<label>& mshToFoam,
@@ -426,23 +464,18 @@ void readCells
 
         label elmNumber, elmType, regPhys;
 
-        if (version2Format)
+        if (versionFormat >= 2)
         {
             lineStr >> elmNumber >> elmType;
 
             label nTags;
             lineStr>> nTags;
 
-            label regElem, partition;
-
-            if (nTags == 3)
+            if (nTags > 0)
             {
-                lineStr >> regPhys >> regElem >> partition;
-            }
-            else
-            {
-                regPhys = 0;
-                for (label i = 0; i < nTags; i++)
+                // Assume the first tag is the physical surface
+                lineStr >> regPhys;
+                for (label i = 1; i < nTags; i++)
                 {
                     label dummy;
                     lineStr>> dummy;
@@ -659,9 +692,9 @@ void readCells
 
     if (tag != "$ENDELM" && tag != "$EndElements")
     {
-        FatalErrorIn("readCells(..)")
+        FatalIOErrorIn("readCells(..)", inFile)
             << "Did not find $ENDELM tag on line "
-            << inFile.lineNumber() << exit(FatalError);
+            << inFile.lineNumber() << exit(FatalIOError);
     }
 
 
@@ -683,13 +716,13 @@ void readCells
 
     if (cells.size() == 0)
     {
-        FatalErrorIn("readCells(..)")
+        FatalIOErrorIn("readCells(..)", inFile)
             << "No cells read from file " << inFile.name() << nl
             << "Does your file specify any 3D elements (hex=" << MSHHEX
             << ", prism=" << MSHPRISM << ", pyramid=" << MSHPYR
             << ", tet=" << MSHTET << ")?" << nl
             << "Perhaps you have not exported the 3D elements?"
-            << exit(FatalError);
+            << exit(FatalIOError);
     }
 
     Info<< "CellZones:" << nl
@@ -749,7 +782,8 @@ int main(int argc, char *argv[])
     Map<word> physicalNames;
 
     // Version 1 or 2 format
-    bool version2Format = false;
+    scalar versionFormat = 1;
+
 
     while (inFile.good())
     {
@@ -761,14 +795,7 @@ int main(int argc, char *argv[])
 
         if (tag == "$MeshFormat")
         {
-            Info<< "Found $MeshFormat tag; assuming version 2 file format."
-                << endl;
-            version2Format = true;
-
-            if (!skipSection(inFile))
-            {
-                break;
-            }
+            versionFormat = readMeshFormat(inFile);
         }
         else if (tag == "$PhysicalNames")
         {
@@ -782,7 +809,7 @@ int main(int argc, char *argv[])
         {
             readCells
             (
-                version2Format,
+                versionFormat,
                 keepOrientation,
                 points,
                 mshToFoam,
diff --git a/applications/utilities/mesh/conversion/star3ToFoam/star3ToFoam.C b/applications/utilities/mesh/conversion/star3ToFoam/star3ToFoam.C
index de32c0f5b3daecc5e08e86de08a041266e86dd8e..8d8c565387dc912953b0eea630314b4a18f6be36 100644
--- a/applications/utilities/mesh/conversion/star3ToFoam/star3ToFoam.C
+++ b/applications/utilities/mesh/conversion/star3ToFoam/star3ToFoam.C
@@ -38,8 +38,13 @@ Description
 
 int main(int argc, char *argv[])
 {
+    argList::addNote
+    (
+        "convert pro-STAR (v3) mesh to OpenFOAM"
+    );
+
     argList::noParallel();
-    argList::validArgs.append("STAR mesh file prefix");
+    argList::validArgs.append("pro-STAR prefix");
     argList::addOption
     (
         "scale",
@@ -56,7 +61,7 @@ int main(int argc, char *argv[])
 
     const scalar scaleFactor = args.optionLookupOrDefault("scale", 1.0);
 
-#   include "createTime.H"
+    #include "createTime.H"
 
     starMesh makeMesh(args[1], runTime, scaleFactor);
 
diff --git a/applications/utilities/mesh/conversion/star4ToFoam/star4ToFoam.C b/applications/utilities/mesh/conversion/star4ToFoam/star4ToFoam.C
index fc956582b3e0ca50d99b6f8fcbd591fa8c9ec329..53dd66c234ac48fe91e05a469f767c3361b0f2a9 100644
--- a/applications/utilities/mesh/conversion/star4ToFoam/star4ToFoam.C
+++ b/applications/utilities/mesh/conversion/star4ToFoam/star4ToFoam.C
@@ -59,6 +59,11 @@ using namespace Foam;
 
 int main(int argc, char *argv[])
 {
+    argList::addNote
+    (
+        "convert pro-STAR (v4) mesh to OpenFOAM"
+    );
+
     argList::noParallel();
     argList::validArgs.append("pro-STAR prefix");
     argList::addBoolOption
diff --git a/applications/utilities/mesh/generation/blockMesh/blockMeshApp.C b/applications/utilities/mesh/generation/blockMesh/blockMeshApp.C
index 3f8086bb8038dd03236912dec6721cd43e19c73b..a0baebaae710f6e487bd78766da9a324f9833848 100644
--- a/applications/utilities/mesh/generation/blockMesh/blockMeshApp.C
+++ b/applications/utilities/mesh/generation/blockMesh/blockMeshApp.C
@@ -121,7 +121,7 @@ int main(int argc, char *argv[])
                   : dictPath
                 ),
                 runTime,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -137,7 +137,7 @@ int main(int argc, char *argv[])
                 runTime.constant(),
                 polyMeshDir,
                 runTime,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/applications/utilities/mesh/generation/extrudeMesh/extrudeMesh.C b/applications/utilities/mesh/generation/extrudeMesh/extrudeMesh.C
index 1d0ce53e738dbca14b26132551ef01904b74d590..9d28de41093fcfb309484a84ea1854c667239711 100644
--- a/applications/utilities/mesh/generation/extrudeMesh/extrudeMesh.C
+++ b/applications/utilities/mesh/generation/extrudeMesh/extrudeMesh.C
@@ -218,7 +218,7 @@ int main(int argc, char *argv[])
             runTimeExtruded.constant(),
             regionDir,
             runTimeExtruded,
-            IOobject::MUST_READ
+            IOobject::MUST_READ_IF_MODIFIED
         )
     );
 
diff --git a/applications/utilities/mesh/generation/extrudeMesh/extrudeModel/linearRadial/linearRadial.C b/applications/utilities/mesh/generation/extrudeMesh/extrudeModel/linearRadial/linearRadial.C
index 21c6813526af3d54c2618b6c58f0480c54d0fc77..ca3631f22421dd07423019b05e5835a36bf113de 100644
--- a/applications/utilities/mesh/generation/extrudeMesh/extrudeModel/linearRadial/linearRadial.C
+++ b/applications/utilities/mesh/generation/extrudeMesh/extrudeModel/linearRadial/linearRadial.C
@@ -43,7 +43,8 @@ addToRunTimeSelectionTable(extrudeModel, linearRadial, dictionary);
 linearRadial::linearRadial(const dictionary& dict)
 :
     extrudeModel(typeName, dict),
-    R_(readScalar(coeffDict_.lookup("R")))
+    R_(readScalar(coeffDict_.lookup("R"))),
+    Rsurface_(coeffDict_.lookupOrDefault<scalar>("Rsurface", -1))
 {}
 
 
@@ -65,6 +66,7 @@ point linearRadial::operator()
     // radius of the surface
     scalar rs = mag(surfacePoint);
     vector rsHat = surfacePoint/rs;
+    if (Rsurface_ >= 0) rs = Rsurface_;
 
     scalar r = rs + (R_ - rs)*sumThickness(layer);
     return r*rsHat;
diff --git a/applications/utilities/mesh/generation/extrudeMesh/extrudeModel/linearRadial/linearRadial.H b/applications/utilities/mesh/generation/extrudeMesh/extrudeModel/linearRadial/linearRadial.H
index 9b481dee06db169c399ad922ca071f57827ce912..9b42bb6690e42fabed02795e55502ba4d0a4bb63 100644
--- a/applications/utilities/mesh/generation/extrudeMesh/extrudeModel/linearRadial/linearRadial.H
+++ b/applications/utilities/mesh/generation/extrudeMesh/extrudeModel/linearRadial/linearRadial.H
@@ -51,6 +51,7 @@ class linearRadial
     // Private data
 
         scalar R_;
+        scalar Rsurface_;
 
 
 public:
diff --git a/applications/utilities/mesh/generation/extrudeMesh/extrudeProperties b/applications/utilities/mesh/generation/extrudeMesh/extrudeProperties
index 9a047e7822948eaf9012ccffaf12e0418d577e84..4fe5c4321d11cfc29ae7d78539ceebae13da6f0c 100644
--- a/applications/utilities/mesh/generation/extrudeMesh/extrudeProperties
+++ b/applications/utilities/mesh/generation/extrudeMesh/extrudeProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/mesh/generation/snappyHexMesh/snappyHexMesh.C b/applications/utilities/mesh/generation/snappyHexMesh/snappyHexMesh.C
index e93112a4313c8b32224ec8e4430d0bef365c3650..c48abfbc3960fd724e31bbc94a9937d92e34aad9 100644
--- a/applications/utilities/mesh/generation/snappyHexMesh/snappyHexMesh.C
+++ b/applications/utilities/mesh/generation/snappyHexMesh/snappyHexMesh.C
@@ -144,7 +144,7 @@ int main(int argc, char *argv[])
             "decomposeParDict",
             runTime.system(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
@@ -157,7 +157,7 @@ int main(int argc, char *argv[])
             "snappyHexMeshDict",
             runTime.system(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
        )
     );
@@ -334,8 +334,7 @@ int main(int argc, char *argv[])
     (
         decompositionMethod::New
         (
-            decomposeDict,
-            mesh
+            decomposeDict
         )
     );
     decompositionMethod& decomposer = decomposerPtr();
diff --git a/applications/utilities/mesh/generation/snappyHexMesh/snappyHexMeshDict b/applications/utilities/mesh/generation/snappyHexMesh/snappyHexMeshDict
index 788b154a6e977549523ea8ba179779f791f8cd3c..f83ccc48546d06f9cb8ee675dbeb67eb1b076aee 100644
--- a/applications/utilities/mesh/generation/snappyHexMesh/snappyHexMeshDict
+++ b/applications/utilities/mesh/generation/snappyHexMesh/snappyHexMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/mesh/manipulation/checkMesh/checkTopology.C b/applications/utilities/mesh/manipulation/checkMesh/checkTopology.C
index f0aa4a0aaaa6c887b1a9ce212c0488442a9599d3..9e96eec03f776b8335c18d7b33e4d660a4887521 100644
--- a/applications/utilities/mesh/manipulation/checkMesh/checkTopology.C
+++ b/applications/utilities/mesh/manipulation/checkMesh/checkTopology.C
@@ -12,6 +12,7 @@ bool Foam::checkSync(const wordList& names)
     List<wordList> allNames(Pstream::nProcs());
     allNames[Pstream::myProcNo()] = names;
     Pstream::gatherList(allNames);
+    Pstream::scatterList(allNames);
 
     bool hasError = false;
 
@@ -72,8 +73,8 @@ Foam::label Foam::checkTopology
                 Info<< " ***FaceZone " << mesh.faceZones()[zoneI].name()
                     << " is not correctly synchronised"
                     << " across coupled boundaries."
-                    << " (coupled faces both"
-                    << " present in set but with opposite flipmap)" << endl;
+                    << " (coupled faces are either not both "
+                    << " present in set or have same flipmap)" << endl;
                 noFailedChecks++;
             }
         }
diff --git a/applications/utilities/mesh/manipulation/createPatch/createPatch.C b/applications/utilities/mesh/manipulation/createPatch/createPatch.C
index 43652bbbeaeac27c05de5134a3dc84811e6558ad..7f80d01e5d96cc4bb2e60c78219af6be6209fc31 100644
--- a/applications/utilities/mesh/manipulation/createPatch/createPatch.C
+++ b/applications/utilities/mesh/manipulation/createPatch/createPatch.C
@@ -532,7 +532,7 @@ int main(int argc, char *argv[])
               : word::null
             ),
             runTime,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/applications/utilities/mesh/manipulation/createPatch/createPatchDict b/applications/utilities/mesh/manipulation/createPatch/createPatchDict
index 10fd55e5a17585e62eab7742bfac74ba4b280744..fae13ed51b552b0aee47f96f997a4630c498f2d5 100644
--- a/applications/utilities/mesh/manipulation/createPatch/createPatchDict
+++ b/applications/utilities/mesh/manipulation/createPatch/createPatchDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/mesh/manipulation/mirrorMesh/mirrorFvMesh.C b/applications/utilities/mesh/manipulation/mirrorMesh/mirrorFvMesh.C
index f5b79e7de14fd43036079129b475179bbfdda276..96a092fb2277d7a3d11e233e7cfb7cea68bb41dd 100644
--- a/applications/utilities/mesh/manipulation/mirrorMesh/mirrorFvMesh.C
+++ b/applications/utilities/mesh/manipulation/mirrorMesh/mirrorFvMesh.C
@@ -39,7 +39,7 @@ Foam::mirrorFvMesh::mirrorFvMesh(const IOobject& io)
             "mirrorMeshDict",
             time().system(),
             *this,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMeshDict b/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMeshDict
index 0405c7cfedec65777353544f2ed86e60c7fd3617..a891f605d2f052323d5c78df70ec1b26aba450fe 100644
--- a/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMeshDict
+++ b/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/mesh/manipulation/mirrorMesh/readMirrorDict.H b/applications/utilities/mesh/manipulation/mirrorMesh/readMirrorDict.H
index 6116514701ec01f592c2a7b6995adc6768fcd32a..138898842bf2e8b6fd3e38b960272a14f16b3aa3 100644
--- a/applications/utilities/mesh/manipulation/mirrorMesh/readMirrorDict.H
+++ b/applications/utilities/mesh/manipulation/mirrorMesh/readMirrorDict.H
@@ -7,7 +7,7 @@
             "mirrorMeshDict",
             runTime.system(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/mesh/conversion/polyDualMesh/Make/files b/applications/utilities/mesh/manipulation/polyDualMesh/Make/files
similarity index 100%
rename from applications/utilities/mesh/conversion/polyDualMesh/Make/files
rename to applications/utilities/mesh/manipulation/polyDualMesh/Make/files
diff --git a/applications/utilities/mesh/conversion/polyDualMesh/Make/options b/applications/utilities/mesh/manipulation/polyDualMesh/Make/options
similarity index 100%
rename from applications/utilities/mesh/conversion/polyDualMesh/Make/options
rename to applications/utilities/mesh/manipulation/polyDualMesh/Make/options
diff --git a/applications/utilities/mesh/conversion/polyDualMesh/meshDualiser.C b/applications/utilities/mesh/manipulation/polyDualMesh/meshDualiser.C
similarity index 99%
rename from applications/utilities/mesh/conversion/polyDualMesh/meshDualiser.C
rename to applications/utilities/mesh/manipulation/polyDualMesh/meshDualiser.C
index 74a89fdc5e360043b0953024b81084c224033fb3..bdfb35bd504f2125576a8b0d85305963fda46248 100644
--- a/applications/utilities/mesh/conversion/polyDualMesh/meshDualiser.C
+++ b/applications/utilities/mesh/manipulation/polyDualMesh/meshDualiser.C
@@ -881,9 +881,6 @@ Foam::meshDualiser::meshDualiser(const polyMesh& mesh)
 {}
 
 
-// * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
-
-
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
 void Foam::meshDualiser::setRefinement
@@ -1469,14 +1466,4 @@ void Foam::meshDualiser::setRefinement
 }
 
 
-
-// * * * * * * * * * * * * * * * Member Operators  * * * * * * * * * * * * * //
-
-
-// * * * * * * * * * * * * * * * Friend Functions  * * * * * * * * * * * * * //
-
-
-// * * * * * * * * * * * * * * * Friend Operators  * * * * * * * * * * * * * //
-
-
 // ************************************************************************* //
diff --git a/applications/utilities/mesh/conversion/polyDualMesh/meshDualiser.H b/applications/utilities/mesh/manipulation/polyDualMesh/meshDualiser.H
similarity index 100%
rename from applications/utilities/mesh/conversion/polyDualMesh/meshDualiser.H
rename to applications/utilities/mesh/manipulation/polyDualMesh/meshDualiser.H
diff --git a/applications/utilities/mesh/conversion/polyDualMesh/polyDualMeshApp.C b/applications/utilities/mesh/manipulation/polyDualMesh/polyDualMeshApp.C
similarity index 100%
rename from applications/utilities/mesh/conversion/polyDualMesh/polyDualMeshApp.C
rename to applications/utilities/mesh/manipulation/polyDualMesh/polyDualMeshApp.C
diff --git a/applications/utilities/mesh/manipulation/refineMesh/refineMesh.C b/applications/utilities/mesh/manipulation/refineMesh/refineMesh.C
index ba3170d281051a4505272fa2539d079f773fdf9a..f890c845466467ee53a7f8e41fa3a74c212e2528 100644
--- a/applications/utilities/mesh/manipulation/refineMesh/refineMesh.C
+++ b/applications/utilities/mesh/manipulation/refineMesh/refineMesh.C
@@ -334,7 +334,7 @@ int main(int argc, char *argv[])
                 "refineMeshDict",
                 runTime.system(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE
             )
         );
diff --git a/applications/utilities/mesh/manipulation/refineMesh/refineMeshDict b/applications/utilities/mesh/manipulation/refineMesh/refineMeshDict
index 5a460c5d2ee1dd3f562200eb0a442bb04562f327..c8b6a44f48bb7f7ca4e3b650de9b60800080692b 100644
--- a/applications/utilities/mesh/manipulation/refineMesh/refineMeshDict
+++ b/applications/utilities/mesh/manipulation/refineMesh/refineMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C b/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C
index 495e07f2901be7a3aa329a2b83021b7a3cf2cfea..3394b928b22f3079e0f3470d1ffabdf68b89af16 100644
--- a/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C
+++ b/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C
@@ -483,17 +483,23 @@ int main(int argc, char *argv[])
                 "decomposeParDict",
                 runTime.system(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE
             )
         );
         autoPtr<decompositionMethod> decomposePtr = decompositionMethod::New
         (
-            decomposeDict,
-            mesh
+            decomposeDict
         );
 
-        labelList cellToRegion(decomposePtr().decompose(mesh.cellCentres()));
+        labelList cellToRegion
+        (
+            decomposePtr().decompose
+            (
+                mesh,
+                mesh.cellCentres()
+            )
+        );
 
         // For debugging: write out region
         {
diff --git a/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C b/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C
index e9c20f1afbf34e6d1c31b84f02616e63a69e7727..7e3cd14588a8e2502bb868bf31ac46922be410e6 100644
--- a/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C
+++ b/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C
@@ -381,7 +381,8 @@ void subsetVolFields
     const fvMesh& mesh,
     const fvMesh& subMesh,
     const labelList& cellMap,
-    const labelList& faceMap
+    const labelList& faceMap,
+    const labelHashSet& addedPatches
 )
 {
     const labelList patchMap(identity(mesh.boundaryMesh().size()));
@@ -412,14 +413,7 @@ void subsetVolFields
         //       get initialised.
         forAll(tSubFld().boundaryField(), patchI)
         {
-            const fvPatchField<typename GeoField::value_type>& pfld =
-                tSubFld().boundaryField()[patchI];
-
-            if
-            (
-                isA<calculatedFvPatchField<typename GeoField::value_type> >
-                (pfld)
-            )
+            if (addedPatches.found(patchI))
             {
                 tSubFld().boundaryField()[patchI] ==
                     pTraits<typename GeoField::value_type>::zero;
@@ -440,7 +434,8 @@ void subsetSurfaceFields
 (
     const fvMesh& mesh,
     const fvMesh& subMesh,
-    const labelList& faceMap
+    const labelList& faceMap,
+    const labelHashSet& addedPatches
 )
 {
     const labelList patchMap(identity(mesh.boundaryMesh().size()));
@@ -470,14 +465,7 @@ void subsetSurfaceFields
         //       get initialised.
         forAll(tSubFld().boundaryField(), patchI)
         {
-            const fvsPatchField<typename GeoField::value_type>& pfld =
-                tSubFld().boundaryField()[patchI];
-
-            if
-            (
-                isA<calculatedFvsPatchField<typename GeoField::value_type> >
-                (pfld)
-            )
+            if (addedPatches.found(patchI))
             {
                 tSubFld().boundaryField()[patchI] ==
                     pTraits<typename GeoField::value_type>::zero;
@@ -852,6 +840,15 @@ void createAndWriteRegion
         newMesh
     );
 
+
+    // Make map of all added patches
+    labelHashSet addedPatches(2*interfaceToPatch.size());
+    forAllConstIter(EdgeMap<label>, interfaceToPatch, iter)
+    {
+        addedPatches.insert(iter());
+        addedPatches.insert(iter()+1);
+    }
+
     Info<< "Mapping fields" << endl;
 
     // Map existing fields
@@ -863,66 +860,76 @@ void createAndWriteRegion
         mesh,
         newMesh(),
         map().cellMap(),
-        map().faceMap()
+        map().faceMap(),
+        addedPatches
     );
     subsetVolFields<volVectorField>
     (
         mesh,
         newMesh(),
         map().cellMap(),
-        map().faceMap()
+        map().faceMap(),
+        addedPatches
     );
     subsetVolFields<volSphericalTensorField>
     (
         mesh,
         newMesh(),
         map().cellMap(),
-        map().faceMap()
+        map().faceMap(),
+        addedPatches
     );
     subsetVolFields<volSymmTensorField>
     (
         mesh,
         newMesh(),
         map().cellMap(),
-        map().faceMap()
+        map().faceMap(),
+        addedPatches
     );
     subsetVolFields<volTensorField>
     (
         mesh,
         newMesh(),
         map().cellMap(),
-        map().faceMap()
+        map().faceMap(),
+        addedPatches
     );
 
     subsetSurfaceFields<surfaceScalarField>
     (
         mesh,
         newMesh(),
-        map().faceMap()
+        map().faceMap(),
+        addedPatches
     );
     subsetSurfaceFields<surfaceVectorField>
     (
         mesh,
         newMesh(),
-        map().faceMap()
+        map().faceMap(),
+        addedPatches
     );
     subsetSurfaceFields<surfaceSphericalTensorField>
     (
         mesh,
         newMesh(),
-        map().faceMap()
+        map().faceMap(),
+        addedPatches
     );
     subsetSurfaceFields<surfaceSymmTensorField>
     (
         mesh,
         newMesh(),
-        map().faceMap()
+        map().faceMap(),
+        addedPatches
     );
     subsetSurfaceFields<surfaceTensorField>
     (
         mesh,
         newMesh(),
-        map().faceMap()
+        map().faceMap(),
+        addedPatches
     );
 
 
diff --git a/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C b/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C
index 733cef024b8bd8a44f9d3ab80e8b56a6e58b9a7d..9790aec1e147754e1ac85c65c3b02c6989f6c614 100644
--- a/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C
+++ b/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C
@@ -298,7 +298,7 @@ int main(int argc, char *argv[])
                 args.options()["toleranceDict"],
                 runTime.constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE
             )
         );
diff --git a/applications/utilities/mesh/manipulation/topoSet/topoSet.C b/applications/utilities/mesh/manipulation/topoSet/topoSet.C
index 6f1c9957e4d1f4b3926a65a05a3a02b2565f94e6..54fd6e0deeafc15ccbbb61e18ecc76d21a16f4e5 100644
--- a/applications/utilities/mesh/manipulation/topoSet/topoSet.C
+++ b/applications/utilities/mesh/manipulation/topoSet/topoSet.C
@@ -83,7 +83,7 @@ int main(int argc, char *argv[])
             (
                 dictPath,
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE
             )
           : IOobject
@@ -91,7 +91,7 @@ int main(int argc, char *argv[])
                 dictName,
                 runTime.system(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE
             )
         ) 
diff --git a/applications/utilities/mesh/manipulation/topoSet/topoSetDict b/applications/utilities/mesh/manipulation/topoSet/topoSetDict
index 40afc5ecb92b10cb5cf5d37db2f0efa459cfe420..334a12b2ce3214e5bcb8b46a03b3b778dc5b41eb 100644
--- a/applications/utilities/mesh/manipulation/topoSet/topoSetDict
+++ b/applications/utilities/mesh/manipulation/topoSet/topoSetDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/miscellaneous/expandDictionary/expandDictionary.C b/applications/utilities/miscellaneous/expandDictionary/expandDictionary.C
index 08e8f29f24d37f67fc95fafbf35a289266341a42..86b1caec440e2548f14983883bbfb971a93ff616 100644
--- a/applications/utilities/miscellaneous/expandDictionary/expandDictionary.C
+++ b/applications/utilities/miscellaneous/expandDictionary/expandDictionary.C
@@ -42,6 +42,12 @@ using namespace Foam;
 
 int main(int argc, char *argv[])
 {
+    argList::addNote
+    (
+        "Read the specified dictionary file, expand the macros etc. and write\n"
+        "the resulting dictionary to standard output."
+    );
+
     argList::noBanner();
     argList::noParallel();
     argList::validArgs.append("inputDict");
@@ -49,9 +55,10 @@ int main(int argc, char *argv[])
 
     const string dictName = args[1];
 
-    Info<<"//\n// expansion of dictionary " << dictName << "\n//\n";
+    IOobject::writeBanner(Info)
+        <<"//\n// " << dictName << "\n//\n";
 
-    dictionary(IFstream(dictName)()).write(Info, false);
+    dictionary(IFstream(dictName)(), true).write(Info, false);
 
     IOobject::writeDivider(Info);
 
diff --git a/applications/utilities/parallelProcessing/decomposePar/decomposePar.C b/applications/utilities/parallelProcessing/decomposePar/decomposePar.C
index b50db4a76ccccb0191a0b4f42898bd6f57d0080d..2009375040dadefa4263cc642b063a73c30530e6 100644
--- a/applications/utilities/parallelProcessing/decomposePar/decomposePar.C
+++ b/applications/utilities/parallelProcessing/decomposePar/decomposePar.C
@@ -64,11 +64,17 @@ Usage
 #include "IOobjectList.H"
 #include "domainDecomposition.H"
 #include "labelIOField.H"
+#include "labelFieldIOField.H"
 #include "scalarIOField.H"
+#include "scalarFieldIOField.H"
 #include "vectorIOField.H"
+#include "vectorFieldIOField.H"
 #include "sphericalTensorIOField.H"
+#include "sphericalTensorFieldIOField.H"
 #include "symmTensorIOField.H"
+#include "symmTensorFieldIOField.H"
 #include "tensorIOField.H"
+#include "tensorFieldIOField.H"
 #include "pointFields.H"
 
 #include "readFields.H"
@@ -163,7 +169,7 @@ int main(int argc, char *argv[])
                 runTime.time().system(),
                 regionDir,          // use region if non-standard
                 runTime,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -374,20 +380,42 @@ int main(int argc, char *argv[])
     PtrList< List<SLList<indexedParticle*>*> > cellParticles(cloudDirs.size());
 
     PtrList<PtrList<labelIOField> > lagrangianLabelFields(cloudDirs.size());
+    PtrList<PtrList<labelIOFieldField> > lagrangianLabelFieldFields
+    (
+        cloudDirs.size()
+    );
     PtrList<PtrList<scalarIOField> > lagrangianScalarFields(cloudDirs.size());
+    PtrList<PtrList<scalarIOFieldField> > lagrangianScalarFieldFields
+    (
+        cloudDirs.size()
+    );
     PtrList<PtrList<vectorIOField> > lagrangianVectorFields(cloudDirs.size());
+    PtrList<PtrList<vectorIOFieldField> > lagrangianVectorFieldFields
+    (
+        cloudDirs.size()
+    );
     PtrList<PtrList<sphericalTensorIOField> > lagrangianSphericalTensorFields
     (
         cloudDirs.size()
     );
+    PtrList<PtrList<sphericalTensorIOFieldField> >
+        lagrangianSphericalTensorFieldFields(cloudDirs.size());
     PtrList<PtrList<symmTensorIOField> > lagrangianSymmTensorFields
     (
         cloudDirs.size()
     );
+    PtrList<PtrList<symmTensorIOFieldField> > lagrangianSymmTensorFieldFields
+    (
+        cloudDirs.size()
+    );
     PtrList<PtrList<tensorIOField> > lagrangianTensorFields
     (
         cloudDirs.size()
     );
+    PtrList<PtrList<tensorIOFieldField> > lagrangianTensorFieldFields
+    (
+        cloudDirs.size()
+    );
 
     label cloudI = 0;
 
@@ -487,6 +515,13 @@ int main(int argc, char *argv[])
                 lagrangianLabelFields
             );
 
+            lagrangianFieldDecomposer::readFieldFields
+            (
+                cloudI,
+                lagrangianObjects,
+                lagrangianLabelFieldFields
+            );
+
             lagrangianFieldDecomposer::readFields
             (
                 cloudI,
@@ -494,6 +529,14 @@ int main(int argc, char *argv[])
                 lagrangianScalarFields
             );
 
+            lagrangianFieldDecomposer::readFieldFields
+            (
+                cloudI,
+                lagrangianObjects,
+                lagrangianScalarFieldFields
+            );
+
+
             lagrangianFieldDecomposer::readFields
             (
                 cloudI,
@@ -501,6 +544,13 @@ int main(int argc, char *argv[])
                 lagrangianVectorFields
             );
 
+            lagrangianFieldDecomposer::readFieldFields
+            (
+                cloudI,
+                lagrangianObjects,
+                lagrangianVectorFieldFields
+            );
+
             lagrangianFieldDecomposer::readFields
             (
                 cloudI,
@@ -508,6 +558,13 @@ int main(int argc, char *argv[])
                 lagrangianSphericalTensorFields
             );
 
+            lagrangianFieldDecomposer::readFieldFields
+            (
+                cloudI,
+                lagrangianObjects,
+                lagrangianSphericalTensorFieldFields
+            );
+
             lagrangianFieldDecomposer::readFields
             (
                 cloudI,
@@ -515,6 +572,13 @@ int main(int argc, char *argv[])
                 lagrangianSymmTensorFields
             );
 
+            lagrangianFieldDecomposer::readFieldFields
+            (
+                cloudI,
+                lagrangianObjects,
+                lagrangianSymmTensorFieldFields
+            );
+
             lagrangianFieldDecomposer::readFields
             (
                 cloudI,
@@ -522,6 +586,13 @@ int main(int argc, char *argv[])
                 lagrangianTensorFields
             );
 
+            lagrangianFieldDecomposer::readFieldFields
+            (
+                cloudI,
+                lagrangianObjects,
+                lagrangianTensorFieldFields
+            );
+
             cloudI++;
         }
     }
@@ -529,11 +600,17 @@ int main(int argc, char *argv[])
     lagrangianPositions.setSize(cloudI);
     cellParticles.setSize(cloudI);
     lagrangianLabelFields.setSize(cloudI);
+    lagrangianLabelFieldFields.setSize(cloudI);
     lagrangianScalarFields.setSize(cloudI);
+    lagrangianScalarFieldFields.setSize(cloudI);
     lagrangianVectorFields.setSize(cloudI);
+    lagrangianVectorFieldFields.setSize(cloudI);
     lagrangianSphericalTensorFields.setSize(cloudI);
+    lagrangianSphericalTensorFieldFields.setSize(cloudI);
     lagrangianSymmTensorFields.setSize(cloudI);
+    lagrangianSymmTensorFieldFields.setSize(cloudI);
     lagrangianTensorFields.setSize(cloudI);
+    lagrangianTensorFieldFields.setSize(cloudI);
 
 
     // Any uniform data to copy/link?
@@ -725,11 +802,17 @@ int main(int argc, char *argv[])
                 if
                 (
                     lagrangianLabelFields[cloudI].size()
+                 || lagrangianLabelFieldFields[cloudI].size()
                  || lagrangianScalarFields[cloudI].size()
+                 || lagrangianScalarFieldFields[cloudI].size()
                  || lagrangianVectorFields[cloudI].size()
+                 || lagrangianVectorFieldFields[cloudI].size()
                  || lagrangianSphericalTensorFields[cloudI].size()
+                 || lagrangianSphericalTensorFieldFields[cloudI].size()
                  || lagrangianSymmTensorFields[cloudI].size()
+                 || lagrangianSymmTensorFieldFields[cloudI].size()
                  || lagrangianTensorFields[cloudI].size()
+                 || lagrangianTensorFieldFields[cloudI].size()
                 )
                 {
                     fieldDecomposer.decomposeFields
@@ -737,31 +820,61 @@ int main(int argc, char *argv[])
                         cloudDirs[cloudI],
                         lagrangianLabelFields[cloudI]
                     );
+                    fieldDecomposer.decomposeFieldFields
+                    (
+                        cloudDirs[cloudI],
+                        lagrangianLabelFieldFields[cloudI]
+                    );
                     fieldDecomposer.decomposeFields
                     (
                         cloudDirs[cloudI],
                         lagrangianScalarFields[cloudI]
                     );
+                    fieldDecomposer.decomposeFieldFields
+                    (
+                        cloudDirs[cloudI],
+                        lagrangianScalarFieldFields[cloudI]
+                    );
                     fieldDecomposer.decomposeFields
                     (
                         cloudDirs[cloudI],
                         lagrangianVectorFields[cloudI]
                     );
+                    fieldDecomposer.decomposeFieldFields
+                    (
+                        cloudDirs[cloudI],
+                        lagrangianVectorFieldFields[cloudI]
+                    );
                     fieldDecomposer.decomposeFields
                     (
                         cloudDirs[cloudI],
                         lagrangianSphericalTensorFields[cloudI]
                     );
+                    fieldDecomposer.decomposeFieldFields
+                    (
+                        cloudDirs[cloudI],
+                        lagrangianSphericalTensorFieldFields[cloudI]
+                    );
                     fieldDecomposer.decomposeFields
                     (
                         cloudDirs[cloudI],
                         lagrangianSymmTensorFields[cloudI]
                     );
+                    fieldDecomposer.decomposeFieldFields
+                    (
+                        cloudDirs[cloudI],
+                        lagrangianSymmTensorFieldFields[cloudI]
+                    );
                     fieldDecomposer.decomposeFields
                     (
                         cloudDirs[cloudI],
                         lagrangianTensorFields[cloudI]
                     );
+                    fieldDecomposer.decomposeFieldFields
+                    (
+                        cloudDirs[cloudI],
+                        lagrangianTensorFieldFields[cloudI]
+                    );
                 }
             }
         }
diff --git a/applications/utilities/parallelProcessing/decomposePar/decomposeParDict b/applications/utilities/parallelProcessing/decomposePar/decomposeParDict
index a183ebd0cb405f1a2af5ec8ae1cbe66366cc4dc1..9a3048369396addc56bd64550031524b96115984 100644
--- a/applications/utilities/parallelProcessing/decomposePar/decomposeParDict
+++ b/applications/utilities/parallelProcessing/decomposePar/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
@@ -17,7 +17,8 @@ FoamFile
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-numberOfSubdomains  4;
+numberOfSubdomains  8;
+
 
 //- Keep owner and neighbour on same processor for faces in zones:
 // preserveFaceZones (heater solid1 solid3);
@@ -33,10 +34,39 @@ method          scotch;
 // method          simple;
 // method          metis;
 // method          manual;
+// method          multiLevel;
+
+multiLevelCoeffs
+{
+    // Decomposition methods to apply in turn. This is like hierarchical but
+    // fully general - every method can be used at every level.
+
+    level0
+    {
+        numberOfSubdomains  2;
+        //method simple;
+        //simpleCoeffs
+        //{
+        //    n           (2 1 1);
+        //    delta       0.001;
+        //}
+        method scotch;
+    }
+    level1
+    {
+        numberOfSubdomains  4;
+        method scotch;
+    }
+}
+
+
+// Desired output
+
+
 
 simpleCoeffs
 {
-    n           (2 2 1);
+    n           (2 1 1);
     delta       0.001;
 }
 
diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C
index 6575c31dd3eb4a3095051b00b3ce4ec23e59170e..16444cd4cdb9da24ad7d89ba8a56f4f7997a19b7 100644
--- a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C
+++ b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C
@@ -94,7 +94,7 @@ Foam::domainDecomposition::domainDecomposition(const IOobject& io)
             "decomposeParDict",
             time().system(),
             *this,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -112,11 +112,7 @@ Foam::domainDecomposition::domainDecomposition(const IOobject& io)
     procProcessorPatchSubPatchIDs_(nProcs_),
     procProcessorPatchSubPatchStarts_(nProcs_)
 {
-    if (decompositionDict_.found("distributed"))
-    {
-        Switch distributed(decompositionDict_.lookup("distributed"));
-        distributed_ = distributed;
-    }
+    decompositionDict_.readIfPresent("distributed", distributed_);
 }
 
 
diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDistribute.C b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDistribute.C
index 6adf0639626bd08a62370060d192ae6e33a1de0d..877395e38d463b2b783d59038513953e7efac1f5 100644
--- a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDistribute.C
+++ b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDistribute.C
@@ -109,13 +109,12 @@ void Foam::domainDecomposition::distributeCells()
 
     autoPtr<decompositionMethod> decomposePtr = decompositionMethod::New
     (
-        decompositionDict_,
-        *this
+        decompositionDict_
     );
 
     if (sameProcFaces.empty())
     {
-        cellToProc_ = decomposePtr().decompose(cellCentres());
+        cellToProc_ = decomposePtr().decompose(*this, cellCentres());
     }
     else
     {
@@ -174,7 +173,12 @@ void Foam::domainDecomposition::distributeCells()
 
         // Do decomposition on agglomeration
         // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-        cellToProc_ = decomposePtr().decompose(globalRegion, regionCentres);
+        cellToProc_ = decomposePtr().decompose
+        (
+            *this,
+            globalRegion,
+            regionCentres
+        );
     }
 
     Info<< "\nFinished decomposition in "
diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C
index 46febf2b44defbf5bddadfe25864065554106bc8..2cc678ce7a84af501e96bf3f61e39cccb229a08d 100644
--- a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C
+++ b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C
@@ -130,7 +130,7 @@ void Foam::domainDecomposition::decomposeMesh()
     procFaceAddressing_.setSize(nProcs_);
 
     // Internal faces
-    forAll (neighbour, facei)
+    forAll(neighbour, facei)
     {
         if (cellToProc_[owner[facei]] == cellToProc_[neighbour[facei]])
         {
@@ -141,16 +141,16 @@ void Foam::domainDecomposition::decomposeMesh()
 
     // for all processors, set the size of start index and patch size
     // lists to the number of patches in the mesh
-    forAll (procPatchSize_, procI)
+    forAll(procPatchSize_, procI)
     {
         procPatchSize_[procI].setSize(patches.size());
         procPatchStartIndex_[procI].setSize(patches.size());
     }
 
-    forAll (patches, patchi)
+    forAll(patches, patchi)
     {
         // Reset size and start index for all processors
-        forAll (procPatchSize_, procI)
+        forAll(procPatchSize_, procI)
         {
             procPatchSize_[procI][patchi] = 0;
             procPatchStartIndex_[procI][patchi] =
@@ -167,7 +167,7 @@ void Foam::domainDecomposition::decomposeMesh()
             const unallocLabelList& patchFaceCells =
                 patches[patchi].faceCells();
 
-            forAll (patchFaceCells, facei)
+            forAll(patchFaceCells, facei)
             {
                 const label curProc = cellToProc_[patchFaceCells[facei]];
 
@@ -190,7 +190,7 @@ void Foam::domainDecomposition::decomposeMesh()
             const unallocLabelList& nbrPatchFaceCells =
                 pp.neighbPatch().faceCells();
 
-            forAll (patchFaceCells, facei)
+            forAll(patchFaceCells, facei)
             {
                 const label curProc = cellToProc_[patchFaceCells[facei]];
                 const label nbrProc = cellToProc_[nbrPatchFaceCells[facei]];
@@ -216,7 +216,7 @@ void Foam::domainDecomposition::decomposeMesh()
     List<DynamicList<DynamicList<label> > > interPatchFaces(nProcs_);
 
     // Processor boundaries from internal faces
-    forAll (neighbour, facei)
+    forAll(neighbour, facei)
     {
         label ownerProc = cellToProc_[owner[facei]];
         label nbrProc = cellToProc_[neighbour[facei]];
@@ -249,7 +249,7 @@ void Foam::domainDecomposition::decomposeMesh()
     }
 
     // Processor boundaries from split cyclics
-    forAll (patches, patchi)
+    forAll(patches, patchi)
     {
         if (isA<cyclicPolyPatch>(patches[patchi]))
         {
@@ -279,7 +279,7 @@ void Foam::domainDecomposition::decomposeMesh()
             }
 
             // Add faces with different owner and neighbour processors
-            forAll (patchFaceCells, facei)
+            forAll(patchFaceCells, facei)
             {
                 const label ownerProc = cellToProc_[patchFaceCells[facei]];
                 const label nbrProc = cellToProc_[nbrPatchFaceCells[facei]];
diff --git a/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposer.H b/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposer.H
index 52b2c235031ab73d0a2b2a350fc8c6cc61c9a66f..43d2b1645c08877c8d520e338fa027abef03db5a 100644
--- a/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposer.H
+++ b/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposer.H
@@ -37,6 +37,7 @@ SourceFiles
 #define lagrangianFieldDecomposer_H
 
 #include "Cloud.H"
+#include "IOFieldField.H"
 #include "indexedParticle.H"
 #include "passiveParticle.H"
 
@@ -102,6 +103,19 @@ public:
 //            PtrList<IOField<Type> >& lagrangianFields
         );
 
+        template<class Type>
+        static void readFieldFields
+        (
+            const label cloudI,
+            const IOobjectList& lagrangianObjects,
+            PtrList
+            <
+                PtrList<IOFieldField<Field<Type>, Type> >
+            >& lagrangianFields
+//            PtrList<IOFieldField<Field<Type>, Type > >& lagrangianFields
+        );
+
+
         //- Decompose volume field
         template<class Type>
         tmp<IOField<Type> > decomposeField
@@ -110,12 +124,27 @@ public:
             const IOField<Type>& field
         ) const;
 
+        template<class Type>
+        tmp<IOFieldField<Field<Type>, Type> > decomposeFieldField
+        (
+            const word& cloudName,
+            const IOFieldField<Field<Type>, Type>& field
+        ) const;
+
+
         template<class GeoField>
         void decomposeFields
         (
             const word& cloudName,
             const PtrList<GeoField>& fields
         ) const;
+
+        template<class GeoField>
+        void decomposeFieldFields
+        (
+            const word& cloudName,
+            const PtrList<GeoField>& fields
+        ) const;
 };
 
 
diff --git a/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposerDecomposeFields.C b/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposerDecomposeFields.C
index 172be9c3c026a4bbd724af41744dee3fa9ca3bf1..e479057d7c75de1292521cf6e5439d0ea2e909e4 100644
--- a/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposerDecomposeFields.C
+++ b/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposerDecomposeFields.C
@@ -63,6 +63,56 @@ void Foam::lagrangianFieldDecomposer::readFields
 }
 
 
+template<class Type>
+void Foam::lagrangianFieldDecomposer::readFieldFields
+(
+    const label cloudI,
+    const IOobjectList& lagrangianObjects,
+    PtrList<PtrList<IOFieldField<Field<Type>, Type> > >& lagrangianFields
+)
+{
+    // Search list of objects for lagrangian fields
+    IOobjectList lagrangianTypeObjectsA
+    (
+        lagrangianObjects.lookupClass(IOField<Field<Type> >::typeName)
+    );
+
+    IOobjectList lagrangianTypeObjectsB
+    (
+        lagrangianObjects.lookupClass(IOFieldField<Field<Type>, Type>::typeName)
+    );
+
+    lagrangianFields.set
+    (
+        cloudI,
+        new PtrList<IOFieldField<Field<Type>, Type> >
+        (
+            lagrangianTypeObjectsA.size() + lagrangianTypeObjectsB.size()
+        )
+    );
+
+    label lagrangianFieldi=0;
+
+    forAllIter(IOobjectList, lagrangianTypeObjectsA, iter)
+    {
+        lagrangianFields[cloudI].set
+        (
+            lagrangianFieldi++,
+            new IOFieldField<Field<Type>, Type>(*iter())
+        );
+    }
+
+    forAllIter(IOobjectList, lagrangianTypeObjectsB, iter)
+    {
+        lagrangianFields[cloudI].set
+        (
+            lagrangianFieldi++,
+            new IOFieldField<Field<Type>, Type>(*iter())
+        );
+    }
+}
+
+
 template<class Type>
 Foam::tmp<Foam::IOField<Type> >
 Foam::lagrangianFieldDecomposer::decomposeField
@@ -94,6 +144,37 @@ Foam::lagrangianFieldDecomposer::decomposeField
 }
 
 
+template<class Type>
+Foam::tmp<Foam::IOFieldField<Foam::Field<Type>, Type> >
+Foam::lagrangianFieldDecomposer::decomposeFieldField
+(
+    const word& cloudName,
+    const IOFieldField<Field<Type>, Type>& field
+) const
+{
+    // Create and map the internal field values
+    Field<Field<Type> > procField(field, particleIndices_);
+
+    // Create the field for the processor
+    return tmp<IOFieldField<Field<Type>, Type> >
+    (
+        new IOFieldField<Field<Type>, Type>
+        (
+            IOobject
+            (
+                field.name(),
+                procMesh_.time().timeName(),
+                cloud::prefix/cloudName,
+                procMesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            procField
+        )
+    );
+}
+
+
 template<class GeoField>
 void Foam::lagrangianFieldDecomposer::decomposeFields
 (
@@ -111,4 +192,21 @@ void Foam::lagrangianFieldDecomposer::decomposeFields
 }
 
 
+template<class GeoField>
+void Foam::lagrangianFieldDecomposer::decomposeFieldFields
+(
+    const word& cloudName,
+    const PtrList<GeoField>& fields
+) const
+{
+    if (particleIndices_.size())
+    {
+        forAll(fields, fieldI)
+        {
+            decomposeFieldField(cloudName, fields[fieldI])().write();
+        }
+    }
+}
+
+
 // ************************************************************************* //
diff --git a/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C b/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C
index 3a3b64b13bbc7f6c4c8def67780f953de173b3f7..3734296f512df53d48d101a97aefa8cc484e51aa 100644
--- a/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C
+++ b/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C
@@ -402,6 +402,13 @@ int main(int argc, char *argv[])
                         procMeshes.meshes(),
                         sprayObjs
                     );
+                    reconstructLagrangianFieldFields<label>
+                    (
+                        cloudName,
+                        mesh,
+                        procMeshes.meshes(),
+                        sprayObjs
+                    );
                     reconstructLagrangianFields<scalar>
                     (
                         cloudName,
@@ -409,6 +416,13 @@ int main(int argc, char *argv[])
                         procMeshes.meshes(),
                         sprayObjs
                     );
+                    reconstructLagrangianFieldFields<scalar>
+                    (
+                        cloudName,
+                        mesh,
+                        procMeshes.meshes(),
+                        sprayObjs
+                    );
                     reconstructLagrangianFields<vector>
                     (
                         cloudName,
@@ -416,6 +430,13 @@ int main(int argc, char *argv[])
                         procMeshes.meshes(),
                         sprayObjs
                     );
+                    reconstructLagrangianFieldFields<vector>
+                    (
+                        cloudName,
+                        mesh,
+                        procMeshes.meshes(),
+                        sprayObjs
+                    );
                     reconstructLagrangianFields<sphericalTensor>
                     (
                         cloudName,
@@ -423,6 +444,13 @@ int main(int argc, char *argv[])
                         procMeshes.meshes(),
                         sprayObjs
                     );
+                    reconstructLagrangianFieldFields<sphericalTensor>
+                    (
+                        cloudName,
+                        mesh,
+                        procMeshes.meshes(),
+                        sprayObjs
+                    );
                     reconstructLagrangianFields<symmTensor>
                     (
                         cloudName,
@@ -430,6 +458,13 @@ int main(int argc, char *argv[])
                         procMeshes.meshes(),
                         sprayObjs
                     );
+                    reconstructLagrangianFieldFields<symmTensor>
+                    (
+                        cloudName,
+                        mesh,
+                        procMeshes.meshes(),
+                        sprayObjs
+                    );
                     reconstructLagrangianFields<tensor>
                     (
                         cloudName,
@@ -437,6 +472,13 @@ int main(int argc, char *argv[])
                         procMeshes.meshes(),
                         sprayObjs
                     );
+                    reconstructLagrangianFieldFields<tensor>
+                    (
+                        cloudName,
+                        mesh,
+                        procMeshes.meshes(),
+                        sprayObjs
+                    );
                 }
             }
             else
diff --git a/applications/utilities/parallelProcessing/redistributeMeshPar/redistributeMeshPar.C b/applications/utilities/parallelProcessing/redistributeMeshPar/redistributeMeshPar.C
index c3a2003d40bc1864654e4d07a560ffd932ec9e41..173d6314dfdd377e5dda0e3048468419b81130ab 100644
--- a/applications/utilities/parallelProcessing/redistributeMeshPar/redistributeMeshPar.C
+++ b/applications/utilities/parallelProcessing/redistributeMeshPar/redistributeMeshPar.C
@@ -581,7 +581,7 @@ int main(int argc, char *argv[])
             "decomposeParDict",
             runTime.system(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
@@ -594,8 +594,7 @@ int main(int argc, char *argv[])
         (
             decompositionMethod::New
             (
-                decompositionDict,
-                mesh
+                decompositionDict
             )
         );
 
@@ -612,7 +611,7 @@ int main(int argc, char *argv[])
                 << endl;
         }
 
-        finalDecomp = decomposer().decompose(mesh.cellCentres());
+        finalDecomp = decomposer().decompose(mesh, mesh.cellCentres());
     }
 
     // Dump decomposition to volScalarField
diff --git a/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluent.C b/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluent.C
index d469054ca311380efba1d5ef8e96c09245715124..35f6544f4d15e9f7b504df9bf8c040f10fa4a007 100644
--- a/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluent.C
+++ b/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluent.C
@@ -94,7 +94,7 @@ int main(int argc, char *argv[])
                 "foamDataToFluentDict",
                 runTime.system(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE
             )
         );
diff --git a/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluentDict b/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluentDict
index da3b4fef6efe82239976713692a2404ec9464362..455a58afcbd6027612a0d89a2f9de263b614ae05 100644
--- a/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluentDict
+++ b/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluentDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsightParts/getTimeIndex.H b/applications/utilities/postProcessing/dataConversion/foamToEnsightParts/getTimeIndex.H
index ecf12f8b1373f9debc0759b99c4e0625004c9284..491ada9a43d9c628d295b70555ccec2c2dee0d84 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToEnsightParts/getTimeIndex.H
+++ b/applications/utilities/postProcessing/dataConversion/foamToEnsightParts/getTimeIndex.H
@@ -26,7 +26,7 @@
 
         if (io.headerOk())
         {
-            io.readOpt() = IOobject::MUST_READ;
+            io.readOpt() = IOobject::MUST_READ_IF_MODIFIED;
             IOdictionary timeObject(io);
 
             timeObject.lookup("index") >> timeIndex;
diff --git a/applications/utilities/postProcessing/dataConversion/foamToGMV/readConversionProperties.H b/applications/utilities/postProcessing/dataConversion/foamToGMV/readConversionProperties.H
index b19e03ab1981b4ecb5f615411c306fcb8d081ff3..60b547dfd2c904eedf5221271c33953c3ecd8c16 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToGMV/readConversionProperties.H
+++ b/applications/utilities/postProcessing/dataConversion/foamToGMV/readConversionProperties.H
@@ -5,7 +5,7 @@ IOdictionary conversionProperties
         "conversionProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE
     )
 );
diff --git a/applications/utilities/postProcessing/dataConversion/foamToVTK/writeFuns.C b/applications/utilities/postProcessing/dataConversion/foamToVTK/writeFuns.C
index 7180c86f3d4065b0bb6b8b645d6ee544252ca4e8..e2d10be7826838daf8bd48f423c091214fe6e76b 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToVTK/writeFuns.C
+++ b/applications/utilities/postProcessing/dataConversion/foamToVTK/writeFuns.C
@@ -261,10 +261,12 @@ void Foam::writeFuns::insert
     DynamicList<floatScalar>& dest
 )
 {
-    for (direction cmpt = 0; cmpt < symmTensor::nComponents; ++cmpt)
-    {
-        dest.append(float(src[cmpt]));
-    }
+    dest.append(float(src.xx()));
+    dest.append(float(src.yy()));
+    dest.append(float(src.zz()));
+    dest.append(float(src.xy()));
+    dest.append(float(src.yz()));
+    dest.append(float(src.xz()));
 }
 
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.C b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.C
index a7483a210c0e735b6c37edb56842588c1c789786..d11d2ae5babdebf68b2a1f26903d0653eda63629 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.C
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.C
@@ -315,7 +315,7 @@ void Foam::vtkPV3blockMesh::updateFoamMesh()
                 dbPtr_().constant(),
                 polyMesh::meshSubDir,
                 dbPtr_(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/applications/utilities/postProcessing/lagrangian/particleTracks/createFields.H b/applications/utilities/postProcessing/lagrangian/particleTracks/createFields.H
index 61c126e492a51ed4773ad6009bba9d04ce0a4884..d7ede226bf7d4ea71bb583ba82fb2c0c5f15098a 100644
--- a/applications/utilities/postProcessing/lagrangian/particleTracks/createFields.H
+++ b/applications/utilities/postProcessing/lagrangian/particleTracks/createFields.H
@@ -5,7 +5,7 @@ IOdictionary propsDict
         "particleTrackProperties",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ
+        IOobject::MUST_READ_IF_MODIFIED
     )
 );
 
diff --git a/applications/utilities/postProcessing/miscellaneous/execFlowFunctionObjects/execFlowFunctionObjects.C b/applications/utilities/postProcessing/miscellaneous/execFlowFunctionObjects/execFlowFunctionObjects.C
index 898586158204c66e50f3a6e837fc9a63c0495af6..ccc1ec294843ff4417c88cebae9ecbbed7695779 100644
--- a/applications/utilities/postProcessing/miscellaneous/execFlowFunctionObjects/execFlowFunctionObjects.C
+++ b/applications/utilities/postProcessing/miscellaneous/execFlowFunctionObjects/execFlowFunctionObjects.C
@@ -62,7 +62,7 @@ namespace Foam
                     args["dict"],
                     runTime.system(),
                     runTime,
-                    IOobject::MUST_READ
+                    IOobject::MUST_READ_IF_MODIFIED
                 )
             );
 
@@ -130,7 +130,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
             "RASProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         );
@@ -140,7 +140,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
             "LESProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         );
@@ -184,7 +184,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
                     "transportProperties",
                     runTime.constant(),
                     mesh,
-                    IOobject::MUST_READ,
+                    IOobject::MUST_READ_IF_MODIFIED,
                     IOobject::NO_WRITE
                 )
             );
@@ -214,7 +214,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
             "RASProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         );
@@ -224,7 +224,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
             "LESProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         );
@@ -266,7 +266,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
                     "transportProperties",
                     runTime.constant(),
                     mesh,
-                    IOobject::MUST_READ,
+                    IOobject::MUST_READ_IF_MODIFIED,
                     IOobject::NO_WRITE
                 )
             );
diff --git a/applications/utilities/postProcessing/miscellaneous/pdfPlot/createFields.H b/applications/utilities/postProcessing/miscellaneous/pdfPlot/createFields.H
index ddb1f663ad79da9a30b417ab6ff79315850e05ba..d7501086542d522d83f95746554f7cae71e2971d 100644
--- a/applications/utilities/postProcessing/miscellaneous/pdfPlot/createFields.H
+++ b/applications/utilities/postProcessing/miscellaneous/pdfPlot/createFields.H
@@ -5,7 +5,7 @@
             "pdfDict",
             runTime.constant(),
             runTime,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfDict b/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfDict
index d236d5ea8b32b3db2fa87e4dab7ad15fbcb1749c..a6df8ead18c764461d3c5c9e303ecd9496c48c1e 100644
--- a/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfDict
+++ b/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/postProcessing/miscellaneous/postChannel/postChannel.C b/applications/utilities/postProcessing/miscellaneous/postChannel/postChannel.C
index 8c9cb5871722cc42a325fdc82fac6a57d6734c56..7d71845adb898ddd9411ea085f77e6642a5aaec7 100644
--- a/applications/utilities/postProcessing/miscellaneous/postChannel/postChannel.C
+++ b/applications/utilities/postProcessing/miscellaneous/postChannel/postChannel.C
@@ -69,7 +69,7 @@ int main(int argc, char *argv[])
             "postChannelDict",
             mesh.time().constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/postProcessing/miscellaneous/postChannel/postChannelDict b/applications/utilities/postProcessing/miscellaneous/postChannel/postChannelDict
index 37739bb8590ad181f83f6d7e9b40a4e24681d2ef..c19349de64c2e7cafc4579e44a03c7c6214ab8f3 100644
--- a/applications/utilities/postProcessing/miscellaneous/postChannel/postChannelDict
+++ b/applications/utilities/postProcessing/miscellaneous/postChannel/postChannelDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/postProcessing/miscellaneous/postChannel/readTransportProperties.H b/applications/utilities/postProcessing/miscellaneous/postChannel/readTransportProperties.H
index 1e4bdd42928b859ca367e3420a7905e0bc0aa303..cef26f6c352803ff9d068a26566607c25868c1be 100644
--- a/applications/utilities/postProcessing/miscellaneous/postChannel/readTransportProperties.H
+++ b/applications/utilities/postProcessing/miscellaneous/postChannel/readTransportProperties.H
@@ -7,7 +7,7 @@
             "transportProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/postProcessing/sampling/probeLocations/probesDict b/applications/utilities/postProcessing/sampling/probeLocations/probesDict
index 3f7679f0dedd0316db3bb3d610209b06bc77370f..835ca7a2fb5ea7800322bf06df53bc7d6b859658 100644
--- a/applications/utilities/postProcessing/sampling/probeLocations/probesDict
+++ b/applications/utilities/postProcessing/sampling/probeLocations/probesDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM  1.4.1                                          |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version         2.0;
diff --git a/applications/utilities/postProcessing/sampling/sample/sampleDict b/applications/utilities/postProcessing/sampling/sample/sampleDict
index e892508a92d779fc78865584a83f1049c4b02cbb..bc25120382f8001578b948a59125b72a4d0b8073 100644
--- a/applications/utilities/postProcessing/sampling/sample/sampleDict
+++ b/applications/utilities/postProcessing/sampling/sample/sampleDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
@@ -132,7 +132,7 @@ surfaces
         normalVector    (0.1 0.1 1);
 
         //- Optional: restrict to a particular zone
-        // zoneName        zone1;
+        // zone        zone1;
     }
 
     interpolatedPlane
diff --git a/applications/utilities/postProcessing/velocityField/Mach/Mach.C b/applications/utilities/postProcessing/velocityField/Mach/Mach.C
index 53bd1a24880b96271ab57b24ab7a92ff00da2e8b..391eee52374032b54be2335e1c7da5636a12b09c 100644
--- a/applications/utilities/postProcessing/velocityField/Mach/Mach.C
+++ b/applications/utilities/postProcessing/velocityField/Mach/Mach.C
@@ -98,7 +98,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
                     "thermodynamicProperties",
                     runTime.constant(),
                     mesh,
-                    IOobject::MUST_READ,
+                    IOobject::MUST_READ_IF_MODIFIED,
                     IOobject::NO_WRITE
                 )
             );
diff --git a/applications/utilities/postProcessing/velocityField/Mach/readThermodynamicProperties.H b/applications/utilities/postProcessing/velocityField/Mach/readThermodynamicProperties.H
index 1fc57fc5fdc6ef0a6d8d232922fa06f124314a3a..4e19adaae48e5d432cde086746bd2472899eab33 100644
--- a/applications/utilities/postProcessing/velocityField/Mach/readThermodynamicProperties.H
+++ b/applications/utilities/postProcessing/velocityField/Mach/readThermodynamicProperties.H
@@ -7,7 +7,7 @@
             "thermodynamicProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/postProcessing/velocityField/Pe/Pe.C b/applications/utilities/postProcessing/velocityField/Pe/Pe.C
index a94f474d110e90a2f7c38fc8b09e8a09064f50e6..8e26d3f33aac0b6809bec9d9008947a721a94a73 100644
--- a/applications/utilities/postProcessing/velocityField/Pe/Pe.C
+++ b/applications/utilities/postProcessing/velocityField/Pe/Pe.C
@@ -81,7 +81,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
             "RASProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         );
 
@@ -90,7 +90,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
             "LESProperties",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         );
 
@@ -174,7 +174,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
                         "transportProperties",
                         runTime.constant(),
                         mesh,
-                        IOobject::MUST_READ,
+                        IOobject::MUST_READ_IF_MODIFIED,
                         IOobject::NO_WRITE
                     )
                 );
@@ -299,7 +299,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
                         "transportProperties",
                         runTime.constant(),
                         mesh,
-                        IOobject::MUST_READ,
+                        IOobject::MUST_READ_IF_MODIFIED,
                         IOobject::NO_WRITE
                     )
                 );
diff --git a/applications/utilities/preProcessing/boxTurb/readBoxTurbDict.H b/applications/utilities/preProcessing/boxTurb/readBoxTurbDict.H
index 60063b9d2248ed9501c1c9f678e9cf232a7d60ca..bcf5625a07c1d38d41d2140735288b79c8e14af9 100644
--- a/applications/utilities/preProcessing/boxTurb/readBoxTurbDict.H
+++ b/applications/utilities/preProcessing/boxTurb/readBoxTurbDict.H
@@ -7,7 +7,7 @@
             "boxTurbDict",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/preProcessing/changeDictionary/changeDictionary.C b/applications/utilities/preProcessing/changeDictionary/changeDictionary.C
index 69a201e5587301b0e97712e0f7e0ca020851b690..e917feaa708a98ac31a5e1a98c606fa2760fe67a 100644
--- a/applications/utilities/preProcessing/changeDictionary/changeDictionary.C
+++ b/applications/utilities/preProcessing/changeDictionary/changeDictionary.C
@@ -292,7 +292,7 @@ int main(int argc, char *argv[])
             "changeDictionaryDict",
             runTime.system(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
@@ -405,7 +405,7 @@ int main(int argc, char *argv[])
                     fieldName,
                     instance,
                     mesh,
-                    IOobject::MUST_READ,
+                    IOobject::MUST_READ_IF_MODIFIED,
                     IOobject::NO_WRITE,
                     false
                 )
diff --git a/applications/utilities/preProcessing/changeDictionary/changeDictionaryDict b/applications/utilities/preProcessing/changeDictionary/changeDictionaryDict
index 164641cc1d02cdf1615128cc8feea6f0fc4223bb..20b92e066d0270bfdbff0dd9842abb2d04872324 100644
--- a/applications/utilities/preProcessing/changeDictionary/changeDictionaryDict
+++ b/applications/utilities/preProcessing/changeDictionary/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/preProcessing/dsmcInitialise/dsmcInitialise.C b/applications/utilities/preProcessing/dsmcInitialise/dsmcInitialise.C
index d779a6427d3d864fec5486755e63fae1d3c6387f..edd7d7e752138e81ac606f287dfc0124f4adb7d4 100644
--- a/applications/utilities/preProcessing/dsmcInitialise/dsmcInitialise.C
+++ b/applications/utilities/preProcessing/dsmcInitialise/dsmcInitialise.C
@@ -50,7 +50,7 @@ int main(int argc, char *argv[])
             "dsmcInitialiseDict",
             mesh.time().system(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/preProcessing/engineSwirl/createFields.H b/applications/utilities/preProcessing/engineSwirl/createFields.H
index 596273a9bdc520c357e1d0dd2822a428ea0c88c6..11975d3717f15819ae506f9866f1bdf7e77b2405 100644
--- a/applications/utilities/preProcessing/engineSwirl/createFields.H
+++ b/applications/utilities/preProcessing/engineSwirl/createFields.H
@@ -7,7 +7,7 @@ IOdictionary engineGeometry
         "engineGeometry",
         runTime.constant(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE
     )
 );
diff --git a/applications/utilities/preProcessing/foamUpgradeCyclics/foamUpgradeCyclics.C b/applications/utilities/preProcessing/foamUpgradeCyclics/foamUpgradeCyclics.C
index f499ab5030ad431cd2fb96746f8c15fc0279ca3b..e615ebe210d49ea877f98a26eeb8f77c8cacc75a 100644
--- a/applications/utilities/preProcessing/foamUpgradeCyclics/foamUpgradeCyclics.C
+++ b/applications/utilities/preProcessing/foamUpgradeCyclics/foamUpgradeCyclics.C
@@ -278,7 +278,7 @@ void rewriteField
             fieldName,
             runTime.timeName(),
             runTime,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/applications/utilities/preProcessing/foamUpgradeFvSolution/foamUpgradeFvSolution.C b/applications/utilities/preProcessing/foamUpgradeFvSolution/foamUpgradeFvSolution.C
index 0cdf0cbe7755184df383ded8e15fdfddf5b92a9f..202ebad86d7655cc94826dded54dc40961abf7dc 100644
--- a/applications/utilities/preProcessing/foamUpgradeFvSolution/foamUpgradeFvSolution.C
+++ b/applications/utilities/preProcessing/foamUpgradeFvSolution/foamUpgradeFvSolution.C
@@ -70,7 +70,7 @@ int main(int argc, char *argv[])
             "fvSolution",
             runTime.system(),
             runTime,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/applications/utilities/preProcessing/mapFields/mapFields.C b/applications/utilities/preProcessing/mapFields/mapFields.C
index 72dae9f8389fd6829333772e078bd63225d97def..0eabfe6d3cb5b4535ff3e17c0836524010a84460 100644
--- a/applications/utilities/preProcessing/mapFields/mapFields.C
+++ b/applications/utilities/preProcessing/mapFields/mapFields.C
@@ -291,7 +291,7 @@ int main(int argc, char *argv[])
                 "mapFieldsDict",
                 runTimeTarget.system(),
                 runTimeTarget,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -310,7 +310,7 @@ int main(int argc, char *argv[])
                 "decomposeParDict",
                 runTimeSource.system(),
                 runTimeSource,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE
             )
         );
@@ -375,7 +375,7 @@ int main(int argc, char *argv[])
                 "decomposeParDict",
                 runTimeTarget.system(),
                 runTimeTarget,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE
             )
         );
@@ -446,7 +446,7 @@ int main(int argc, char *argv[])
                 "decomposeParDict",
                 runTimeSource.system(),
                 runTimeSource,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE
             )
         );
@@ -464,7 +464,7 @@ int main(int argc, char *argv[])
                 "decomposeParDict",
                 runTimeTarget.system(),
                 runTimeTarget,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE
             )
         );
diff --git a/applications/utilities/preProcessing/mapFields/mapFieldsDict b/applications/utilities/preProcessing/mapFields/mapFieldsDict
index f2d360247219e6a3b57cc85b5f45e814e0fcbda1..af5db49b83250ad9373b0375f3301081307814b8 100644
--- a/applications/utilities/preProcessing/mapFields/mapFieldsDict
+++ b/applications/utilities/preProcessing/mapFields/mapFieldsDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/preProcessing/mdInitialise/mdInitialise.C b/applications/utilities/preProcessing/mdInitialise/mdInitialise.C
index 6e329a271f7ab1f7f3f968737b3e7cab1b6a95bd..abefc1a0b2bb6fc8d24e5826bf347a48acc9c261 100644
--- a/applications/utilities/preProcessing/mdInitialise/mdInitialise.C
+++ b/applications/utilities/preProcessing/mdInitialise/mdInitialise.C
@@ -44,7 +44,7 @@ int main(int argc, char *argv[])
             "mdInitialiseDict",
             runTime.system(),
             runTime,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/applications/utilities/preProcessing/setFields/setFields.C b/applications/utilities/preProcessing/setFields/setFields.C
index b3cbd8c8bcca2ae2f5834421198e8f73c74193f4..6676403d53e5e472bf7413b42a879a9ae64cfbc7 100644
--- a/applications/utilities/preProcessing/setFields/setFields.C
+++ b/applications/utilities/preProcessing/setFields/setFields.C
@@ -186,7 +186,7 @@ int main(int argc, char *argv[])
             "setFieldsDict",
             runTime.system(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/preProcessing/setFields/setFieldsDict b/applications/utilities/preProcessing/setFields/setFieldsDict
index af1bf618453e976f68b0350c8ede723810b0f7e1..58a745dac155a0deefb0f6da5f5a5523e7ce50a4 100644
--- a/applications/utilities/preProcessing/setFields/setFieldsDict
+++ b/applications/utilities/preProcessing/setFields/setFieldsDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/preProcessing/wallFunctionTable/wallFunctionTableApp.C b/applications/utilities/preProcessing/wallFunctionTable/wallFunctionTableApp.C
index 9c5b70c96808601fa4bc5e922378ba1982fa4047..8f9e755d45a96ebd0e796c9e143757a075291f8b 100644
--- a/applications/utilities/preProcessing/wallFunctionTable/wallFunctionTableApp.C
+++ b/applications/utilities/preProcessing/wallFunctionTable/wallFunctionTableApp.C
@@ -47,7 +47,7 @@ int main(int argc, char *argv[])
             "wallFunctionDict",
             runTime.constant(),
             mesh,
-            IOobject::MUST_READ
+            IOobject::MUST_READ_IF_MODIFIED
         )
     );
 
diff --git a/applications/utilities/surface/surfaceMeshConvert/coordinateSystems b/applications/utilities/surface/surfaceMeshConvert/coordinateSystems
index 0ce72e67bc2cf6af42ce1b67b52355378225f733..7ea094c1f4071b5eca64b10bcf01520ee84c8faf 100644
--- a/applications/utilities/surface/surfaceMeshConvert/coordinateSystems
+++ b/applications/utilities/surface/surfaceMeshConvert/coordinateSystems
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/surface/surfaceMeshExport/surfaceMeshExport.C b/applications/utilities/surface/surfaceMeshExport/surfaceMeshExport.C
index dda71c3565a0c6f4535efb67deea12da35429944..3995031b536018caeb6e3a1e6c4e9e73eb281c32 100644
--- a/applications/utilities/surface/surfaceMeshExport/surfaceMeshExport.C
+++ b/applications/utilities/surface/surfaceMeshExport/surfaceMeshExport.C
@@ -241,7 +241,7 @@ int main(int argc, char *argv[])
             importName,
             runTime.constant(),
             runTime,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/applications/utilities/surface/surfaceSubset/surfaceSubset.C b/applications/utilities/surface/surfaceSubset/surfaceSubset.C
index 3246358d9b712c7998a5a6d83d9380c616fc745a..51255242ef908dd0e52d04bc72e579c17a0ee2ad 100644
--- a/applications/utilities/surface/surfaceSubset/surfaceSubset.C
+++ b/applications/utilities/surface/surfaceSubset/surfaceSubset.C
@@ -102,7 +102,7 @@ int main(int argc, char *argv[])
     );
 
     const bool invertSelection =
-        meshSubsetDict.lookupOrDefault<bool>("invertSelection", false);
+        meshSubsetDict.lookupOrDefault("invertSelection", false);
 
     // Mark the cells for the subset
 
diff --git a/applications/utilities/surface/surfaceSubset/surfaceSubsetDict b/applications/utilities/surface/surfaceSubset/surfaceSubsetDict
index f956a24789a05df748677a39fdac889ef1a603ad..ede8e0658dcb344aaacc3f036c004baa0e2f2403 100644
--- a/applications/utilities/surface/surfaceSubset/surfaceSubsetDict
+++ b/applications/utilities/surface/surfaceSubset/surfaceSubsetDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/thermophysical/adiabaticFlameT/Hydrogen.log b/applications/utilities/thermophysical/adiabaticFlameT/Hydrogen.log
index cd2ea615d4d6bbd72e7fe4ad197708e6792f164d..2e4d05dd35104e07e8aa7b9f295d65b4b4bb4a5c 100644
--- a/applications/utilities/thermophysical/adiabaticFlameT/Hydrogen.log
+++ b/applications/utilities/thermophysical/adiabaticFlameT/Hydrogen.log
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 Exec   : adiabaticFlameT -case . controlDict
diff --git a/applications/utilities/thermophysical/adiabaticFlameT/Methane.log b/applications/utilities/thermophysical/adiabaticFlameT/Methane.log
index 1e65197392d1240bd5030b4aa93ba353812f118e..93a5fb01eb0879acc4fd03027427cce539f55147 100644
--- a/applications/utilities/thermophysical/adiabaticFlameT/Methane.log
+++ b/applications/utilities/thermophysical/adiabaticFlameT/Methane.log
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 Exec   : adiabaticFlameT -case . controlDict
diff --git a/applications/utilities/thermophysical/adiabaticFlameT/Propane.log b/applications/utilities/thermophysical/adiabaticFlameT/Propane.log
index 45e2b912f619fb7698fdb2fc07935360cd2d0e32..a4fdd46fa169be876e9e9efd85efec42835aca81 100644
--- a/applications/utilities/thermophysical/adiabaticFlameT/Propane.log
+++ b/applications/utilities/thermophysical/adiabaticFlameT/Propane.log
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 Exec   : adiabaticFlameT -case . controlDict
diff --git a/applications/utilities/thermophysical/adiabaticFlameT/controlDict b/applications/utilities/thermophysical/adiabaticFlameT/controlDict
index 289c9733818956fd9793529facf9751c4f153199..8663ce69f539325225f3fb0e9d942153702af049 100644
--- a/applications/utilities/thermophysical/adiabaticFlameT/controlDict
+++ b/applications/utilities/thermophysical/adiabaticFlameT/controlDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/applications/utilities/thermophysical/equilibriumCO/equilibriumCO.C b/applications/utilities/thermophysical/equilibriumCO/equilibriumCO.C
index c9c02d199b4c5e5685a3cddba0ceb31234f471ca..7a0c9baae3784a94640d574e1ebe36ddfe5c9c44 100644
--- a/applications/utilities/thermophysical/equilibriumCO/equilibriumCO.C
+++ b/applications/utilities/thermophysical/equilibriumCO/equilibriumCO.C
@@ -62,7 +62,7 @@ int main(int argc, char *argv[])
             "BurcatCpData",
             runTime.constant(),
             runTime,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/applications/utilities/thermophysical/equilibriumFlameT/Hydrogen.log b/applications/utilities/thermophysical/equilibriumFlameT/Hydrogen.log
index 20f74642e85b2bcc56017f880446fadd37d51c4b..32c6070c77f1db36093ce115dacbbe7ac9d5db8d 100644
--- a/applications/utilities/thermophysical/equilibriumFlameT/Hydrogen.log
+++ b/applications/utilities/thermophysical/equilibriumFlameT/Hydrogen.log
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 Exec   : equilibriumFlameT -case . controlDict
diff --git a/applications/utilities/thermophysical/equilibriumFlameT/controlDict b/applications/utilities/thermophysical/equilibriumFlameT/controlDict
index 666313208bb1819313bf18c973303d71e246920e..88ddd86d3ae0db17d1dcc908bcc6756665b59848 100644
--- a/applications/utilities/thermophysical/equilibriumFlameT/controlDict
+++ b/applications/utilities/thermophysical/equilibriumFlameT/controlDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/bin/org-pdflatex b/bin/org-pdflatex
new file mode 120000
index 0000000000000000000000000000000000000000..b7b47c1517b6be7fdece72e26afdb9c7edee3696
--- /dev/null
+++ b/bin/org-pdflatex
@@ -0,0 +1 @@
+tools/org-batch
\ No newline at end of file
diff --git a/bin/paraFoam b/bin/paraFoam
index 0efcfec95b53557ad0769edc3e59a9c2324fa9d7..4e2a120fc99ea145096b2d978284d66ca718c3fc 100755
--- a/bin/paraFoam
+++ b/bin/paraFoam
@@ -52,6 +52,10 @@ USAGE
     exit 1
 }
 
+# We want to do nice exit when running paraview to give paraview opportunity
+# to clean up
+unset FOAM_ABORT
+
 unset regionName touchOpt
 
 # reader extension
diff --git a/bin/tools/org-batch b/bin/tools/org-batch
index 90b60f0464b33fc802d4869abaf01bda3a099436..ae97370dbd08b104647a3e4358c56370ca2dfa67 100755
--- a/bin/tools/org-batch
+++ b/bin/tools/org-batch
@@ -37,8 +37,9 @@ usage() {
 
 Usage: ${0##*/} [OPTIONS] file1 [.. fileN]
 options:
-  -html   create html (default)
-  -latex  create LaTeX
+  -html      create html (default)
+  -latex     create LaTeX
+  -pdflatex  create pdf via pdflatex
 
 * Batch process emacs org-mode files to create html/LaTeX etc.
 
@@ -49,8 +50,14 @@ USAGE
 
 # default is html export:
 mode=html
+unset makePDF
 
+echo "have $Script"
 case $Script in
+*pdflatex)
+    mode=latex
+    makePDF=pdflatex
+    ;;
 *latex)
     mode=latex
     ;;
@@ -59,7 +66,6 @@ case $Script in
     ;;
 esac
 
-
 # parse options
 while [ "$#" -gt 0 ]
 do
@@ -75,6 +81,11 @@ do
         mode=latex
         shift
         ;;
+    -pdflatex)
+        mode=latex
+        makePDF=pdflatex
+        shift
+        ;;
     -*)
         usage "unknown option: '$*'"
         ;;
@@ -98,6 +109,21 @@ do
     then
         emacs --batch -l org --visit=$org \
               --funcall org-export-as-$mode-batch
+
+        # post-processing step to create pdf
+        case "$makePDF" in
+        pdflatex)
+            input="${org%.org}.tex"
+
+            if [ -f "$input" ]
+            then
+                pdflatex "$input"
+            else
+                echo "No $input to convert to pdf"
+            fi
+            ;;
+        esac
+
     else
         echo "File not found"
     fi
diff --git a/doc/changes/inotify.txt b/doc/changes/inotify.txt
new file mode 100644
index 0000000000000000000000000000000000000000..146dc55a05a0bd4a35a5398a88856552d0030b8d
--- /dev/null
+++ b/doc/changes/inotify.txt
@@ -0,0 +1,53 @@
+2010-05-28
+Cleanup of automatic regIOobject rereading.
+
+- all files (usually only IOdictionary) that need to be monitored
+should be registered using MUST_READ_IF_MODIFIED. The MUST_READ should
+be used for objects that do not need to be re-read (e.g. fields).
+In the old system it would actually monitor e.g. 0/U and constant/polyMesh
+files.
+I've temporarily added a warning in IOdictionary if constructed with MUST_READ.
+Same for IOList,IOField,IOMap if constructed with MUST_READ_IF_MODIFIED
+(or is rereading supported?). Please let me know if something does not work or
+you see the warning
+   "Dictionary constructed with IOobject::MUST_READ instead of IOobject::MUST_READ_IF_MODIFIED." << nl
+
+
+- any monitored and modified file will get reloaded from the exact path
+that was monitored. In the old system it would/could do a re-search through all
+times.
+
+
+- all reductions to synchronise status on different processors are done with
+a single reduction instead of one reduction per registered object. This could
+be quite a gain on large numbers of processors.
+
+
+- all file monitoring is done by an instance of 'fileMonitor' in the Time
+class. The fileMonitor class can be found in OSspecific. Default is
+to use the (linux-specific) 'inotify' system calls.
+If compiled with -DFOAM_USE_STAT it will revert to the current 'stat' system
+calls.
+
+
+- inotify does not need timestamps. There is no need for fileModificationSkew
+to allow for time differences. (there can still temporarily be a difference
+in modified status between different processors due to nfs lagging)
+
+
+- fileMonitor stores two hashtables per file so there is a small overhead
+adding and removing files from monitoring.
+
+
+- if runTimeModifiable is false at start of run no files will get monitored,
+however if runTimeModified gets set to false during the run the files
+will still get monitored (though never reloaded). This is only a hypothetical
+problem in that the kernel still stores events for the monitored files. However
+inotify is very efficient - e.g. it gets used to track changes on file systems
+for desktop search engines.
+
+
+- in the old system one could call modified() on any object and get
+and uptodate state. In the new system it will return the state from
+the last runTime++ (which if it triggered any re-reads will have reset the
+state anyway).
diff --git a/doc/codingStyleGuide.org b/doc/codingStyleGuide.org
index 94a1b51536e368c407fa98b764a6afab38931de8..589f946839ae71c55add34c9cd7b7e312ccc5a72 100644
--- a/doc/codingStyleGuide.org
+++ b/doc/codingStyleGuide.org
@@ -2,7 +2,7 @@
 #
 #+TITLE:                 OpenFOAM C++ style guide
 #+AUTHOR:                      OpenCFD Ltd.
-#+DATE:                          May 2010
+#+DATE:                         June 2010
 #+LINK:                  http://www.opencfd.co.uk
 #+OPTIONS: author:nil ^:{}
 
@@ -13,9 +13,12 @@
     + The normal indentation is 4 spaces per logical level.
     + Use spaces for indentation, not tab characters.
     + Avoid trailing whitespace.
-    + The body of control statements (eg, =if=, =else=, =while=, etc).
+    + The body of control statements (eg, =if=, =else=, =while=, etc). is
       always delineated with brace brackets. A possible exception can be
-      made with =break= or =continue= as part of a control structure.
+      made in conjunction with =break= or =continue= as part of a control
+      structure.
+    + The body of =case= statements is usually delineated with brace brackets.
+    + A fall-through =case= should be commented as such.
 
     + stream output
       + =<<= is always four characters after the start of the stream,
@@ -132,22 +135,25 @@
     + Use two empty lines between functions
 
 *** Coding Practice
-    + passing data as arguments or return
-      Pass bool, label and scalar as copy, anything larger by reference.
+    + passing data as arguments or return values.
+      + Pass bool, label and scalar as copy, anything larger by reference.
 
     + const
-      Use everywhere it is applicable.
+      + Use everywhere it is applicable.
 
-    + variable initialisation using =
-
-    : const className& variableName = otherClass.data();
+    + variable initialisation using
+#+BEGIN_EXAMPLE
+    const className& variableName = otherClass.data();
+#+END_EXAMPLE
 
       NOT
 
-    : const className& variableName(otherClass.data());
+#+BEGIN_EXAMPLE
+    const className& variableName(otherClass.data());
+#+END_EXAMPLE
 
     + virtual functions
-      If a class is virtual - make all derived classes virtual.
+      + If a class is virtual, make all derived classes virtual.
 
 *** Conditional Statements
 #+BEGIN_EXAMPLE
@@ -169,7 +175,7 @@
     }
 #+END_EXAMPLE
 
-    NOT (no space between =if= and =(=)
+    NOT (no space between =if= and =(= used)
 
 #+BEGIN_EXAMPLE
     if(condition)
@@ -201,7 +207,7 @@
     }
 #+END_EXAMPLE
 
-    NOT (no space between =for= and =(=)
+    NOT this (no space between =for= and =(= used)
 
 #+BEGIN_EXAMPLE
     for(i = 0; i < maxI; i++)
@@ -349,7 +355,7 @@
       * (k + t);
 #+END_EXAMPLE
 
-      This is sometime more legible when surrounded by extra parentheses:
+      This is sometimes more legible when surrounded by extra parentheses:
 
 #+BEGIN_EXAMPLE
     variableName =
@@ -437,15 +443,15 @@
 
 *** Doxygen Special Commands
 
-    Doxygen has a large number of special commands with a '\' prefix or a
-    (alternatively) an '@' prefix.
+    Doxygen has a large number of special commands with a =\= prefix or
+    (alternatively) an =@= prefix.
 
-    The '@' prefix form is recommended for most Doxygen specials, since it
+    The =@= prefix form is recommended for most Doxygen specials, since it
     has the advantage of standing out. It also happens to be what projects
     like gcc and VTK are using.
 
-    The '\' prefix form, however, looks a bit better for the '\n' newline
-    command and when escaping single characters - eg, '\@', '\<', '\>', etc.
+    The =\= prefix form, however, looks a bit better for the =\n= newline
+    command and when escaping single characters - eg, =\@=, =\<=, =\>=, etc.
 
     Since the filtering removes the leading 4 spaces within the blocks, the
     Doxygen commmands can be inserted within the block without problems.
@@ -514,7 +520,7 @@
 #+END_EXAMPLE
 
 
-*** Documenting Typedefs and classes defined via macros
+*** Documenting typedefs and classes defined via macros
 
     ... not yet properly resolved
 
diff --git a/etc/apps/paraview3/cshrc b/etc/apps/paraview3/cshrc
index e8b85603ff099ea30c5adbd9c85534e95dc114f7..ddb4502c275748d6d29752bd0220190ff3629eec 100644
--- a/etc/apps/paraview3/cshrc
+++ b/etc/apps/paraview3/cshrc
@@ -49,7 +49,7 @@ foreach cmake ( cmake-2.8.1 cmake-2.8.0 cmake-2.6.4 )
 end
 
 # set VERSION and MAJOR (version) variables if not already set
-if ( ! $?ParaView_VERSION || "x$ParaView_VERSION" == "x" ) setenv ParaView_VERSION 3.6.1
+if ( ! $?ParaView_VERSION ) setenv ParaView_VERSION 3.6.1
 if ( ! $?ParaView_MAJOR ) setenv ParaView_MAJOR unknown
 
 # if needed, set MAJOR version to correspond to VERSION
diff --git a/etc/cellModels b/etc/cellModels
index ca710a777bf85f736a6ffe22d55b46becfcf860e..b4aa84f39b6ce66c3047f30c5cf920575c74adfc 100644
--- a/etc/cellModels
+++ b/etc/cellModels
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/etc/controlDict b/etc/controlDict
index fe7ab2d9ca868c9bae5816663dc5eac4207b0362..9f628abd8ec507cbd817274434c4c31779c1f56f 100644
--- a/etc/controlDict
+++ b/etc/controlDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/src/Allwmake b/src/Allwmake
index 4da8d4f7192d83bb7946bc5ff1c1923f92b0e2af..e1589a404671a1aeaefe194c70f1426c2759342a 100755
--- a/src/Allwmake
+++ b/src/Allwmake
@@ -17,7 +17,7 @@ wmakeLnInclude OpenFOAM
 wmakeLnInclude OSspecific/$WM_OSTYPE
 Pstream/Allwmake
 
-wmake libo  OSspecific/$WM_OSTYPE
+OSspecific/$WM_OSTYPE/Allwmake
 wmake libso OpenFOAM
 
 wmake libso lagrangian/basic
diff --git a/src/OSspecific/POSIX/Allwmake b/src/OSspecific/POSIX/Allwmake
new file mode 100755
index 0000000000000000000000000000000000000000..7819ce885bf8f0b9b61ce2306f7c0554f9c7a341
--- /dev/null
+++ b/src/OSspecific/POSIX/Allwmake
@@ -0,0 +1,21 @@
+#!/bin/sh
+cd ${0%/*} || exit 1    # run from this directory
+
+#
+# use <sys/inotify.h> if available (Linux)
+# unless otherwise specified (with FOAM_USE_STAT)
+#
+# eg,  ./Allwmake FOAM_USE_STAT
+#
+if [ -f /usr/include/sys/inotify.h -a "${1%USE_STAT}" = "$1" ]
+then
+    unset FOAM_FILE_MONITOR
+else
+    export FOAM_FILE_MONITOR="-DFOAM_USE_STAT"
+fi
+
+
+# make (non-shared) object
+wmake libo
+
+# ----------------------------------------------------------------- end-of-file
diff --git a/src/OSspecific/POSIX/Make/files b/src/OSspecific/POSIX/Make/files
index f6e7c2d55eda6f5ffbcc1f0de59451051b45d424..788a08105ae3f40dca14cb2ed15e7ec8af77b363 100644
--- a/src/OSspecific/POSIX/Make/files
+++ b/src/OSspecific/POSIX/Make/files
@@ -9,6 +9,12 @@ POSIX.C
 cpuTime/cpuTime.C
 clockTime/clockTime.C
 
+/*
+ * Note: fileMonitor assumes inotify by default. Compile with -DFOAM_USE_STAT
+ * to use stat (=timestamps) instead of inotify
+ */
+fileMonitor.C
+
 #ifdef SunOS64
 dummyPrintStack.C
 #else
diff --git a/src/OSspecific/POSIX/Make/options b/src/OSspecific/POSIX/Make/options
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..be643469df3ff9007881b6a0c6f20fee04e8a377 100644
--- a/src/OSspecific/POSIX/Make/options
+++ b/src/OSspecific/POSIX/Make/options
@@ -0,0 +1 @@
+EXE_INC = $(FOAM_FILE_MONITOR)
diff --git a/src/OSspecific/POSIX/fileMonitor.C b/src/OSspecific/POSIX/fileMonitor.C
new file mode 100644
index 0000000000000000000000000000000000000000..a812dec9429b112fde68be45fe65b709dd76e8db
--- /dev/null
+++ b/src/OSspecific/POSIX/fileMonitor.C
@@ -0,0 +1,443 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    fileMonitor
+
+\*----------------------------------------------------------------------------*/
+
+#include "fileMonitor.H"
+#include "IOstreams.H"
+#include "Pstream.H"
+#include "PackedList.H"
+#include "PstreamReduceOps.H"
+
+#ifdef FOAM_USE_STAT
+#   include "OSspecific.H"
+#   include "regIOobject.H"     // for fileModificationSkew symbol
+#else
+#   include <sys/inotify.h>
+#   include <sys/ioctl.h>
+#endif
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+defineTypeNameAndDebug(Foam::fileMonitor, 0);
+
+template<>
+const char* Foam::NamedEnum<Foam::fileMonitor::fileState, 3>::names[] =
+{
+    "unmodified",
+    "modified",
+    "deleted"
+};
+const Foam::NamedEnum<Foam::fileMonitor::fileState, 3>
+    Foam::fileMonitor::fileStateNames_;
+
+
+namespace Foam
+{
+    //- Reduction operator for PackedList of fileState
+    class reduceFileStates
+    {
+        public:
+        unsigned int operator()(const unsigned int x, const unsigned int y)
+        const
+        {
+            // x,y are sets of 2bits representing fileState
+
+            unsigned int mask = 3u;
+            unsigned int shift = 0;
+            unsigned int result = 0;
+
+            while (mask)
+            {
+                // Combine state
+                unsigned int xState = (x & mask) >> shift;
+                unsigned int yState = (y & mask) >> shift;
+
+                // Combine and add to result. Combine is such that UNMODIFIED
+                // wins.
+                unsigned int state = min(xState, yState);
+                result |= (state << shift);
+
+                shift += 2;
+                mask <<= 2;
+            }
+            return result;
+        }
+    };
+
+    //- Combine operator for PackedList of fileState
+    class combineReduceFileStates
+    {
+        public:
+        void operator()(unsigned int& x, const unsigned int y) const
+        {
+            x = reduceFileStates()(x, y);
+        }
+    };
+
+
+
+    //! @cond internalClass
+    //- Internal tracking via stat(3p) or inotify(7)
+    class fileMonitorWatcher
+    {
+    public:
+
+#ifdef FOAM_USE_STAT
+        //- From watch descriptor to modified time
+        HashTable<label, time_t> lastMod;
+
+        //- initialize HashTable size
+        inline fileMonitorWatcher(const label sz = 20)
+        :
+            lastMod(sz)
+        {}
+
+        inline label addWatch(const fileName& fName)
+        {
+            const label watchFd = lastMod.size();
+            lastMod.insert(watchFd, lastModified(fName));
+            return watchFd;
+        }
+
+        inline bool removeWatch(const label watchFd)
+        {
+            return lastMod.erase(watchFd);
+        }
+
+#else
+        //- File descriptor for the inotify instance
+        int fd;
+
+        //- Pre-allocated structure containing file descriptors
+        fd_set fdSet;
+
+        //- initialize inotify
+        inline fileMonitorWatcher(const label dummy = 0)
+        :
+            fd(inotify_init())
+        {
+            // Add notify descriptor to select fd_set
+            FD_ZERO(&fdSet);
+            FD_SET(fd, &fdSet);
+        }
+
+        //- test if file descriptor is set
+        inline bool isSet() const
+        {
+            return FD_ISSET(fd, &fdSet);
+        }
+
+        //- reset file descriptor
+        inline void reset()
+        {
+            FD_SET(fd, &fdSet);
+        }
+
+        inline label addWatch(const fileName& fName)
+        {
+            return inotify_add_watch
+            (
+                fd,
+                fName.c_str(),
+                // IN_ALL_EVENTS
+                IN_CLOSE_WRITE | IN_DELETE_SELF | IN_MODIFY
+            );
+        }
+
+        inline bool removeWatch(const label watchFd)
+        {
+            return inotify_rm_watch(fd, int(watchFd)) == 0;
+        }
+#endif
+
+    };
+    //! @endcond
+}
+
+
+// * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
+
+void Foam::fileMonitor::checkFiles() const
+{
+#ifdef FOAM_USE_STAT
+    for
+    (
+        HashTable<label, time_t>::iterator iter = watcher_->lastMod.begin();
+        iter != watcher_->lastMod.end();
+        ++iter
+    )
+    {
+        const label watchFd = iter.key();
+        const fileName& fName = watchFile_[watchFd];
+        time_t newTime = lastModified(fName);
+
+        if (newTime == 0)
+        {
+            state_.set(watchFd, DELETED);
+        }
+        else
+        {
+            time_t oldTime = iter();
+            if (newTime > (oldTime + regIOobject::fileModificationSkew))
+            {
+                iter() = newTime;
+                state_.set(watchFd, MODIFIED);
+            }
+            else
+            {
+                state_.set(watchFd, UNMODIFIED);
+            }
+        }
+    }
+#else
+    while (true)
+    {
+        struct timeval zeroTimeout = {0, 0};
+
+        int ready = select
+        (
+            watcher_->fd+1,        // num filedescriptors in fdSet
+            &(watcher_->fdSet),    // fdSet with only inotifyFd
+            NULL,                  // No writefds
+            NULL,                  // No errorfds
+            &zeroTimeout           // eNo timeout
+        );
+
+        if (ready < 0)
+        {
+            FatalErrorIn("fileMonitor::updateStates()")
+                << "Problem in issuing select."
+                << abort(FatalError);
+        }
+        else if (watcher_->isSet())
+        {
+            struct inotify_event inotifyEvent;
+
+            // Read first event
+            ssize_t nBytes = read
+            (
+                watcher_->fd,
+                &inotifyEvent,
+                sizeof(inotifyEvent)
+            );
+
+            if (nBytes != sizeof(inotifyEvent))
+            {
+                FatalErrorIn("fileMonitor::updateStates(const fileName&)")
+                    << "Read " << label(nBytes) << " ; expected "
+                    << label(sizeof(inotifyEvent))
+                    << abort(FatalError);
+            }
+
+            // Pout<< "mask:" << inotifyEvent.mask << nl
+            //     << "watchFd:" << inotifyEvent.wd << nl
+            //     << "watchName:" << watchFile_[inotifyEvent.wd] << endl;
+
+            switch (inotifyEvent.mask)
+            {
+                case IN_DELETE_SELF:
+                {
+                    Map<fileState>::iterator iter =
+                        state_.find(label(inotifyEvent.wd));
+                    iter() = DELETED;
+                }
+                break;
+
+                case IN_MODIFY:
+                case IN_CLOSE_WRITE:
+                {
+                    Map<fileState>::iterator iter =
+                        state_.find(label(inotifyEvent.wd));
+                    iter() = MODIFIED;
+                }
+                break;
+            }
+        }
+        else
+        {
+            // No data - reset
+            watcher_->reset();
+            return;
+        }
+    }
+#endif
+}
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+
+Foam::fileMonitor::fileMonitor()
+:
+    state_(20),
+    watchFile_(20),
+    watcher_(new fileMonitorWatcher(20))
+{}
+
+
+// * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
+
+Foam::fileMonitor::~fileMonitor()
+{
+    // Remove watch on any remaining files
+    List<label> watchFds(state_.toc());
+    forAll(watchFds, i)
+    {
+        removeWatch(watchFds[i]);
+    }
+
+    delete watcher_;
+}
+
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+Foam::label Foam::fileMonitor::addWatch(const fileName& fName)
+{
+    const label watchFd = watcher_->addWatch(fName);
+
+    if (debug)
+    {
+        Pout<< "fileMonitor : added watch " << watchFd << " on file "
+            << fName << endl;
+    }
+
+    if (watchFd < 0)
+    {
+        WarningIn("fileMonitor::addWatch(const fileName&)")
+            << "could not add watch for file " << fName << endl;
+    }
+    else
+    {
+        state_.insert(watchFd, UNMODIFIED);
+        watchFile_.insert(watchFd, fName);
+    }
+    return watchFd;
+}
+
+
+bool Foam::fileMonitor::removeWatch(const label watchFd)
+{
+    if (debug)
+    {
+        Pout<< "fileMonitor : removing watch " << watchFd << " on file "
+            << watchFile_[watchFd] << endl;
+    }
+
+    state_.erase(watchFd);
+    watchFile_.erase(watchFd);
+    return watcher_->removeWatch(watchFd);
+}
+
+
+const Foam::fileName& Foam::fileMonitor::getFile(const label watchFd) const
+{
+    return watchFile_[watchFd];
+}
+
+
+Foam::fileMonitor::fileState Foam::fileMonitor::getState(const label watchFd)
+const
+{
+    return state_[watchFd];
+}
+
+
+void Foam::fileMonitor::updateStates(const bool syncPar) const
+{
+    checkFiles();
+
+    if (syncPar)
+    {
+        PackedList<2> stats(state_.size());
+        label i = 0;
+        forAllConstIter(Map<fileState>, state_, iter)
+        {
+            stats[i++] = static_cast<unsigned int>(iter());
+        }
+        // Save local state for warning message below
+        PackedList<2> thisProcStats(stats);
+
+        if (stats.storage().size() == 1)
+        {
+            // Optimisation valid for most cases.
+            reduce(stats.storage()[0], reduceFileStates());
+        }
+        else
+        {
+            Pstream::listCombineGather
+            (
+                stats.storage(),
+                combineReduceFileStates()
+            );
+        }
+
+        i = 0;
+        forAllIter(Map<fileState>, state_, iter)
+        {
+            if (thisProcStats[i] != UNMODIFIED)
+            {
+                if (stats[i] == UNMODIFIED)
+                {
+                    WarningIn("fileMonitor::updateStates(const bool) const")
+                        << "Delaying reading " << watchFile_[iter.key()]
+                        << " due to inconsistent "
+                           "file time-stamps between processors"
+                        << endl;
+                }
+                else
+                {
+                    unsigned int stat = stats[i];
+                    iter() = fileState(stat);
+                }
+            }
+            i++;
+        }
+    }
+}
+
+
+void Foam::fileMonitor::setUnmodified(const label watchFd)
+{
+#ifdef FOAM_USE_STAT
+    watcher_->lastMod[watchFd] = lastModified(watchFile_[watchFd]);
+#endif
+
+    Map<fileState>::iterator iter = state_.find(watchFd);
+
+    if (iter == state_.end())
+    {
+        FatalErrorIn("fileMonitor::setUnmodified(const label)")
+            << "Illegal watchFd " << watchFd
+            << abort(FatalError);
+    }
+
+    iter() = UNMODIFIED;
+}
+
+
+// ************************************************************************* //
diff --git a/src/OSspecific/POSIX/fileMonitor.H b/src/OSspecific/POSIX/fileMonitor.H
new file mode 100644
index 0000000000000000000000000000000000000000..fbb0c4e2d64fd642f0c3cbf5c27d45b0cd660fd2
--- /dev/null
+++ b/src/OSspecific/POSIX/fileMonitor.H
@@ -0,0 +1,152 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    fileMonitor
+
+Description
+    Checking for changes to files.
+
+Note
+    The default is to use inotify (Linux specific, since 2.6.13)
+
+    Compiling with FOAM_USE_STAT (or if /usr/include/sys/inotify.h
+    does not exist) uses the stat function call.
+
+    - works fine except when a file is deleted and recreated:
+    it stops monitoring the file!
+    (does work though if the file gets moved)
+
+SourceFiles
+    fileMonitor.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef fileMonitor_H
+#define fileMonitor_H
+
+#include <sys/types.h>
+#include "Map.H"
+#include "NamedEnum.H"
+#include "className.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+class fileMonitor;
+class fileMonitorWatcher;
+
+/*---------------------------------------------------------------------------*\
+                         Class fileMonitor Declaration
+\*---------------------------------------------------------------------------*/
+
+class fileMonitor
+{
+
+public:
+
+    // Public data types
+
+        //- Enumeration defining the file state.
+        enum fileState
+        {
+            UNMODIFIED = 0,
+            MODIFIED = 1,
+            DELETED = 2,
+        };
+
+        static const NamedEnum<fileState, 3> fileStateNames_;
+
+private:
+    // Private data
+
+        //- State for all watchFds
+        mutable Map<fileState> state_;
+
+        //- From watch descriptor to filename
+        HashTable<fileName, label> watchFile_;
+
+        //- Watch mechanism (stat or inotify)
+        mutable fileMonitorWatcher *watcher_;
+
+
+    // Private Member Functions
+
+        //- Update state_ from any events.
+        void checkFiles() const;
+
+        //- Disallow default bitwise copy construct
+        fileMonitor(const fileMonitor&);
+
+        //- Disallow default bitwise assignment
+        void operator=(const fileMonitor&);
+
+
+public:
+
+    // Declare name of the class and its debug switch
+    ClassName("fileMonitor");
+
+    // Constructors
+
+        //- Construct null
+        fileMonitor();
+
+
+    //- Destructor
+    ~fileMonitor();
+
+
+    // Member Functions
+
+        //- Add file to watch. Return watch descriptor
+        label addWatch(const fileName&);
+
+        //- Remove file to watch. Return true if successful
+        bool removeWatch(const label watchFd);
+
+        //- Get name of file being watched
+        const fileName& getFile(const label watchFd) const;
+
+        //- Check state using handle
+        fileState getState(const label watchFd) const;
+
+        //- Check state of all files. Updates state_.
+        void updateStates(const bool syncPar) const;
+
+        //- Reset state (e.g. after having read it) using handle
+        void setUnmodified(const label watchFd);
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/OpenFOAM/Make/files b/src/OpenFOAM/Make/files
index 2ea9004636affee867e205188696938d3facb0d6..9560986fbdfc3aac0fb8a180a47c4060951dd19c 100644
--- a/src/OpenFOAM/Make/files
+++ b/src/OpenFOAM/Make/files
@@ -497,10 +497,15 @@ $(Fields)/scalarField/scalarFieldIOField.C
 $(Fields)/vectorField/vectorIOField.C
 $(Fields)/vectorField/vectorFieldIOField.C
 $(Fields)/vector2DField/vector2DIOField.C
+$(Fields)/vector2DField/vector2DFieldIOField.C
 $(Fields)/sphericalTensorField/sphericalTensorIOField.C
+$(Fields)/sphericalTensorField/sphericalTensorFieldIOField.C
 $(Fields)/diagTensorField/diagTensorIOField.C
+$(Fields)/diagTensorField/diagTensorFieldIOField.C
 $(Fields)/symmTensorField/symmTensorIOField.C
+$(Fields)/symmTensorField/symmTensorFieldIOField.C
 $(Fields)/tensorField/tensorIOField.C
+$(Fields)/tensorField/tensorFieldIOField.C
 $(Fields)/transformField/transformField.C
 
 pointPatchFields = fields/pointPatchFields
diff --git a/src/OpenFOAM/containers/Lists/DynamicList/DynamicListI.H b/src/OpenFOAM/containers/Lists/DynamicList/DynamicListI.H
index d9bd00b1b198d9254240b59fbe5dfdf23adf2ea0..f5967cf5b382ff21649e08a10687cd1e40e8b4cb 100644
--- a/src/OpenFOAM/containers/Lists/DynamicList/DynamicListI.H
+++ b/src/OpenFOAM/containers/Lists/DynamicList/DynamicListI.H
@@ -310,7 +310,7 @@ inline void Foam::DynamicList<T, SizeInc, SizeMult, SizeDiv>::append
     const T& t
 )
 {
-    label elemI = List<T>::size();
+    const label elemI = List<T>::size();
     setSize(elemI + 1);
 
     this->operator[](elemI) = t;
@@ -361,7 +361,7 @@ inline void Foam::DynamicList<T, SizeInc, SizeMult, SizeDiv>::append
 template<class T, unsigned SizeInc, unsigned SizeMult, unsigned SizeDiv>
 inline T Foam::DynamicList<T, SizeInc, SizeMult, SizeDiv>::remove()
 {
-    label elemI = List<T>::size() - 1;
+    const label elemI = List<T>::size() - 1;
 
     if (elemI < 0)
     {
diff --git a/src/OpenFOAM/containers/Lists/List/List.H b/src/OpenFOAM/containers/Lists/List/List.H
index 17e3398a2055650cbf2880e373f61fd0e12d3c00..2999e0886ed5826b974c121b9ce2f8c53ad6f6b6 100644
--- a/src/OpenFOAM/containers/Lists/List/List.H
+++ b/src/OpenFOAM/containers/Lists/List/List.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -180,6 +180,9 @@ public:
             //- Clear the list, i.e. set size to zero.
             void clear();
 
+            //- Append an element at the end of the list
+            inline void append(const T&);
+
             //- Append a List at the end of this list
             inline void append(const UList<T>&);
 
diff --git a/src/OpenFOAM/containers/Lists/List/ListI.H b/src/OpenFOAM/containers/Lists/List/ListI.H
index 51abd2d55edfe4b6cc9ae235c9d70af34b0cd8a6..24b5c41996a3b57dccd4f459d9f400445ebdf7e6 100644
--- a/src/OpenFOAM/containers/Lists/List/ListI.H
+++ b/src/OpenFOAM/containers/Lists/List/ListI.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -93,6 +93,13 @@ inline Foam::Xfer<Foam::List<T> > Foam::List<T>::xfer()
 }
 
 
+template<class T>
+inline void Foam::List<T>::append(const T& t)
+{
+    setSize(size()+1, t);
+}
+
+
 template<class T>
 inline void Foam::List<T>::append(const UList<T>& lst)
 {
diff --git a/src/OpenFOAM/containers/NamedEnum/NamedEnum.C b/src/OpenFOAM/containers/NamedEnum/NamedEnum.C
index 76b8c58765ba63051d97f629a02cf971fab11e82..b39664af247c5e97b30e2ab0710b206e316c8d54 100644
--- a/src/OpenFOAM/containers/NamedEnum/NamedEnum.C
+++ b/src/OpenFOAM/containers/NamedEnum/NamedEnum.C
@@ -33,25 +33,25 @@ Foam::NamedEnum<Enum, nEnum>::NamedEnum()
 :
     HashTable<int>(2*nEnum)
 {
-    for (int i=0; i<nEnum; i++)
+    for (int enumI = 0; enumI < nEnum; ++enumI)
     {
-        if (!names[i] || names[i][0] == '\0')
+        if (!names[enumI] || names[enumI][0] == '\0')
         {
-            stringList goodNames(i);
+            stringList goodNames(enumI);
 
-            for (int j = 0; j < i; j++)
+            for (int i = 0; i < enumI; ++i)
             {
-                goodNames[j] = names[j];
+                goodNames[i] = names[i];
             }
 
             FatalErrorIn("NamedEnum<Enum, nEnum>::NamedEnum()")
-                << "Illegal enumeration name at position " << i << endl
+                << "Illegal enumeration name at position " << enumI << endl
                 << "after entries " << goodNames << ".\n"
                 << "Possibly your NamedEnum<Enum, nEnum>::names array"
                 << " is not of size " << nEnum << endl
                 << abort(FatalError);
         }
-        insert(names[i], i);
+        insert(names[enumI], enumI);
     }
 }
 
@@ -61,7 +61,7 @@ Foam::NamedEnum<Enum, nEnum>::NamedEnum()
 template<class Enum, int nEnum>
 Enum Foam::NamedEnum<Enum, nEnum>::read(Istream& is) const
 {
-    word name(is);
+    const word name(is);
 
     HashTable<int>::const_iterator iter = find(name);
 
@@ -71,7 +71,7 @@ Enum Foam::NamedEnum<Enum, nEnum>::read(Istream& is) const
         (
             "NamedEnum<Enum, nEnum>::read(Istream&) const", is
         )   << name << " is not in enumeration: "
-            << toc() << exit(FatalIOError);
+            << sortedToc() << exit(FatalIOError);
     }
 
     return Enum(iter());
diff --git a/src/OpenFOAM/db/IOobject/IOobject.C b/src/OpenFOAM/db/IOobject/IOobject.C
index b9a0a258935872db02edeca98b1a403d93208667..77617b64fc5f09671e0683ca7af6b2d8958837de 100644
--- a/src/OpenFOAM/db/IOobject/IOobject.C
+++ b/src/OpenFOAM/db/IOobject/IOobject.C
@@ -316,8 +316,12 @@ Foam::fileName Foam::IOobject::filePath() const
 
 Foam::Istream* Foam::IOobject::objectStream()
 {
-    fileName fName = filePath();
+    return objectStream(filePath());
+}
+
 
+Foam::Istream* Foam::IOobject::objectStream(const fileName& fName)
+{
     if (fName.size())
     {
         IFstream* isPtr = new IFstream(fName);
diff --git a/src/OpenFOAM/db/IOobject/IOobject.H b/src/OpenFOAM/db/IOobject/IOobject.H
index 32ce285bfd811d95ac48b3f52b9590f0df21057b..4bb0a7c6c34dbf25ee15495fb6b3b4f3ca4d816d 100644
--- a/src/OpenFOAM/db/IOobject/IOobject.H
+++ b/src/OpenFOAM/db/IOobject/IOobject.H
@@ -39,9 +39,16 @@ Description
     @param MUST_READ
         Object must be read from Istream on construction. \n
         Error if Istream does not exist or can't be read.
+        Does not check timestamp or re-read.
+    @param MUST_READ_IF_MODIFIED
+        Object must be read from Istream on construction. \n
+        Error if Istream does not exist or can't be read. If object is
+        registered its timestamp will be checked every timestep and possibly
+        re-read.
     @param READ_IF_PRESENT
         Read object from Istream if Istream exists, otherwise don't. \n
         Error only if Istream exists but can't be read.
+        Does not check timestamp or re-read.
     @param NO_READ
           Don't read
 
@@ -100,6 +107,7 @@ public:
         enum readOption
         {
             MUST_READ,
+            MUST_READ_IF_MODIFIED,
             READ_IF_PRESENT,
             NO_READ
         };
@@ -154,6 +162,10 @@ protected:
         //  The results is NULL if the stream construction failed
         Istream* objectStream();
 
+        //- Construct and return an IFstream for the object given the
+        //  exact file. The results is NULL if the stream construction failed
+        Istream* objectStream(const fileName&);
+
         //- Set the object state to bad
         void setBad(const string&);
 
diff --git a/src/OpenFOAM/db/IOobject/IOobjectReadHeader.C b/src/OpenFOAM/db/IOobject/IOobjectReadHeader.C
index fc85d5fa263ea0e16d00f8a2e246b74510f4710f..1f296fb7da748fa43c00b4ded1d45f192a941b63 100644
--- a/src/OpenFOAM/db/IOobject/IOobjectReadHeader.C
+++ b/src/OpenFOAM/db/IOobject/IOobjectReadHeader.C
@@ -39,7 +39,7 @@ bool Foam::IOobject::readHeader(Istream& is)
     // Check Istream not already bad
     if (!is.good())
     {
-        if (rOpt_ == MUST_READ)
+        if (rOpt_ == MUST_READ || rOpt_ == MUST_READ_IF_MODIFIED)
         {
             FatalIOErrorIn("IOobject::readHeader(Istream&)", is)
                 << " stream not open for reading essential object from file "
@@ -102,7 +102,7 @@ bool Foam::IOobject::readHeader(Istream& is)
     }
     else
     {
-        if (rOpt_ == MUST_READ)
+        if (rOpt_ == MUST_READ || rOpt_ == MUST_READ_IF_MODIFIED)
         {
             FatalIOErrorIn("IOobject::readHeader(Istream&)", is)
                 << " stream failure while reading header"
diff --git a/src/OpenFOAM/db/IOobjects/IOField/IOField.C b/src/OpenFOAM/db/IOobjects/IOField/IOField.C
index 3b16672ea4a36a09b358a7eeaef960fb26d871df..d5a6a8bec2c0179743871032985561d08b692ddf 100644
--- a/src/OpenFOAM/db/IOobjects/IOField/IOField.C
+++ b/src/OpenFOAM/db/IOobjects/IOField/IOField.C
@@ -32,9 +32,22 @@ Foam::IOField<Type>::IOField(const IOobject& io)
 :
     regIOobject(io)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+    {
+        WarningIn("IOField::IOField(const IOobject&)")
+            << "IOField " << name()
+            << " constructed with IOobject::MUST_READ_IF_MODIFIED"
+            " but IOField does not support automatic rereading."
+            << endl;
+    }
+
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -49,9 +62,22 @@ Foam::IOField<Type>::IOField(const IOobject& io, const label size)
 :
     regIOobject(io)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+    {
+        WarningIn("IOField::IOField(const IOobject&, const label)")
+            << "IOField " << name()
+            << " constructed with IOobject::MUST_READ_IF_MODIFIED"
+            " but IOField does not support automatic rereading."
+            << endl;
+    }
+
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -70,9 +96,22 @@ Foam::IOField<Type>::IOField(const IOobject& io, const Field<Type>& f)
 :
     regIOobject(io)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+    {
+        WarningIn("IOField::IOField(const IOobject&, const Field<Type>&)")
+            << "IOField " << name()
+            << " constructed with IOobject::MUST_READ_IF_MODIFIED"
+            " but IOField does not support automatic rereading."
+            << endl;
+    }
+
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -91,11 +130,26 @@ Foam::IOField<Type>::IOField(const IOobject& io, const Xfer<Field<Type> >& f)
 :
     regIOobject(io)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+    {
+        WarningIn
+        (
+            "IOField::IOField(const IOobject&, const Xfer<Field<Type> >&)"
+        )   << "IOField " << name()
+            << " constructed with IOobject::MUST_READ_IF_MODIFIED"
+            " but IOField does not support automatic rereading."
+            << endl;
+    }
+
     Field<Type>::transfer(f());
 
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
diff --git a/src/OpenFOAM/db/IOobjects/IOList/IOList.C b/src/OpenFOAM/db/IOobjects/IOList/IOList.C
index 39e0554b042e0c37b9d57d6691e4898f2a02c3d9..ce4a27bc2fbb9a5632041adc83b4eb28f2f9a584 100644
--- a/src/OpenFOAM/db/IOobjects/IOList/IOList.C
+++ b/src/OpenFOAM/db/IOobjects/IOList/IOList.C
@@ -32,9 +32,21 @@ Foam::IOList<T>::IOList(const IOobject& io)
 :
     regIOobject(io)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+    {
+        WarningIn("IOList::IOList(const IOobject&)")
+            << "IOList " << name()
+            << " constructed with IOobject::MUST_READ_IF_MODIFIED"
+            " but IOList does not support automatic rereading."
+            << endl;
+    }
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -49,9 +61,21 @@ Foam::IOList<T>::IOList(const IOobject& io, const label size)
 :
     regIOobject(io)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+    {
+        WarningIn("IOList::IOList(const IOobject&, const label)")
+            << "IOList " << name()
+            << " constructed with IOobject::MUST_READ_IF_MODIFIED"
+            " but IOList does not support automatic rereading."
+            << endl;
+    }
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -70,9 +94,22 @@ Foam::IOList<T>::IOList(const IOobject& io, const List<T>& list)
 :
     regIOobject(io)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+    {
+        WarningIn("IOList::IOList(const IOobject&, const List<T>&)")
+            << "IOList " << name()
+            << " constructed with IOobject::MUST_READ_IF_MODIFIED"
+            " but IOList does not support automatic rereading."
+            << endl;
+    }
+
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -91,11 +128,26 @@ Foam::IOList<T>::IOList(const IOobject& io, const Xfer<List<T> >& list)
 :
     regIOobject(io)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+    {
+        WarningIn
+        (
+            "IOList::IOList(const IOobject&, const Xfer<List<T> >&)"
+        )   << "IOList " << name()
+            << " constructed with IOobject::MUST_READ_IF_MODIFIED"
+            " but IOList does not support automatic rereading."
+            << endl;
+    }
+
     List<T>::transfer(list());
 
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
diff --git a/src/OpenFOAM/db/IOobjects/IOMap/IOMap.C b/src/OpenFOAM/db/IOobjects/IOMap/IOMap.C
index 54f3646b10444132a451cd13a927f3c710706082..67d95333c461a59744732eb2503b8cee3fb086dc 100644
--- a/src/OpenFOAM/db/IOobjects/IOMap/IOMap.C
+++ b/src/OpenFOAM/db/IOobjects/IOMap/IOMap.C
@@ -34,7 +34,10 @@ Foam::IOMap<T>::IOMap(const IOobject& io)
 {
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -50,7 +53,10 @@ Foam::IOMap<T>::IOMap(const IOobject& io, const label size)
 {
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -71,7 +77,10 @@ Foam::IOMap<T>::IOMap(const IOobject& io, const Map<T>& map)
 {
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -94,7 +103,10 @@ Foam::IOMap<T>::IOMap(const IOobject& io, const Xfer<Map<T> >& map)
 
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
diff --git a/src/OpenFOAM/db/IOobjects/IOPtrList/IOPtrList.C b/src/OpenFOAM/db/IOobjects/IOPtrList/IOPtrList.C
index ad3ef2e4cd8f27684d07026cf30c1510caccbbd2..565c77e0fb7d145be4a1de2b5f02da1ac3bcdc94 100644
--- a/src/OpenFOAM/db/IOobjects/IOPtrList/IOPtrList.C
+++ b/src/OpenFOAM/db/IOobjects/IOPtrList/IOPtrList.C
@@ -35,7 +35,10 @@ Foam::IOPtrList<T>::IOPtrList(const IOobject& io, const INew& inewt)
 {
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -52,7 +55,10 @@ Foam::IOPtrList<T>::IOPtrList(const IOobject& io)
 {
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -84,7 +90,10 @@ Foam::IOPtrList<T>::IOPtrList(const IOobject& io, const PtrList<T>& list)
 {
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -107,7 +116,10 @@ Foam::IOPtrList<T>::IOPtrList(const IOobject& io, const Xfer<PtrList<T> >& list)
 
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
diff --git a/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.C b/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.C
index 136c6bbd18f7b6bc6eb6756e114e9cd96e66be4e..2e187ce5e4d9465364d85f362e7bb43c32b40466 100644
--- a/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.C
+++ b/src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.C
@@ -43,9 +43,25 @@ Foam::IOdictionary::IOdictionary(const IOobject& io)
 :
     regIOobject(io)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ)
+    {
+        WarningIn("IOdictionary::IOdictionary(const IOobject&)")
+        //FatalErrorIn("IOdictionary::IOdictionary(const IOobject&)")
+            << "Dictionary " << name()
+            << " constructed with IOobject::MUST_READ"
+            " instead of IOobject::MUST_READ_IF_MODIFIED." << nl
+            << "Use MUST_READ_IF_MODIFIED if you need automatic rereading."
+            << endl;
+            //<< abort(FatalError);
+    }
+
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -61,9 +77,25 @@ Foam::IOdictionary::IOdictionary(const IOobject& io, const dictionary& dict)
 :
     regIOobject(io)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ)
+    {
+        WarningIn
+        (
+            "IOdictionary::IOdictionary(const IOobject& const dictionary&)"
+        )   << "Dictionary " << name()
+            << " constructed with IOobject::MUST_READ"
+            " instead of IOobject::MUST_READ_IF_MODIFIED." << nl
+            << "Use MUST_READ_IF_MODIFIED if you need automatic rereading."
+            << endl;
+    }
+
     if
     (
-        io.readOpt() == IOobject::MUST_READ
+        (
+            io.readOpt() == IOobject::MUST_READ
+         || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
+        )
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
diff --git a/src/OpenFOAM/db/Time/Time.C b/src/OpenFOAM/db/Time/Time.C
index 0afa8d69b34d9b66c5b6c16add13ef60312902ca..4b106077c73fbe8eaa5ce9e131e0c244f2d6bc4a 100644
--- a/src/OpenFOAM/db/Time/Time.C
+++ b/src/OpenFOAM/db/Time/Time.C
@@ -217,7 +217,7 @@ Foam::Time::Time
             controlDictName,
             system(),
             *this,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
@@ -242,6 +242,12 @@ Foam::Time::Time
     readLibs_(controlDict_, "libs"),
     functionObjects_(*this)
 {
+    // Time objects not registered so do like objectRegistry::checkIn ourselves.
+    if (runTimeModifiable_)
+    {
+        controlDict_.watchIndex() = addWatch(controlDict_.filePath());
+    }
+
     setControls();
 }
 
@@ -298,6 +304,13 @@ Foam::Time::Time
     readLibs_(controlDict_, "libs"),
     functionObjects_(*this)
 {
+
+    // Time objects not registered so do like objectRegistry::checkIn ourselves.
+    if (runTimeModifiable_)
+    {
+        controlDict_.watchIndex() = addWatch(controlDict_.filePath());
+    }
+
     setControls();
 }
 
@@ -365,6 +378,38 @@ Foam::Time::~Time()
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
+Foam::label Foam::Time::addWatch(const fileName& fName) const
+{
+    return monitor_.addWatch(fName);
+}
+
+
+bool Foam::Time::removeWatch(const label watchIndex) const
+{
+    return monitor_.removeWatch(watchIndex);
+}
+
+const Foam::fileName& Foam::Time::getFile(const label watchIndex) const
+{
+    return monitor_.getFile(watchIndex);
+}
+
+
+Foam::fileMonitor::fileState Foam::Time::getState
+(
+    const label watchFd
+) const
+{
+    return monitor_.getState(watchFd);
+}
+
+
+void Foam::Time::setUnmodified(const label watchFd) const
+{
+    monitor_.setUnmodified(watchFd);
+}
+
+
 Foam::word Foam::Time::timeName(const scalar t)
 {
     std::ostringstream buf;
@@ -552,8 +597,9 @@ bool Foam::Time::end() const
 }
 
 
-void Foam::Time::stopAt(const stopAtControls sa) const
+bool Foam::Time::stopAt(const stopAtControls sa) const
 {
+    const bool changed = (stopAt_ != sa);
     stopAt_ = sa;
 
     // adjust endTime
@@ -565,6 +611,7 @@ void Foam::Time::stopAt(const stopAtControls sa) const
     {
         endTime_ = GREAT;
     }
+    return changed;
 }
 
 
diff --git a/src/OpenFOAM/db/Time/Time.H b/src/OpenFOAM/db/Time/Time.H
index 7596fee0c9bee183effc5dedabc18855be1f6ff0..c644c757be1a971ec5f0f7f79ddb24834c66f8f1 100644
--- a/src/OpenFOAM/db/Time/Time.H
+++ b/src/OpenFOAM/db/Time/Time.H
@@ -51,6 +51,7 @@ SourceFiles
 #include "typeInfo.H"
 #include "dlLibraryTable.H"
 #include "functionObjectList.H"
+#include "fileMonitor.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
@@ -71,6 +72,9 @@ class Time
 {
     // Private data
 
+        //- file-change monitor for all registered files
+        mutable fileMonitor monitor_;
+
         //- The controlDict
         IOdictionary controlDict_;
 
@@ -275,11 +279,35 @@ public:
                 return graphFormat_;
             }
 
+            //- Supports re-reading
+            const Switch& runTimeModifiable() const
+            {
+                return runTimeModifiable_;
+            }
+
             //- Read control dictionary, update controls and time
             virtual bool read();
 
-            //- Read the objects that have been modified
-            void readModifiedObjects();
+            // Automatic rereading
+
+                //- Read the objects that have been modified
+                void readModifiedObjects();
+
+                //- Add watching of a file. Returns handle
+                label addWatch(const fileName&) const;
+
+                //- Remove watch on a file (using handle)
+                bool removeWatch(const label) const;
+
+                //- Get name of file being watched (using handle)
+                const fileName& getFile(const label) const;
+
+                //- Get current state of file (using handle)
+                fileMonitor::fileState getState(const label) const;
+
+                //- Set current state of file (using handle) to unmodified
+                void setUnmodified(const label) const;
+
 
             //- Return the location of "dir" containing the file "name".
             //  (eg, used in reading mesh data)
@@ -406,7 +434,8 @@ public:
 
             //- Adjust the current stopAtControl. Note that this value
             //  only persists until the next time the dictionary is read.
-            virtual void stopAt(const stopAtControls) const;
+            //  Return true if the stopAtControl changed.
+            virtual bool stopAt(const stopAtControls) const;
 
             //- Reset the time and time-index to those of the given time
             virtual void setTime(const Time&);
diff --git a/src/OpenFOAM/db/Time/TimeIO.C b/src/OpenFOAM/db/Time/TimeIO.C
index 11031875dfbc35a0dcf9cdb03cf21fc199ee651d..dd6d1e98ed62e40f598dc78a53634f2dee122c36 100644
--- a/src/OpenFOAM/db/Time/TimeIO.C
+++ b/src/OpenFOAM/db/Time/TimeIO.C
@@ -180,6 +180,11 @@ void Foam::Time::readDict()
 
     controlDict_.readIfPresent("graphFormat", graphFormat_);
     controlDict_.readIfPresent("runTimeModifiable", runTimeModifiable_);
+
+    if (!runTimeModifiable_ && controlDict_.watchIndex() != -1)
+    {
+        removeWatch(controlDict_.watchIndex());
+    }
 }
 
 
@@ -201,35 +206,28 @@ void Foam::Time::readModifiedObjects()
 {
     if (runTimeModifiable_)
     {
-        // For parallel runs check if any object's file has been modified
-        // and only call readIfModified on each object if this is the case
-        // to avoid unnecessary reductions in readIfModified for each object
+        // Get state of all monitored objects (=registered objects with a
+        // valid filePath).
+        // Note: requires same ordering in objectRegistries on different
+        // processors!
+        monitor_.updateStates(Pstream::parRun());
 
-        bool anyModified = true;
+//Pout<< "Time : runTimeModifiable_ and watchIndex:"
+//    << controlDict_.watchIndex() << endl;
 
-        if (Pstream::parRun())
-        {
-            anyModified = controlDict_.modified() || objectRegistry::modified();
-            bool anyModifiedOnThisProc = anyModified;
-            reduce(anyModified, andOp<bool>());
+        // Time handling is special since controlDict_ is the one dictionary
+        // that is not registered to any database.
 
-            if (anyModifiedOnThisProc && !anyModified)
-            {
-                WarningIn("Time::readModifiedObjects()")
-                    << "Delaying reading objects due to inconsistent "
-                       "file time-stamps between processors"
-                    << endl;
-            }
+        if (controlDict_.readIfModified())
+        {
+           readDict();
+           functionObjects_.read();
         }
 
-        if (anyModified)
-        {
-            if (controlDict_.readIfModified())
-            {
-                readDict();
-                functionObjects_.read();
-            }
+        bool registryModified = objectRegistry::modified();
 
+        if (registryModified)
+        {
             objectRegistry::readModifiedObjects();
         }
     }
diff --git a/src/OpenFOAM/db/Time/findInstance.C b/src/OpenFOAM/db/Time/findInstance.C
index e588aeef4ca26d99b5a5f90201a43c7c398d6fc5..b41a6bb9441711626709d7c88b388e8d1c7c07c1 100644
--- a/src/OpenFOAM/db/Time/findInstance.C
+++ b/src/OpenFOAM/db/Time/findInstance.C
@@ -126,7 +126,11 @@ Foam::word Foam::Time::findInstance
                     << endl;
             }
 
-            if (rOpt == IOobject::MUST_READ)
+            if
+            (
+                rOpt == IOobject::MUST_READ
+             || rOpt == IOobject::MUST_READ_IF_MODIFIED
+            )
             {
                 FatalErrorIn
                 (
@@ -174,7 +178,7 @@ Foam::word Foam::Time::findInstance
         return constant();
     }
 
-    if (rOpt == IOobject::MUST_READ)
+    if (rOpt == IOobject::MUST_READ || rOpt == IOobject::MUST_READ_IF_MODIFIED)
     {
         FatalErrorIn
         (
diff --git a/src/OpenFOAM/db/dictionary/dictionary.H b/src/OpenFOAM/db/dictionary/dictionary.H
index c483aed55709ce442f65f56a3ff9a953a8e3c61d..3c3d50435398517cfb01247342dec4347bf4aaac 100644
--- a/src/OpenFOAM/db/dictionary/dictionary.H
+++ b/src/OpenFOAM/db/dictionary/dictionary.H
@@ -191,10 +191,14 @@ public:
             Istream&
         );
 
-        //- Construct top-level dictionary from Istream, reading entries
-        //  until EOF
+        //- Construct top-level dictionary from Istream,
+        //  reading entries until EOF
         dictionary(Istream&);
 
+        //- Construct top-level dictionary from Istream,
+        //  reading entries until EOF, optionally keeping the header
+        dictionary(Istream&, const bool keepHeader);
+
         //- Construct as copy given the parent dictionary
         dictionary(const dictionary& parentDict, const dictionary&);
 
@@ -441,6 +445,9 @@ public:
             //- Read dictionary from Istream
             bool read(Istream&);
 
+            //- Read dictionary from Istream, optionally keeping the header
+            bool read(Istream&, const bool keepHeader);
+
 
         // Write
 
diff --git a/src/OpenFOAM/db/dictionary/dictionaryIO.C b/src/OpenFOAM/db/dictionary/dictionaryIO.C
index 1c452bafaf3c9dc1728f5fdd058012e8a8a04b41..54d2877da2a7d3ed628d14153e0bed7f61d9e025 100644
--- a/src/OpenFOAM/db/dictionary/dictionaryIO.C
+++ b/src/OpenFOAM/db/dictionary/dictionaryIO.C
@@ -28,13 +28,61 @@ License
 #include "inputModeEntry.H"
 #include "regExp.H"
 
-// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
-bool Foam::dictionary::read(Istream& is)
+Foam::dictionary::dictionary
+(
+    const fileName& name,
+    const dictionary& parentDict,
+    Istream& is
+)
+:
+    dictionaryName(parentDict.name() + "::" + name),
+    parent_(parentDict)
+{
+    read(is);
+}
+
+
+Foam::dictionary::dictionary(Istream& is)
+:
+    dictionaryName(is.name()),
+    parent_(dictionary::null)
+{
+    // Reset input mode as this is a "top-level" dictionary
+    functionEntries::inputModeEntry::clear();
+
+    read(is);
+}
+
+
+Foam::dictionary::dictionary(Istream& is, const bool keepHeader)
+:
+    dictionaryName(is.name()),
+    parent_(dictionary::null)
+{
+    // Reset input mode as this is a "top-level" dictionary
+    functionEntries::inputModeEntry::clear();
+
+    read(is, keepHeader);
+}
+
+
+// * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * //
+
+Foam::autoPtr<Foam::dictionary> Foam::dictionary::New(Istream& is)
+{
+    return autoPtr<dictionary>(new dictionary(is));
+}
+
+
+// * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * * //
+
+bool Foam::dictionary::read(Istream& is, const bool keepHeader)
 {
     if (!is.good())
     {
-        FatalIOErrorIn("dictionary::read(Istream&, const word&)", is)
+        FatalIOErrorIn("dictionary::read(Istream&, bool)", is)
             << "Istream not OK for reading dictionary "
             << exit(FatalIOError);
 
@@ -50,12 +98,15 @@ bool Foam::dictionary::read(Istream& is)
     while (!is.eof() && entry::New(*this, is))
     {}
 
-    // Remove the FoamFile header entry if it exists
-    remove("FoamFile");
+    // normally remove the FoamFile header entry if it exists
+    if (!keepHeader)
+    {
+        remove("FoamFile");
+    }
 
     if (is.bad())
     {
-        Info<< "dictionary::read(Istream&, const word&) : "
+        Info<< "dictionary::read(Istream&, bool) : "
             << "Istream not OK after reading dictionary " << name()
             << endl;
 
@@ -66,6 +117,12 @@ bool Foam::dictionary::read(Istream& is)
 }
 
 
+bool Foam::dictionary::read(Istream& is)
+{
+    return this->read(is, false);
+}
+
+
 bool Foam::dictionary::substituteKeyword(const word& keyword)
 {
     word varName = keyword(1, keyword.size()-1);
@@ -90,40 +147,6 @@ bool Foam::dictionary::substituteKeyword(const word& keyword)
 }
 
 
-// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
-
-Foam::dictionary::dictionary
-(
-    const fileName& name,
-    const dictionary& parentDict,
-    Istream& is
-)
-:
-    dictionaryName(parentDict.name() + "::" + name),
-    parent_(parentDict)
-{
-    read(is);
-}
-
-
-Foam::dictionary::dictionary(Istream& is)
-:
-    dictionaryName(is.name()),
-    parent_(dictionary::null)
-{
-    // Reset input mode as this is a "top-level" dictionary
-    functionEntries::inputModeEntry::clear();
-
-    read(is);
-}
-
-
-Foam::autoPtr<Foam::dictionary> Foam::dictionary::New(Istream& is)
-{
-    return autoPtr<dictionary>(new dictionary(is));
-}
-
-
 // * * * * * * * * * * * * * * Istream Operator  * * * * * * * * * * * * * * //
 
 Foam::Istream& Foam::operator>>(Istream& is, dictionary& dict)
@@ -145,7 +168,7 @@ void Foam::dictionary::write(Ostream& os, bool subDict) const
 {
     if (subDict)
     {
-        os << nl << indent << token::BEGIN_BLOCK << incrIndent << nl;
+        os  << nl << indent << token::BEGIN_BLOCK << incrIndent << nl;
     }
 
     forAllConstIter(IDLList<entry>, *this, iter)
@@ -153,12 +176,12 @@ void Foam::dictionary::write(Ostream& os, bool subDict) const
         const entry& e = *iter;
 
         // Write entry
-        os << e;
+        os  << e;
 
         // Add extra new line between entries for "top-level" dictionaries
         if (!subDict && parent() == dictionary::null && e != *last())
         {
-            os << nl;
+            os  << nl;
         }
 
         // Check stream before going to next entry.
@@ -173,7 +196,7 @@ void Foam::dictionary::write(Ostream& os, bool subDict) const
 
     if (subDict)
     {
-        os << decrIndent << indent << token::END_BLOCK << endl;
+        os  << decrIndent << indent << token::END_BLOCK << endl;
     }
 }
 
diff --git a/src/OpenFOAM/db/functionObjects/IOOutputFilter/IOOutputFilter.H b/src/OpenFOAM/db/functionObjects/IOOutputFilter/IOOutputFilter.H
index b4e35c43a03fba1739a17f5caedbcad8e861c3d6..daef2de16f45f9034f54bf056e8877bf0719a56e 100644
--- a/src/OpenFOAM/db/functionObjects/IOOutputFilter/IOOutputFilter.H
+++ b/src/OpenFOAM/db/functionObjects/IOOutputFilter/IOOutputFilter.H
@@ -90,7 +90,7 @@ public:
             const word& outputFilterName,
             const objectRegistry&,
             const fileName& dictName = OutputFilter::typeName() + "Dict",
-            const IOobject::readOption rOpt = IOobject::MUST_READ,
+            const IOobject::readOption rOpt = IOobject::MUST_READ_IF_MODIFIED,
             const bool loadFromFile = false
         );
 
diff --git a/src/OpenFOAM/db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.C b/src/OpenFOAM/db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.C
index 2644b0d00094d862f54e0bd68d23b9510b9ead3e..82e74c55c7602f6a935dc8091a649807ade8ac02 100644
--- a/src/OpenFOAM/db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.C
+++ b/src/OpenFOAM/db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -68,17 +68,27 @@ Foam::outputFilterOutputControl::~outputFilterOutputControl()
 
 void Foam::outputFilterOutputControl::read(const dictionary& dict)
 {
-    outputControl_ = outputControlNames_.read(dict.lookup("outputControl"));
+    if (dict.found("outputControl"))
+    {
+        outputControl_ = outputControlNames_.read(dict.lookup("outputControl"));
+    }
+    else
+    {
+        outputControl_ = ocTimeStep;
+    }
 
     switch (outputControl_)
     {
         case ocTimeStep:
         {
-            dict.lookup("outputInterval") >> outputInterval_;
+            outputInterval_ = dict.lookupOrDefault<label>("outputInterval", 0);
+            break;
         }
+
         default:
         {
             // do nothing
+            break;
         }
     }
 }
@@ -97,17 +107,21 @@ bool Foam::outputFilterOutputControl::output() const
             );
             break;
         }
+
         case ocOutputTime:
         {
             return time_.outputTime();
             break;
         }
+
         default:
         {
+            // this error should not actually be possible
             FatalErrorIn("bool Foam::outputFilterOutputControl::output()")
-                << "Unknown output control: "
+                << "Undefined output control: "
                 << outputControlNames_[outputControl_] << nl
                 << abort(FatalError);
+            break;
         }
     }
 
diff --git a/src/OpenFOAM/db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.H b/src/OpenFOAM/db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.H
index 865e4cb2c4d265c62933b13737f76147c1c135fd..3e6412f4656f4e89aad6774c9f5b4465d90896c3 100644
--- a/src/OpenFOAM/db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.H
+++ b/src/OpenFOAM/db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.H
@@ -25,6 +25,8 @@ Class
     Foam::outputFilterOutputControl
 
 Description
+    An output control for function objects.
+    The default is time-step execution at every interval.
 
 SourceFiles
     outputFilterOutputControl.C
@@ -51,10 +53,11 @@ class outputFilterOutputControl
 {
 public:
 
+    //- The output control options
     enum outputControls
     {
-        ocTimeStep,
-        ocOutputTime
+        ocTimeStep,   /*!< execution is coupled to the time-step */
+        ocOutputTime  /*!< execution is coupled to the output-time */
     };
 
 
@@ -71,7 +74,7 @@ private:
         //- Type of output
         outputControls outputControl_;
 
-        //- The execution interval (in time steps) when using TIMESTEP mode
+        //- The execution interval (in time steps) when using @c timeStep mode,
         //  a value <= 1 means execute at every time step
         label outputInterval_;
 
diff --git a/src/OpenFOAM/db/objectRegistry/objectRegistry.C b/src/OpenFOAM/db/objectRegistry/objectRegistry.C
index 30ce98564d6210ed28beffeaea0e099d00663e74..6309714e1aed5c17b95b4bd9c8a90186033f0cd0 100644
--- a/src/OpenFOAM/db/objectRegistry/objectRegistry.C
+++ b/src/OpenFOAM/db/objectRegistry/objectRegistry.C
@@ -273,7 +273,7 @@ void Foam::objectRegistry::rename(const word& newName)
 
 bool Foam::objectRegistry::modified() const
 {
-    for (const_iterator iter = cbegin(); iter != cend(); ++iter)
+    forAllConstIter(HashTable<regIOobject*>, *this, iter)
     {
         if (iter()->modified())
         {
@@ -317,7 +317,7 @@ bool Foam::objectRegistry::writeObject
 {
     bool ok = true;
 
-    for (const_iterator iter = cbegin(); iter != cend(); ++iter)
+    forAllConstIter(HashTable<regIOobject*>, *this, iter)
     {
         if (objectRegistry::debug)
         {
diff --git a/src/OpenFOAM/db/objectRegistry/objectRegistry.H b/src/OpenFOAM/db/objectRegistry/objectRegistry.H
index 10165b3e97742918742d0e3d0629bf4677b65773..512c1858ed75d77a49642326a7907795fb7061e6 100644
--- a/src/OpenFOAM/db/objectRegistry/objectRegistry.H
+++ b/src/OpenFOAM/db/objectRegistry/objectRegistry.H
@@ -173,7 +173,6 @@ public:
             //- Remove an regIOobject from registry
             bool checkOut(regIOobject&) const;
 
-
         // Reading
 
             //- Return true if any of the object's files have been modified
diff --git a/src/OpenFOAM/db/regIOobject/regIOobject.C b/src/OpenFOAM/db/regIOobject/regIOobject.C
index 22244ff8ace94e81b7cc7abc1618ab6f88c23c81..bdbd9468ce912de8f8f1214852ac6c00d0f2dd3b 100644
--- a/src/OpenFOAM/db/regIOobject/regIOobject.C
+++ b/src/OpenFOAM/db/regIOobject/regIOobject.C
@@ -45,7 +45,7 @@ Foam::regIOobject::regIOobject(const IOobject& io, const bool isTime)
     IOobject(io),
     registered_(false),
     ownedByRegistry_(false),
-    lastModified_(0),
+    watchIndex_(-1),
     eventNo_                // Do not get event for top level Time database
     (
         isTime
@@ -68,7 +68,7 @@ Foam::regIOobject::regIOobject(const regIOobject& rio)
     IOobject(rio),
     registered_(false),
     ownedByRegistry_(false),
-    lastModified_(rio.lastModified_),
+    watchIndex_(rio.watchIndex_),
     eventNo_(db().getEvent()),
     isPtr_(NULL)
 {
@@ -83,7 +83,7 @@ Foam::regIOobject::regIOobject(const regIOobject& rio, bool registerCopy)
     IOobject(rio),
     registered_(false),
     ownedByRegistry_(false),
-    lastModified_(rio.lastModified_),
+    watchIndex_(-1),
     eventNo_(db().getEvent()),
     isPtr_(NULL)
 {
@@ -133,6 +133,28 @@ bool Foam::regIOobject::checkIn()
         // any mapping
         registered_ = db().checkIn(*this);
 
+        if
+        (
+            registered_
+         && readOpt() == MUST_READ_IF_MODIFIED
+         && time().runTimeModifiable()
+        )
+        {
+            if (watchIndex_ != -1)
+            {
+                FatalErrorIn("regIOobject::checkIn()")
+                    << "Object " << objectPath()
+                    << " already watched with index " << watchIndex_
+                    << abort(FatalError);
+            }
+
+            fileName f = filePath();
+            if (f != fileName::null)
+            {
+                watchIndex_ = time().addWatch(f);
+            }
+        }
+
         // check-in on defaultRegion is allowed to fail, since subsetted meshes
         // are created with the same name as their originating mesh
         if (!registered_ && debug && name() != polyMesh::defaultRegion)
@@ -165,6 +187,12 @@ bool Foam::regIOobject::checkOut()
     if (registered_)
     {
         registered_ = false;
+
+        if (watchIndex_ != -1)
+        {
+            time().removeWatch(watchIndex_);
+            watchIndex_ = -1;
+        }
         return db().checkOut(*this);
     }
 
diff --git a/src/OpenFOAM/db/regIOobject/regIOobject.H b/src/OpenFOAM/db/regIOobject/regIOobject.H
index f3c2cc83f8bc72915e4abf609e3710d6d1796520..59e075420fe7a5a8c2c152359f0f28e2681cef76 100644
--- a/src/OpenFOAM/db/regIOobject/regIOobject.H
+++ b/src/OpenFOAM/db/regIOobject/regIOobject.H
@@ -67,8 +67,8 @@ private:
         //- Is this object owned by the registry
         bool ownedByRegistry_;
 
-        //- Time of last modification
-        mutable time_t lastModified_;
+        //- Modification watch index
+        mutable label watchIndex_;
 
         //- eventNo of last update
         label eventNo_;
@@ -209,10 +209,17 @@ public:
             //- Read object
             virtual bool read();
 
-            //- Return true if the object's file has been modified
+            //- Return file-monitoring handle
+            inline label watchIndex() const;
+
+            //- Return file-monitoring handle
+            inline label& watchIndex();
+
+            //- Return true if the object's file (or files for objectRegistry)
+            //  have been modified. (modified state is cached by Time)
             virtual bool modified() const;
 
-            //- Read object if modified
+            //- Read object if modified (as set by call to modified)
             virtual bool readIfModified();
 
 
diff --git a/src/OpenFOAM/db/regIOobject/regIOobjectI.H b/src/OpenFOAM/db/regIOobject/regIOobjectI.H
index b092d0150d13e81b884ccaebf4310f0bd9778941..47127ce86830e23d2d6b4deff5e7f277ed0fb10f 100644
--- a/src/OpenFOAM/db/regIOobject/regIOobjectI.H
+++ b/src/OpenFOAM/db/regIOobject/regIOobjectI.H
@@ -90,4 +90,16 @@ inline Foam::label& Foam::regIOobject::eventNo()
 }
 
 
+inline Foam::label Foam::regIOobject::watchIndex() const
+{
+    return watchIndex_;
+}
+
+
+inline Foam::label& Foam::regIOobject::watchIndex()
+{
+    return watchIndex_;
+}
+
+
 // ************************************************************************* //
diff --git a/src/OpenFOAM/db/regIOobject/regIOobjectRead.C b/src/OpenFOAM/db/regIOobject/regIOobjectRead.C
index 42b43a51e580a6ee2ae29083b91f4059ef63c695..a4ac896a056f2be5124725ad3157be0063c57828 100644
--- a/src/OpenFOAM/db/regIOobject/regIOobjectRead.C
+++ b/src/OpenFOAM/db/regIOobject/regIOobjectRead.C
@@ -26,7 +26,7 @@ License
 #include "regIOobject.H"
 #include "IFstream.H"
 #include "Time.H"
-#include "PstreamReduceOps.H"
+//#include "PstreamReduceOps.H"
 
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
@@ -52,14 +52,40 @@ Foam::Istream& Foam::regIOobject::readStream()
     // Construct object stream and read header if not already constructed
     if (!isPtr_)
     {
-        if (!(isPtr_ = objectStream()))
+
+        fileName objPath;
+        if (watchIndex_ != -1)
+        {
+            // File is being watched. Read exact file that is being watched.
+            objPath = time().getFile(watchIndex_);
+        }
+        else
+        {
+            // Search intelligently for file
+            objPath = filePath();
+
+            if (!objPath.size())
+            {
+                FatalIOError
+                (
+                    "regIOobject::readStream()",
+                    __FILE__,
+                    __LINE__,
+                    objectPath(),
+                    0
+                )   << "cannot find file"
+                    << exit(FatalIOError);
+            }
+        }
+
+        if (!(isPtr_ = objectStream(objPath)))
         {
             FatalIOError
             (
                 "regIOobject::readStream()",
                 __FILE__,
                 __LINE__,
-                objectPath(),
+                objPath,
                 0
             )   << "cannot open file"
                 << exit(FatalIOError);
@@ -72,9 +98,10 @@ Foam::Istream& Foam::regIOobject::readStream()
         }
     }
 
-    if (!lastModified_)
+    // Mark as uptodate if read succesfully
+    if (watchIndex_ != -1)
     {
-        lastModified_ = lastModified(filePath());
+        time().setUnmodified(watchIndex_);
     }
 
     return *isPtr_;
@@ -151,49 +178,27 @@ bool Foam::regIOobject::read()
 
 bool Foam::regIOobject::modified() const
 {
-    return
-    (
-        lastModified_
-     && lastModified(filePath()) > (lastModified_ + fileModificationSkew)
-    );
+    if (watchIndex_ != -1)
+    {
+        return time().getState(watchIndex_) != fileMonitor::UNMODIFIED;
+    }
+    else
+    {
+        return false;
+    }
 }
 
 
 bool Foam::regIOobject::readIfModified()
 {
-    if (lastModified_)
+    if (watchIndex_ != -1)
     {
-        time_t newTimeStamp = lastModified(filePath());
-
-        bool readFile = false;
-
-        if (newTimeStamp > (lastModified_ + fileModificationSkew))
-        {
-            readFile = true;
-        }
-
-        if (Pstream::parRun())
-        {
-            bool readFileOnThisProc = readFile;
-            reduce(readFile, andOp<bool>());
-
-            if (readFileOnThisProc && !readFile)
-            {
-                WarningIn("regIOobject::readIfModified()")
-                    << "Delaying reading " << name()
-                    << " of class " << headerClassName()
-                    << " due to inconsistent "
-                       "file time-stamps between processors"
-                    << endl;
-            }
-        }
-
-        if (readFile)
+        if (modified())
         {
-            lastModified_ = newTimeStamp;
+            const fileName& fName = time().getFile(watchIndex_);
             Info<< "regIOobject::readIfModified() : " << nl
-                << "    Reading object " << name()
-                << " from file " << filePath() << endl;
+                << "    Re-reading object " << name()
+                << " from file " << fName << endl;
             return read();
         }
         else
diff --git a/src/OpenFOAM/db/regIOobject/regIOobjectWrite.C b/src/OpenFOAM/db/regIOobject/regIOobjectWrite.C
index 1f2c174fb44409f3e8b0fa4ba41ca1d30462bc84..8c03003e82a514218d4952477eea10ff24b5b1d7 100644
--- a/src/OpenFOAM/db/regIOobject/regIOobjectWrite.C
+++ b/src/OpenFOAM/db/regIOobject/regIOobjectWrite.C
@@ -114,9 +114,9 @@ bool Foam::regIOobject::writeObject
 
     // Only update the lastModified_ time if this object is re-readable,
     // i.e. lastModified_ is already set
-    if (lastModified_)
+    if (watchIndex_ != -1)
     {
-        lastModified_ = lastModified(objectPath());
+        time().setUnmodified(watchIndex_);
     }
 
     return osGood;
diff --git a/src/OpenFOAM/fields/Fields/DynamicField/DynamicField.H b/src/OpenFOAM/fields/Fields/DynamicField/DynamicField.H
index a7715b245ac34d0cf375222116e7c7a698711e75..a464ac9d2243ca7dab8128e3ca8b5f0e0d3df0ff 100644
--- a/src/OpenFOAM/fields/Fields/DynamicField/DynamicField.H
+++ b/src/OpenFOAM/fields/Fields/DynamicField/DynamicField.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 2009-2010 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -175,10 +175,7 @@ public:
         inline void operator=(const tmp<DynamicField<Type> >&);
 
         //- Return element of Field.
-        inline Type& operator[](const label i);
-
-        //- Return element of constant Field.
-        inline const Type& operator[](const label) const;
+        using Field<Type>::operator[];
 
     // IOstream operators
 
diff --git a/src/OpenFOAM/fields/Fields/DynamicField/DynamicFieldI.H b/src/OpenFOAM/fields/Fields/DynamicField/DynamicFieldI.H
index b48db1520448272f169038395b37cdd9cd936b55..bc54c71fbd07242671b3ca68ce383421c42a04b3 100644
--- a/src/OpenFOAM/fields/Fields/DynamicField/DynamicFieldI.H
+++ b/src/OpenFOAM/fields/Fields/DynamicField/DynamicFieldI.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 2009-2010 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -25,15 +25,10 @@ License
 
 #include "DynamicField.H"
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
 template<class Type>
-DynamicField<Type>::DynamicField()
+Foam::DynamicField<Type>::DynamicField()
 :
     Field<Type>(),
     capacity_(0)
@@ -41,7 +36,7 @@ DynamicField<Type>::DynamicField()
 
 
 template<class Type>
-DynamicField<Type>::DynamicField(const label size)
+Foam::DynamicField<Type>::DynamicField(const label size)
 :
     Field<Type>(size),
     capacity_(Field<Type>::size())
@@ -73,7 +68,7 @@ inline Foam::DynamicField<Type>::DynamicField
 
 
 template<class Type>
-DynamicField<Type>::DynamicField
+Foam::DynamicField<Type>::DynamicField
 (
     const UList<Type>& mapF,
     const labelList& mapAddressing
@@ -85,7 +80,7 @@ DynamicField<Type>::DynamicField
 
 
 template<class Type>
-DynamicField<Type>::DynamicField
+Foam::DynamicField<Type>::DynamicField
 (
     const UList<Type>& mapF,
     const labelListList& mapAddressing,
@@ -99,7 +94,7 @@ DynamicField<Type>::DynamicField
 
 //- Construct by mapping from the given field
 template<class Type>
-DynamicField<Type>::DynamicField
+Foam::DynamicField<Type>::DynamicField
 (
     const UList<Type>& mapF,
     const FieldMapper& map
@@ -111,7 +106,7 @@ DynamicField<Type>::DynamicField
 
 
 template<class Type>
-DynamicField<Type>::DynamicField(const DynamicField<Type>& f)
+Foam::DynamicField<Type>::DynamicField(const DynamicField<Type>& f)
 :
     Field<Type>(f),
     capacity_(Field<Type>::size())
@@ -119,7 +114,7 @@ DynamicField<Type>::DynamicField(const DynamicField<Type>& f)
 
 
 template<class Type>
-DynamicField<Type>::DynamicField(DynamicField<Type>& f, bool reUse)
+Foam::DynamicField<Type>::DynamicField(DynamicField<Type>& f, bool reUse)
 :
     Field<Type>(f, reUse),
     capacity_(Field<Type>::size())
@@ -127,7 +122,7 @@ DynamicField<Type>::DynamicField(DynamicField<Type>& f, bool reUse)
 
 
 template<class Type>
-DynamicField<Type>::DynamicField(const Xfer<DynamicField<Type> >& f)
+Foam::DynamicField<Type>::DynamicField(const Xfer<DynamicField<Type> >& f)
 :
     Field<Type>(f),
     capacity_(Field<Type>::size())
@@ -137,14 +132,14 @@ DynamicField<Type>::DynamicField(const Xfer<DynamicField<Type> >& f)
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
 template<class Type>
-Foam::label DynamicField<Type>::capacity() const
+Foam::label Foam::DynamicField<Type>::capacity() const
 {
     return capacity_;
 }
 
 
 template<class Type>
-void DynamicField<Type>::append(const Type& t)
+void Foam::DynamicField<Type>::append(const Type& t)
 {
     label elemI = Field<Type>::size();
     setSize(elemI + 1);
@@ -156,7 +151,7 @@ void DynamicField<Type>::append(const Type& t)
 // * * * * * * * * * * * * * * * Member Operators  * * * * * * * * * * * * * //
 
 template<class Type>
-void DynamicField<Type>::operator=(const DynamicField<Type>& rhs)
+void Foam::DynamicField<Type>::operator=(const DynamicField<Type>& rhs)
 {
     if (this == &rhs)
     {
@@ -171,7 +166,7 @@ void DynamicField<Type>::operator=(const DynamicField<Type>& rhs)
 
 
 template<class Type>
-void DynamicField<Type>::operator=(const UList<Type>& rhs)
+void Foam::DynamicField<Type>::operator=(const UList<Type>& rhs)
 {
     Field<Type>::operator=(rhs);
     capacity_ = Field<Type>::size();
@@ -179,7 +174,7 @@ void DynamicField<Type>::operator=(const UList<Type>& rhs)
 
 
 template<class Type>
-void DynamicField<Type>::operator=(const tmp<DynamicField>& rhs)
+void Foam::DynamicField<Type>::operator=(const tmp<DynamicField>& rhs)
 {
     if (this == &(rhs()))
     {
@@ -196,25 +191,7 @@ void DynamicField<Type>::operator=(const tmp<DynamicField>& rhs)
 }
 
 
-template<class Type>
-Type& DynamicField<Type>::operator[](const label i)
-{
-    return Field<Type>::operator[](i);
-}
-
-
-template<class Type>
-const Type& DynamicField<Type>::operator[](const label i) const
-{
-    return Field<Type>::operator[](i);
-}
-
-
 // * * * * * * * * * * * * * * * IOstream Operator * * * * * * * * * * * * * //
 
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-} // End namespace Foam
-
 // ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/diagTensorField/diagTensorFieldIOField.C b/src/OpenFOAM/fields/Fields/diagTensorField/diagTensorFieldIOField.C
new file mode 100644
index 0000000000000000000000000000000000000000..71690e22ce0a9541282ec4e26ffca6af15f054c6
--- /dev/null
+++ b/src/OpenFOAM/fields/Fields/diagTensorField/diagTensorFieldIOField.C
@@ -0,0 +1,50 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Description
+    diagTensorField with IO.
+
+\*---------------------------------------------------------------------------*/
+
+#include "diagTensorFieldIOField.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTemplateTypeNameAndDebugWithName
+    (
+        diagTensorFieldIOField,
+        "diagTensorFieldField",
+        0
+    );
+
+    defineTemplateTypeNameAndDebugWithName
+    (
+        diagTensorIOFieldField,
+        "diagTensorCompactFieldField",
+        0
+    );
+}
+
+// ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/diagTensorField/diagTensorFieldIOField.H b/src/OpenFOAM/fields/Fields/diagTensorField/diagTensorFieldIOField.H
new file mode 100644
index 0000000000000000000000000000000000000000..b116463c73c4332c5381951c3e6fd9d5a8df354a
--- /dev/null
+++ b/src/OpenFOAM/fields/Fields/diagTensorField/diagTensorFieldIOField.H
@@ -0,0 +1,51 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Typedef
+    Foam::diagTensorFieldIOField
+
+Description
+    diagTensorFieldField with IO.
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef diagTensorFieldIOField_H
+#define diagTensorFieldIOField_H
+
+#include "diagTensorField.H"
+#include "IOField.H"
+#include "IOFieldField.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    typedef IOField<diagTensorField> diagTensorFieldIOField;
+    typedef IOFieldField<diagTensorField, diagTensor> diagTensorIOFieldField;
+}
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/sphericalTensorField/sphericalTensorFieldIOField.C b/src/OpenFOAM/fields/Fields/sphericalTensorField/sphericalTensorFieldIOField.C
new file mode 100644
index 0000000000000000000000000000000000000000..13506e0537e2346c95b98b968272cca19f728f6e
--- /dev/null
+++ b/src/OpenFOAM/fields/Fields/sphericalTensorField/sphericalTensorFieldIOField.C
@@ -0,0 +1,50 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Description
+    sphericalTensorField with IO.
+
+\*---------------------------------------------------------------------------*/
+
+#include "sphericalTensorFieldIOField.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTemplateTypeNameAndDebugWithName
+    (
+        sphericalTensorFieldIOField,
+        "sphericalTensorFieldField",
+        0
+    );
+
+    defineTemplateTypeNameAndDebugWithName
+    (
+        sphericalTensorIOFieldField,
+        "sphericalTensorCompactFieldField",
+        0
+    );
+}
+
+// ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/sphericalTensorField/sphericalTensorFieldIOField.H b/src/OpenFOAM/fields/Fields/sphericalTensorField/sphericalTensorFieldIOField.H
new file mode 100644
index 0000000000000000000000000000000000000000..8ba5b47ad952bc5e49ff289e46dec023e9b1ad3a
--- /dev/null
+++ b/src/OpenFOAM/fields/Fields/sphericalTensorField/sphericalTensorFieldIOField.H
@@ -0,0 +1,53 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Typedef
+    Foam::sphericalTensorFieldIOField
+
+Description
+    sphericalTensorFieldField with IO.
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef sphericalTensorFieldIOField_H
+#define sphericalTensorFieldIOField_H
+
+#include "sphericalTensorField.H"
+#include "IOField.H"
+#include "IOFieldField.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    typedef IOField<sphericalTensorField> sphericalTensorFieldIOField;
+
+    typedef IOFieldField<sphericalTensorField, sphericalTensor>
+    sphericalTensorIOFieldField;
+}
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/sphericalTensorField/sphericalTensorIOField.C b/src/OpenFOAM/fields/Fields/sphericalTensorField/sphericalTensorIOField.C
index fd0370a0a86cf3ae67ea8846f27b02f3202d9451..f3eca5026b912ec8849848c35dcd9953f1713434 100644
--- a/src/OpenFOAM/fields/Fields/sphericalTensorField/sphericalTensorIOField.C
+++ b/src/OpenFOAM/fields/Fields/sphericalTensorField/sphericalTensorIOField.C
@@ -32,7 +32,12 @@ Description
 
 namespace Foam
 {
-    defineTemplateTypeNameAndDebugWithName(sphericalTensorIOField, "sphericalTensorField", 0);
+    defineTemplateTypeNameAndDebugWithName
+    (
+        sphericalTensorIOField,
+        "sphericalTensorField",
+        0
+    );
 }
 
 // ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorFieldIOField.C b/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorFieldIOField.C
new file mode 100644
index 0000000000000000000000000000000000000000..b19ed85f6d38109ac198bb5e1db0d42df40ccd98
--- /dev/null
+++ b/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorFieldIOField.C
@@ -0,0 +1,50 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Description
+    symmTensorField with IO.
+
+\*---------------------------------------------------------------------------*/
+
+#include "symmTensorFieldIOField.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTemplateTypeNameAndDebugWithName
+    (
+        symmTensorFieldIOField,
+        "symmTensorFieldField",
+        0
+    );
+
+    defineTemplateTypeNameAndDebugWithName
+    (
+        symmTensorIOFieldField,
+        "symmTensorCompactFieldField",
+        0
+    );
+}
+
+// ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorFieldIOField.H b/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorFieldIOField.H
new file mode 100644
index 0000000000000000000000000000000000000000..5cb8ca000b4873da5d6c2b6eba4162eb4a3f60f6
--- /dev/null
+++ b/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorFieldIOField.H
@@ -0,0 +1,51 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Typedef
+    Foam::symmTensorFieldIOField
+
+Description
+    symmTensorFieldField with IO.
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef symmTensorFieldIOField_H
+#define symmTensorFieldIOField_H
+
+#include "symmTensorField.H"
+#include "IOField.H"
+#include "IOFieldField.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    typedef IOField<symmTensorField> symmTensorFieldIOField;
+    typedef IOFieldField<symmTensorField, symmTensor> symmTensorIOFieldField;
+}
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/tensorField/tensorFieldIOField.C b/src/OpenFOAM/fields/Fields/tensorField/tensorFieldIOField.C
new file mode 100644
index 0000000000000000000000000000000000000000..0e0aa60c23f8d48d9b94cff720dc3b2daf84a32c
--- /dev/null
+++ b/src/OpenFOAM/fields/Fields/tensorField/tensorFieldIOField.C
@@ -0,0 +1,50 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Description
+    tensorField with IO.
+
+\*---------------------------------------------------------------------------*/
+
+#include "tensorFieldIOField.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTemplateTypeNameAndDebugWithName
+    (
+        tensorFieldIOField,
+        "tensorFieldField",
+        0
+    );
+
+    defineTemplateTypeNameAndDebugWithName
+    (
+        tensorIOFieldField,
+        "tensorCompactFieldField",
+        0
+    );
+}
+
+// ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/tensorField/tensorFieldIOField.H b/src/OpenFOAM/fields/Fields/tensorField/tensorFieldIOField.H
new file mode 100644
index 0000000000000000000000000000000000000000..63ae540df09cdfc7d777c586badc1cc8416226b5
--- /dev/null
+++ b/src/OpenFOAM/fields/Fields/tensorField/tensorFieldIOField.H
@@ -0,0 +1,51 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Typedef
+    Foam::tensorFieldIOField
+
+Description
+    tensorFieldField with IO.
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef tensorFieldIOField_H
+#define tensorFieldIOField_H
+
+#include "tensorField.H"
+#include "IOField.H"
+#include "IOFieldField.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    typedef IOField<tensorField> tensorFieldIOField;
+    typedef IOFieldField<tensorField, tensor> tensorIOFieldField;
+}
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/vector2DField/vector2DFieldIOField.C b/src/OpenFOAM/fields/Fields/vector2DField/vector2DFieldIOField.C
new file mode 100644
index 0000000000000000000000000000000000000000..13615a5e4c0f1e746970bb6782ca57b9e523a44c
--- /dev/null
+++ b/src/OpenFOAM/fields/Fields/vector2DField/vector2DFieldIOField.C
@@ -0,0 +1,50 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Description
+    vector2DField with IO.
+
+\*---------------------------------------------------------------------------*/
+
+#include "vector2DFieldIOField.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTemplateTypeNameAndDebugWithName
+    (
+        vector2DFieldIOField,
+        "vector2DFieldField",
+        0
+    );
+
+    defineTemplateTypeNameAndDebugWithName
+    (
+        vector2DIOFieldField,
+        "vector2DCompactFieldField",
+        0
+    );
+}
+
+// ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/vector2DField/vector2DFieldIOField.H b/src/OpenFOAM/fields/Fields/vector2DField/vector2DFieldIOField.H
new file mode 100644
index 0000000000000000000000000000000000000000..a559521b1a426cd5f4fcaa921aed9c2be33a8457
--- /dev/null
+++ b/src/OpenFOAM/fields/Fields/vector2DField/vector2DFieldIOField.H
@@ -0,0 +1,51 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Typedef
+    Foam::vector2DFieldIOField
+
+Description
+    vector2DFieldField with IO.
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef vector2DFieldIOField_H
+#define vector2DFieldIOField_H
+
+#include "vector2DField.H"
+#include "IOField.H"
+#include "IOFieldField.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    typedef IOField<vector2DField> vector2DFieldIOField;
+    typedef IOFieldField<vector2DField, vector2D> vector2DIOFieldField;
+}
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/OpenFOAM/fields/Fields/vector2DField/vector2DIOField.C b/src/OpenFOAM/fields/Fields/vector2DField/vector2DIOField.C
index 646b4fd9d2e1a8f3e5e208ba96741df9d8de82f3..9f07c4a0d8dd28c86eebd80be78cfb0acdf14a37 100644
--- a/src/OpenFOAM/fields/Fields/vector2DField/vector2DIOField.C
+++ b/src/OpenFOAM/fields/Fields/vector2DField/vector2DIOField.C
@@ -32,7 +32,12 @@ Description
 
 namespace Foam
 {
-    defineTemplateTypeNameAndDebugWithName(vector2DIOField, "vector2DField", 0);
+    defineTemplateTypeNameAndDebugWithName
+    (
+        vector2DIOField,
+        "vector2DField",
+        0
+    );
 }
 
 // ************************************************************************* //
diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C
index f420291fd6bcc08adb2285b125fade918f5bb0ac..286d1721bee3062df7e7379ea389f6c3db502188 100644
--- a/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C
+++ b/src/OpenFOAM/fields/GeometricFields/GeometricField/GeometricField.C
@@ -112,12 +112,16 @@ Foam::GeometricField<Type, PatchField, GeoMesh>::readField(Istream& is)
 template<class Type, template<class> class PatchField, class GeoMesh>
 bool Foam::GeometricField<Type, PatchField, GeoMesh>::readIfPresent()
 {
-    if (this->readOpt() == IOobject::MUST_READ)
+    if
+    (
+        this->readOpt() == IOobject::MUST_READ
+     || this->readOpt() == IOobject::MUST_READ_IF_MODIFIED
+    )
     {
         WarningIn
         (
             "GeometricField<Type, PatchField, GeoMesh>::readIfPresent()"
-        )   << "read option IOobject::MUST_READ "
+        )   << "read option IOobject::MUST_READ or MUST_READ_IF_MODIFIED"
             << "suggests that a read constructor for field " << this->name()
             << " would be more appropriate." << endl;
     }
diff --git a/src/OpenFOAM/global/argList/argList.C b/src/OpenFOAM/global/argList/argList.C
index 82c6ff47c95145c5dec3ec5418f4a44b257824d4..6fc06a69cc689084042d493cf17f3e201e683975 100644
--- a/src/OpenFOAM/global/argList/argList.C
+++ b/src/OpenFOAM/global/argList/argList.C
@@ -28,7 +28,6 @@ License
 #include "clock.H"
 #include "IFstream.H"
 #include "dictionary.H"
-#include "Switch.H"
 #include "IOobject.H"
 #include "JobInfo.H"
 #include "labelList.H"
@@ -564,7 +563,7 @@ Foam::argList::argList
             }
 
             // distributed data
-            if (decompDict.lookupOrDefault<Switch>("distributed", false))
+            if (decompDict.lookupOrDefault("distributed", false))
             {
                 fileNameList roots;
                 decompDict.lookup("roots") >> roots;
diff --git a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.H b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.H
index 924c1e51f0e7cf1adc91ad500726d6cf9f7844a3..9f3ef88a9ae7f58b8c8e06fe9031ecfd568f5b0e 100644
--- a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.H
+++ b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.H
@@ -145,6 +145,20 @@ public:
                 return solverName_;
             }
 
+            //- Return solver name
+            word& solverName()
+            {
+                return solverName_;
+            }
+
+
+            //- Return field name
+            const word& fieldName() const
+            {
+                return fieldName_;
+            }
+
+
             //- Return initial residual
             scalar initialResidual() const
             {
@@ -209,6 +223,10 @@ public:
             //- Print summary of solver performance
             void print() const;
 
+        // Member Operators
+
+            bool operator!=(const solverPerformance&) const;
+
 
         // Friend functions
 
@@ -222,6 +240,7 @@ public:
 
         // Ostream Operator
 
+            friend Istream& operator>>(Istream&, solverPerformance&);
             friend Ostream& operator<<(Ostream&, const solverPerformance&);
     };
 
diff --git a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixTests.C b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixTests.C
index 6ec7861bc815d4bfadb2318b7d17b11b5dbef4be..09d8258ba586910f8ae9daf2d2ad0c2a5ad3b281 100644
--- a/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixTests.C
+++ b/src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrixTests.C
@@ -32,15 +32,7 @@ Description
 
 Foam::lduMatrix::solverPerformance::solverPerformance(Istream& is)
 {
-    is.readBeginList("lduMatrix::solverPerformance");
-    is  >> solverName_
-        >> fieldName_
-        >> initialResidual_
-        >> finalResidual_
-        >> noIterations_
-        >> converged_
-        >> singular_;
-    is.readEndList("lduMatrix::solverPerformance");
+    is  >> *this;
 }
 
 
@@ -118,6 +110,24 @@ void Foam::lduMatrix::solverPerformance::print() const
 }
 
 
+bool Foam::lduMatrix::solverPerformance::operator!=
+(
+    const lduMatrix::solverPerformance& sp
+) const
+{
+    return
+    (
+        solverName()      != sp.solverName()
+     || fieldName()       != sp.fieldName()
+     || initialResidual() != sp.initialResidual()
+     || finalResidual()   != sp.finalResidual()
+     || nIterations()     != sp.nIterations()
+     || converged()       != sp.converged()
+     || singular()        != sp.singular()
+    );
+}
+
+
 Foam::lduMatrix::solverPerformance Foam::max
 (
     const lduMatrix::solverPerformance& sp1,
@@ -137,6 +147,26 @@ Foam::lduMatrix::solverPerformance Foam::max
 }
 
 
+Foam::Istream& Foam::operator>>
+(
+    Istream& is,
+    Foam::lduMatrix::solverPerformance& sp
+)
+{
+    is.readBeginList("lduMatrix::solverPerformance");
+    is  >> sp.solverName_
+        >> sp.fieldName_
+        >> sp.initialResidual_
+        >> sp.finalResidual_
+        >> sp.noIterations_
+        >> sp.converged_
+        >> sp.singular_;
+    is.readEndList("lduMatrix::solverPerformance");
+
+    return is;
+}
+
+
 Foam::Ostream& Foam::operator<<
 (
     Ostream& os,
diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolver.H b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolver.H
index 54908a720d6bfcf31c09cba32b92f476670cddb7..d0287653cfc2ad5108fb8fa0a80da75a088fe60d 100644
--- a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolver.H
+++ b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/GAMGSolver.H
@@ -58,7 +58,6 @@ SourceFiles
 #include "labelField.H"
 #include "primitiveFields.H"
 #include "LUscalarMatrix.H"
-#include "Switch.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
@@ -75,7 +74,7 @@ class GAMGSolver
 {
     // Private data
 
-        Switch cacheAgglomeration_;
+        bool cacheAgglomeration_;
 
         //- Number of pre-smoothing sweeps
         label nPreSweeps_;
diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/interfaces/cyclicGAMGInterface/cyclicGAMGInterface.C b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/interfaces/cyclicGAMGInterface/cyclicGAMGInterface.C
index 2aac532ce1665084f5c9d0d44a9a28447874ce7c..29ab1a93a9fd3650fe10da5e2ce8ef7946eb9d41 100644
--- a/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/interfaces/cyclicGAMGInterface/cyclicGAMGInterface.C
+++ b/src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/interfaces/cyclicGAMGInterface/cyclicGAMGInterface.C
@@ -76,7 +76,7 @@ Foam::cyclicGAMGInterface::cyclicGAMGInterface
 
     label nCoarseFaces = 0;
 
-    forAll (localRestrictAddressing, ffi)
+    forAll(localRestrictAddressing, ffi)
     {
         label curMaster = -1;
         label curSlave = -1;
@@ -164,7 +164,7 @@ Foam::cyclicGAMGInterface::cyclicGAMGInterface
     if (owner())
     {
         // On master side, the owner addressing is stored in table of contents
-        forAll (contents, masterI)
+        forAll(contents, masterI)
         {
             SLList<label>& curNbrs = neighboursTable.find(contents[masterI])();
 
@@ -200,7 +200,7 @@ Foam::cyclicGAMGInterface::cyclicGAMGInterface
     else
     {
         // On slave side, the owner addressing is stored in linked lists
-        forAll (contents, masterI)
+        forAll(contents, masterI)
         {
             SLList<label>& curNbrs = neighboursTable.find(contents[masterI])();
 
diff --git a/src/OpenFOAM/matrices/solution/solution.C b/src/OpenFOAM/matrices/solution/solution.C
index 5aa40ae572e19d245c9fe683fe625ccbda38a4fa..ba796d401a0ccc2673381c644a6bdaea8fde4a20 100644
--- a/src/OpenFOAM/matrices/solution/solution.C
+++ b/src/OpenFOAM/matrices/solution/solution.C
@@ -54,7 +54,7 @@ Foam::solution::solution(const objectRegistry& obr, const fileName& dictName)
             dictName,
             obr.time().system(),
             obr,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -255,7 +255,7 @@ bool Foam::solution::read()
         if (dict.found("cache"))
         {
             cache_ = dict.subDict("cache");
-            caching_ = cache_.lookupOrDefault<Switch>("active", true);
+            caching_ = cache_.lookupOrDefault("active", true);
         }
 
         if (dict.found("relaxationFactors"))
diff --git a/src/OpenFOAM/matrices/solution/solution.H b/src/OpenFOAM/matrices/solution/solution.H
index a2e06b19de4d3c469e621927da9f9fff4fdb9c41..8a24ca0eb445331b62a169fdd73fb01f7a5b285b 100644
--- a/src/OpenFOAM/matrices/solution/solution.H
+++ b/src/OpenFOAM/matrices/solution/solution.H
@@ -36,7 +36,6 @@ SourceFiles
 #define solution_H
 
 #include "IOdictionary.H"
-#include "Switch.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
@@ -57,7 +56,7 @@ class solution
         dictionary cache_;
 
         //- Switch for the caching mechanism
-        Switch caching_;
+        bool caching_;
 
         //- Dictionary of relaxation factors for all the fields
         dictionary relaxationFactors_;
diff --git a/src/OpenFOAM/matrices/tolerances/tolerances.C b/src/OpenFOAM/matrices/tolerances/tolerances.C
index 9becd91b604b5c4ff02148cbc8a14d8490cffa81..ff70e0b93ae748ec6ec51835c823d4cd4f303f3d 100644
--- a/src/OpenFOAM/matrices/tolerances/tolerances.C
+++ b/src/OpenFOAM/matrices/tolerances/tolerances.C
@@ -36,7 +36,7 @@ Foam::tolerances::tolerances(const Time& t, const fileName& dictName)
             dictName,
             t.system(),
             t,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/src/OpenFOAM/meshes/ProcessorTopology/ProcessorTopology.C b/src/OpenFOAM/meshes/ProcessorTopology/ProcessorTopology.C
index 85736f52e51b099255e17e07a315b150c0b65807..9aebf1d43d5caeacce5f33f721c6f8280d8f3cc0 100644
--- a/src/OpenFOAM/meshes/ProcessorTopology/ProcessorTopology.C
+++ b/src/OpenFOAM/meshes/ProcessorTopology/ProcessorTopology.C
@@ -27,6 +27,7 @@ License
 #include "ListOps.H"
 #include "Pstream.H"
 #include "commSchedule.H"
+#include "boolList.H"
 
 // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
 
@@ -42,6 +43,8 @@ Foam::labelList Foam::ProcessorTopology<Patch, ProcPatch>::procNeighbours
 
     label maxNb = 0;
 
+    boolList isNeighbourProc(Pstream::nProcs(), false);
+
     forAll(patches, patchi)
     {
         const Patch& patch = patches[patchi];
@@ -51,19 +54,34 @@ Foam::labelList Foam::ProcessorTopology<Patch, ProcPatch>::procNeighbours
             const ProcPatch& procPatch =
                 refCast<const ProcPatch>(patch);
 
-            nNeighbours++;
+            label pNeighbProcNo = procPatch.neighbProcNo();
+
+            if (!isNeighbourProc[pNeighbProcNo])
+            {
+                nNeighbours++;
+
+                maxNb = max(maxNb, procPatch.neighbProcNo());
 
-            maxNb = max(maxNb, procPatch.neighbProcNo());
+                isNeighbourProc[pNeighbProcNo] = true;
+            }
         }
     }
 
-    labelList neighbours(nNeighbours);
+    labelList neighbours(nNeighbours, -1);
+
+    nNeighbours = 0;
+
+    forAll(isNeighbourProc, procI)
+    {
+        if (isNeighbourProc[procI])
+        {
+            neighbours[nNeighbours++] = procI;
+        }
+    }
 
     procPatchMap_.setSize(maxNb + 1);
     procPatchMap_ = -1;
 
-    nNeighbours = 0;
-
     forAll(patches, patchi)
     {
         const Patch& patch = patches[patchi];
@@ -73,8 +91,6 @@ Foam::labelList Foam::ProcessorTopology<Patch, ProcPatch>::procNeighbours
             const ProcPatch& procPatch =
                 refCast<const ProcPatch>(patch);
 
-            neighbours[nNeighbours++] = procPatch.neighbProcNo();
-
             // Construct reverse map
             procPatchMap_[procPatch.neighbProcNo()] = patchi;
         }
diff --git a/src/OpenFOAM/meshes/ProcessorTopology/ProcessorTopology.H b/src/OpenFOAM/meshes/ProcessorTopology/ProcessorTopology.H
index 2bb37934c66259d06b0f9347da5249202f1d0481..d50ba659c45c67b3be559e24cada8b5f2e838c8a 100644
--- a/src/OpenFOAM/meshes/ProcessorTopology/ProcessorTopology.H
+++ b/src/OpenFOAM/meshes/ProcessorTopology/ProcessorTopology.H
@@ -30,6 +30,9 @@ Description
 
     *this[procI] gives the list of neighbouring processors.
 
+    TODO: This does not currently correctly support multiple processor
+    patches connecting two processors.
+
 SourceFiles
     ProcessorTopology.C
 
diff --git a/src/OpenFOAM/meshes/data/data.C b/src/OpenFOAM/meshes/data/data.C
index 6e8813f7792557f04e3e6c2ebb8a9d07b10fe196..c3c8182ebce3551aaf66b9ef5cb44e8fae09e175 100644
--- a/src/OpenFOAM/meshes/data/data.C
+++ b/src/OpenFOAM/meshes/data/data.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -45,7 +45,8 @@ Foam::data::data(const objectRegistry& obr)
             IOobject::NO_READ,
             IOobject::NO_WRITE
         )
-    )
+    ),
+    prevTimeIndex_(0)
 {
     set("solverPerformance", dictionary());
 }
@@ -65,7 +66,34 @@ void Foam::data::setSolverPerformance
     const lduMatrix::solverPerformance& sp
 ) const
 {
-    const_cast<dictionary&>(solverPerformanceDict()).set(name, sp);
+    dictionary& dict = const_cast<dictionary&>(solverPerformanceDict());
+
+    List<lduMatrix::solverPerformance> perfs;
+
+    if (prevTimeIndex_ != this->time().timeIndex())
+    {
+        // reset solver performance between iterations
+        prevTimeIndex_ = this->time().timeIndex();
+        dict.clear();
+    }
+    else
+    {
+        dict.readIfPresent(name, perfs);
+    }
+
+    // append to list
+    perfs.setSize(perfs.size()+1, sp);
+
+    dict.set(name, perfs);
+}
+
+
+void Foam::data::setSolverPerformance
+(
+    const lduMatrix::solverPerformance& sp
+) const
+{
+    setSolverPerformance(sp.fieldName(), sp);
 }
 
 
diff --git a/src/OpenFOAM/meshes/data/data.H b/src/OpenFOAM/meshes/data/data.H
index c8e6f98421c5f2cc5d772b79179e017aa9055be0..257434d3e19e0fa6bdc9b398552fe99cff03f8e1 100644
--- a/src/OpenFOAM/meshes/data/data.H
+++ b/src/OpenFOAM/meshes/data/data.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -47,13 +47,19 @@ namespace Foam
 {
 
 /*---------------------------------------------------------------------------*\
-                           Class data Declaration
+                            Class data Declaration
 \*---------------------------------------------------------------------------*/
 
 class data
 :
     public IOdictionary
 {
+    // Private data
+
+        //- Previously used time-index, used for reset between iterations
+        mutable label prevTimeIndex_;
+
+
     // Private Member Functions
 
         //- Disallow default bitwise copy construct
@@ -90,6 +96,12 @@ public:
                 const word& name,
                 const lduMatrix::solverPerformance&
             ) const;
+
+            //- Add/set the solverPerformance entry, using its fieldName
+            void setSolverPerformance
+            (
+                const lduMatrix::solverPerformance&
+            ) const;
 };
 
 
diff --git a/src/OpenFOAM/meshes/pointMesh/pointPatches/constraint/processorCyclic/processorCyclicPointPatch.C b/src/OpenFOAM/meshes/pointMesh/pointPatches/constraint/processorCyclic/processorCyclicPointPatch.C
index 363ae015dca105ad388857eaa8e658d860ddab70..a5fcf1721a7aa404471e7baedd27046cc71db77a 100644
--- a/src/OpenFOAM/meshes/pointMesh/pointPatches/constraint/processorCyclic/processorCyclicPointPatch.C
+++ b/src/OpenFOAM/meshes/pointMesh/pointPatches/constraint/processorCyclic/processorCyclicPointPatch.C
@@ -69,7 +69,7 @@ addToRunTimeSelectionTable
 //
 //        faceList masterFaces(pp.size());
 //
-//        forAll (pp, faceI)
+//        forAll(pp, faceI)
 //        {
 //            masterFaces[faceI] = pp[faceI].reverseFace();
 //        }
@@ -119,13 +119,13 @@ addToRunTimeSelectionTable
 //
 //        label noFiltPoints = 0;
 //
-//        forAll (meshPoints_, pointI)
+//        forAll(meshPoints_, pointI)
 //        {
 //            label curP = meshPoints_[pointI];
 //
 //            bool found = false;
 //
-//            forAll (sharedPoints, sharedI)
+//            forAll(sharedPoints, sharedI)
 //            {
 //                if (sharedPoints[sharedI] == curP)
 //                {
@@ -165,7 +165,7 @@ addToRunTimeSelectionTable
 //    // Create a HashSet of the point labels for this patch
 //    Map<label> patchPointSet(2*ppmp.size());
 //
-//    forAll (ppmp, ppi)
+//    forAll(ppmp, ppi)
 //    {
 //        patchPointSet.insert(ppmp[ppi], ppi);
 //    }
@@ -296,7 +296,7 @@ addToRunTimeSelectionTable
 //            // Create a HashSet of the point labels for the patch
 //            Map<label> patchPointSet(2*fmp.size());
 //
-//            forAll (fmp, ppi)
+//            forAll(fmp, ppi)
 //            {
 //                patchPointSet.insert(fmp[ppi], ppi);
 //            }
diff --git a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.C b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.C
index 03070256454ae90fbeb3ae719b399b3ddb3e166e..73b0b3fec142b250960aab909ae97a1a03e85e18 100644
--- a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.C
+++ b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.C
@@ -1164,7 +1164,7 @@ Foam::labelList Foam::globalPoints::reverseMeshPoints
 
     faceList masterFaces(nbrPatch.size());
 
-    forAll (nbrPatch, faceI)
+    forAll(nbrPatch, faceI)
     {
         masterFaces[faceI] = nbrPatch[faceI].reverseFace();
     }
diff --git a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C
index f23a05879f63f1b6a85096743241b4e9aeb94142..3a1ff00b32c9c199dc077f00e524df8817c22ec3 100644
--- a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C
+++ b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C
@@ -62,8 +62,27 @@ Foam::polyBoundaryMesh::polyBoundaryMesh
     regIOobject(io),
     mesh_(mesh)
 {
-    if (readOpt() == IOobject::MUST_READ)
+    if
+    (
+        readOpt() == IOobject::MUST_READ
+     || readOpt() == IOobject::MUST_READ_IF_MODIFIED
+    )
     {
+        if (readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+        {
+            WarningIn
+            (
+                "polyBoundaryMesh::polyBoundaryMesh\n"
+                "(\n"
+                "    const IOobject&,\n"
+                "    const polyMesh&\n"
+                ")"
+            )   << "Specified IOobject::MUST_READ_IF_MODIFIED but class"
+                << " does not support automatic rereading."
+                << endl;
+        }
+
+
         polyPatchList& patches = *this;
 
         // Read polyPatchList
diff --git a/src/OpenFOAM/meshes/polyMesh/polyMesh.C b/src/OpenFOAM/meshes/polyMesh/polyMesh.C
index d0b3a7fa6642fcbc1f765ec90814e79c56ee659e..0ed5f56200f5630b1ac968f2e68670b6d856ad37 100644
--- a/src/OpenFOAM/meshes/polyMesh/polyMesh.C
+++ b/src/OpenFOAM/meshes/polyMesh/polyMesh.C
@@ -85,6 +85,9 @@ void Foam::polyMesh::calcDirections() const
         }
     }
 
+    reduce(nEmptyPatches, maxOp<label>());
+    reduce(nWedgePatches, maxOp<label>());
+
     if (nEmptyPatches)
     {
         reduce(emptyDirVec, sumOp<vector>());
diff --git a/src/OpenFOAM/meshes/polyMesh/polyMeshFromShapeMesh.C b/src/OpenFOAM/meshes/polyMesh/polyMeshFromShapeMesh.C
index 3898cd43f094e243c74db795c6536c172f5f5461..4657cfc5c878bee717a7cfc6e998b82d2acd3cf6 100644
--- a/src/OpenFOAM/meshes/polyMesh/polyMeshFromShapeMesh.C
+++ b/src/OpenFOAM/meshes/polyMesh/polyMeshFromShapeMesh.C
@@ -856,7 +856,7 @@ Foam::polyMesh::polyMesh
 
     // Warning: Patches can only be added once the face list is
     // completed, as they hold a subList of the face list
-    forAll (boundaryFaces, patchI)
+    forAll(boundaryFaces, patchI)
     {
         dictionary patchDict(boundaryDicts[patchI]);
 
diff --git a/src/OpenFOAM/meshes/polyMesh/polyPatches/constraint/cyclic/cyclicPolyPatch.C b/src/OpenFOAM/meshes/polyMesh/polyPatches/constraint/cyclic/cyclicPolyPatch.C
index 661028ae178f1be8d892da1c8d6f8ff45df7e2ca..963c5f9a0ce5be4987980230f765d79f651c1e69 100644
--- a/src/OpenFOAM/meshes/polyMesh/polyPatches/constraint/cyclic/cyclicPolyPatch.C
+++ b/src/OpenFOAM/meshes/polyMesh/polyPatches/constraint/cyclic/cyclicPolyPatch.C
@@ -44,10 +44,10 @@ namespace Foam
 
     addToRunTimeSelectionTable(polyPatch, cyclicPolyPatch, word);
     addToRunTimeSelectionTable(polyPatch, cyclicPolyPatch, dictionary);
-
+}
 
 template<>
-const char* NamedEnum<cyclicPolyPatch::transformType, 4>::names[] =
+const char* Foam::NamedEnum<Foam::cyclicPolyPatch::transformType, 4>::names[] =
 {
     "unknown",
     "rotational",
@@ -55,9 +55,8 @@ const char* NamedEnum<cyclicPolyPatch::transformType, 4>::names[] =
     "noOrdering"
 };
 
-const NamedEnum<cyclicPolyPatch::transformType, 4>
-    cyclicPolyPatch::transformTypeNames;
-}
+const Foam::NamedEnum<Foam::cyclicPolyPatch::transformType, 4>
+    Foam::cyclicPolyPatch::transformTypeNames;
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.C b/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.C
index fe1c6de03ec9a9ca370ce1ec67093e48930e7f88..babb31b6e85c8900ac78b1f95b6c534a7818afea 100644
--- a/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.C
+++ b/src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.C
@@ -86,9 +86,24 @@ Foam::ZoneMesh<ZoneType, MeshType>::ZoneMesh
     if
     (
         readOpt() == IOobject::MUST_READ
+     || readOpt() == IOobject::MUST_READ_IF_MODIFIED
      || (readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
+        if (readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+        {
+            WarningIn
+            (
+                "ZoneMesh::ZoneMesh\n"
+                "(\n"
+                "    const IOobject&,\n"
+                "    const MeshType&\n"
+                ")"
+            )   << "Specified IOobject::MUST_READ_IF_MODIFIED but class"
+                << " does not support automatic rereading."
+                << endl;
+        }
+
         PtrList<ZoneType>& zones = *this;
 
         // Read zones
diff --git a/src/OpenFOAM/meshes/polyMesh/zones/faceZone/faceZone.C b/src/OpenFOAM/meshes/polyMesh/zones/faceZone/faceZone.C
index ddda6efaf96248e2496a015db334b128fa3a4e6e..cfc23d06b319ad37f9cd0fa5118e6a3616b61bfe 100644
--- a/src/OpenFOAM/meshes/polyMesh/zones/faceZone/faceZone.C
+++ b/src/OpenFOAM/meshes/polyMesh/zones/faceZone/faceZone.C
@@ -498,10 +498,9 @@ bool Foam::faceZone::checkParallelSync(const bool report) const
                         break;
                     }
                 }
-
-                // Flip state should be opposite.
-                if (myZoneFlip[bFaceI] == neiZoneFlip[bFaceI])
+                else if (myZoneFlip[bFaceI] == neiZoneFlip[bFaceI])
                 {
+                    // Flip state should be opposite.
                     hasError = true;
 
                     if (report)
diff --git a/src/dummyThirdParty/metisDecomp/dummyMetisDecomp.C b/src/dummyThirdParty/metisDecomp/dummyMetisDecomp.C
index e7b61fd28dbf58cb596661879ce1f03c72c36239..4be4cd995b80591e38f21dfaa7484ad501b7e7f9 100644
--- a/src/dummyThirdParty/metisDecomp/dummyMetisDecomp.C
+++ b/src/dummyThirdParty/metisDecomp/dummyMetisDecomp.C
@@ -46,7 +46,7 @@ namespace Foam
     (
         decompositionMethod,
         metisDecomp,
-        dictionaryMesh
+        dictionary
     );
 }
 
@@ -80,12 +80,10 @@ Foam::label Foam::metisDecomp::decompose
 
 Foam::metisDecomp::metisDecomp
 (
-    const dictionary& decompositionDict,
-    const polyMesh& mesh
+    const dictionary& decompositionDict
 )
 :
-    decompositionMethod(decompositionDict),
-    mesh_(mesh)
+    decompositionMethod(decompositionDict)
 {}
 
 
@@ -93,6 +91,7 @@ Foam::metisDecomp::metisDecomp
 
 Foam::labelList Foam::metisDecomp::decompose
 (
+    const polyMesh& mesh,
     const pointField& points,
     const scalarField& pointWeights
 )
@@ -112,6 +111,7 @@ Foam::labelList Foam::metisDecomp::decompose
 
 Foam::labelList Foam::metisDecomp::decompose
 (
+    const polyMesh& mesh,
     const labelList& agglom,
     const pointField& agglomPoints,
     const scalarField& agglomWeights
diff --git a/src/dummyThirdParty/ptscotchDecomp/dummyPtscotchDecomp.C b/src/dummyThirdParty/ptscotchDecomp/dummyPtscotchDecomp.C
index 2e877de4a9007cdb53e4c958378911e953e23f21..9e59239fd1f7000c6d7c9e01e144f9bcc75fdfd4 100644
--- a/src/dummyThirdParty/ptscotchDecomp/dummyPtscotchDecomp.C
+++ b/src/dummyThirdParty/ptscotchDecomp/dummyPtscotchDecomp.C
@@ -48,7 +48,7 @@ namespace Foam
     (
         decompositionMethod,
         ptscotchDecomp,
-        dictionaryMesh
+        dictionary
     );
 }
 
@@ -85,12 +85,10 @@ Foam::label Foam::ptscotchDecomp::decompose
 
 Foam::ptscotchDecomp::ptscotchDecomp
 (
-    const dictionary& decompositionDict,
-    const polyMesh& mesh
+    const dictionary& decompositionDict
 )
 :
-    decompositionMethod(decompositionDict),
-    mesh_(mesh)
+    decompositionMethod(decompositionDict)
 {}
 
 
@@ -98,6 +96,7 @@ Foam::ptscotchDecomp::ptscotchDecomp
 
 Foam::labelList Foam::ptscotchDecomp::decompose
 (
+    const polyMesh& mesh,
     const pointField& points,
     const scalarField& pointWeights
 )
@@ -117,6 +116,7 @@ Foam::labelList Foam::ptscotchDecomp::decompose
 
 Foam::labelList Foam::ptscotchDecomp::decompose
 (
+    const polyMesh& mesh,
     const labelList& agglom,
     const pointField& agglomPoints,
     const scalarField& pointWeights
diff --git a/src/dummyThirdParty/scotchDecomp/dummyScotchDecomp.C b/src/dummyThirdParty/scotchDecomp/dummyScotchDecomp.C
index 3c846339320f1a864570de321609ddc202cca28d..007f708a5debd2700104115a664dc8d3489b5f5d 100644
--- a/src/dummyThirdParty/scotchDecomp/dummyScotchDecomp.C
+++ b/src/dummyThirdParty/scotchDecomp/dummyScotchDecomp.C
@@ -47,7 +47,7 @@ namespace Foam
     (
         decompositionMethod,
         scotchDecomp,
-        dictionaryMesh
+        dictionary
     );
 }
 
@@ -59,6 +59,7 @@ void Foam::scotchDecomp::check(const int retVal, const char* str)
 
 Foam::label Foam::scotchDecomp::decompose
 (
+    const fileName& meshPath,
     const List<int>& adjncy,
     const List<int>& xadj,
     const scalarField& cWeights,
@@ -68,13 +69,14 @@ Foam::label Foam::scotchDecomp::decompose
 {
     FatalErrorIn
     (
-        "label scotchDecomp::decompose"
-        "("
-            "const List<int>&, "
-            "const List<int>&, "
-            "const scalarField&, "
-            "List<int>&"
-        ")"
+        "label scotchDecomp::decompose\n"
+        "(\n"
+            "const fileName& meshPath,\n"
+            "const List<int>&,\n"
+            "const List<int>&,\n"
+            "const scalarField&,\n"
+            "List<int>&\n"
+        ")\n"
     )   << notImplementedMessage << exit(FatalError);
 
     return -1;
@@ -85,12 +87,10 @@ Foam::label Foam::scotchDecomp::decompose
 
 Foam::scotchDecomp::scotchDecomp
 (
-    const dictionary& decompositionDict,
-    const polyMesh& mesh
+    const dictionary& decompositionDict
 )
 :
-    decompositionMethod(decompositionDict),
-    mesh_(mesh)
+    decompositionMethod(decompositionDict)
 {}
 
 
@@ -98,6 +98,7 @@ Foam::scotchDecomp::scotchDecomp
 
 Foam::labelList Foam::scotchDecomp::decompose
 (
+    const polyMesh& mesh,
     const pointField& points,
     const scalarField& pointWeights
 )
@@ -117,6 +118,7 @@ Foam::labelList Foam::scotchDecomp::decompose
 
 Foam::labelList Foam::scotchDecomp::decompose
 (
+    const polyMesh& mesh,
     const labelList& agglom,
     const pointField& agglomPoints,
     const scalarField& pointWeights
diff --git a/src/dynamicFvMesh/dynamicFvMesh/dynamicFvMeshNew.C b/src/dynamicFvMesh/dynamicFvMesh/dynamicFvMeshNew.C
index 9a4c920dfa012355c33a21843d6d4dffdf47db8e..a37db88c6903478b6822d21c3fab7bea1868c689 100644
--- a/src/dynamicFvMesh/dynamicFvMesh/dynamicFvMeshNew.C
+++ b/src/dynamicFvMesh/dynamicFvMesh/dynamicFvMeshNew.C
@@ -39,7 +39,7 @@ Foam::autoPtr<Foam::dynamicFvMesh> Foam::dynamicFvMesh::New(const IOobject& io)
             "dynamicMeshDict",
             io.time().constant(),
             io.db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/src/dynamicFvMesh/dynamicInkJetFvMesh/dynamicInkJetFvMesh.C b/src/dynamicFvMesh/dynamicInkJetFvMesh/dynamicInkJetFvMesh.C
index cd937135fd50a4f2b9657969d7675be52a17450c..18e4a32d78caf84ea5de411c1d9a58bc29f5433f 100644
--- a/src/dynamicFvMesh/dynamicInkJetFvMesh/dynamicInkJetFvMesh.C
+++ b/src/dynamicFvMesh/dynamicInkJetFvMesh/dynamicInkJetFvMesh.C
@@ -51,8 +51,9 @@ Foam::dynamicInkJetFvMesh::dynamicInkJetFvMesh(const IOobject& io)
                 "dynamicMeshDict",
                 io.time().constant(),
                 *this,
-                IOobject::MUST_READ,
-                IOobject::NO_WRITE
+                IOobject::MUST_READ_IF_MODIFIED,
+                IOobject::NO_WRITE,
+                false
             )
         ).subDict(typeName + "Coeffs")
     ),
diff --git a/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicMeshDict b/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicMeshDict
index 6502bb5d9674b664d63633e81f0cc86b6de9c2c4..50f34957aa63741fbae4db6628151e09f8e09504 100644
--- a/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicMeshDict
+++ b/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.C b/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.C
index 5ecd3efdb9f28220ca7aa12b46ea7a021982ddf4..5e992af1017943cad053731cd2017cf1c88af8cd 100644
--- a/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.C
+++ b/src/dynamicFvMesh/dynamicRefineFvMesh/dynamicRefineFvMesh.C
@@ -179,7 +179,7 @@ void Foam::dynamicRefineFvMesh::readDict()
                 "dynamicMeshDict",
                 time().constant(),
                 *this,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -1016,7 +1016,7 @@ bool Foam::dynamicRefineFvMesh::update()
                 "dynamicMeshDict",
                 time().constant(),
                 *this,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFvMesh.C b/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFvMesh.C
index 420304ecf7609f729340dbf26a1bd14a5c2943b7..88b7e521c050f47ee57f27eddafd9d5f068f691b 100644
--- a/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFvMesh.C
+++ b/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFvMesh.C
@@ -51,8 +51,9 @@ Foam::solidBodyMotionFvMesh::solidBodyMotionFvMesh(const IOobject& io)
                 "dynamicMeshDict",
                 io.time().constant(),
                 *this,
-                IOobject::MUST_READ,
-                IOobject::NO_WRITE
+                IOobject::MUST_READ_IF_MODIFIED,
+                IOobject::NO_WRITE,
+                false
             )
         ).subDict(typeName + "Coeffs")
     ),
diff --git a/src/dynamicMesh/motionSolver/motionSolver.C b/src/dynamicMesh/motionSolver/motionSolver.C
index efc29c2afc90e2ebcb248a16f0102977f769588e..a225c4430ee8feb02ef907c77da1e836b938f97f 100644
--- a/src/dynamicMesh/motionSolver/motionSolver.C
+++ b/src/dynamicMesh/motionSolver/motionSolver.C
@@ -47,7 +47,7 @@ Foam::motionSolver::motionSolver(const polyMesh& mesh)
             "dynamicMeshDict",
             mesh.time().constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -67,7 +67,7 @@ Foam::autoPtr<Foam::motionSolver> Foam::motionSolver::New(const polyMesh& mesh)
             "dynamicMeshDict",
             mesh.time().constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C b/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C
index 76e0bd0f8940fbfe8a3cccf44553dbc1b9e0fe5c..80b3ab92986986a1a242af87eec2e0082cf66a0d 100644
--- a/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C
+++ b/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C
@@ -38,7 +38,7 @@ License
 
 // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
 
-//- Append all mapped elements of a list to a DynamicList
+// Append all mapped elements of a list to a DynamicList
 void Foam::polyMeshAdder::append
 (
     const labelList& map,
@@ -50,7 +50,7 @@ void Foam::polyMeshAdder::append
 
     forAll(lst, i)
     {
-        label newElem = map[lst[i]];
+        const label newElem = map[lst[i]];
 
         if (newElem != -1)
         {
@@ -60,7 +60,7 @@ void Foam::polyMeshAdder::append
 }
 
 
-//- Append all mapped elements of a list to a DynamicList
+// Append all mapped elements of a list to a DynamicList
 void Foam::polyMeshAdder::append
 (
     const labelList& map,
@@ -73,7 +73,7 @@ void Foam::polyMeshAdder::append
 
     forAll(lst, i)
     {
-        label newElem = map[lst[i]];
+        const label newElem = map[lst[i]];
 
         if (newElem != -1 && findSortedIndex(sortedLst, newElem) == -1)
         {
@@ -170,8 +170,8 @@ void Foam::polyMeshAdder::mergePatchNames
 )
 {
     // Insert the mesh0 patches and zones
-    append(patches0.names(), allPatchNames);
-    append(patches0.types(), allPatchTypes);
+    allPatchNames.append(patches0.names());
+    allPatchTypes.append(patches0.types());
 
 
     // Patches
@@ -924,9 +924,7 @@ void Foam::polyMeshAdder::mergePointZones
 )
 {
     zoneNames.setCapacity(pz0.size() + pz1.size());
-
-    // Names
-    append(pz0.names(), zoneNames);
+    zoneNames.append(pz0.names());
 
     from1ToAll.setSize(pz1.size());
 
@@ -959,7 +957,7 @@ void Foam::polyMeshAdder::mergePointZones
     forAll(pz1, zoneI)
     {
         // Relabel all points of zone and add to correct pzPoints.
-        label allZoneI = from1ToAll[zoneI];
+        const label allZoneI = from1ToAll[zoneI];
 
         append
         (
@@ -991,8 +989,7 @@ void Foam::polyMeshAdder::mergeFaceZones
 )
 {
     zoneNames.setCapacity(fz0.size() + fz1.size());
-
-    append(fz0.names(), zoneNames);
+    zoneNames.append(fz0.names());
 
     from1ToAll.setSize(fz1.size());
 
@@ -1092,8 +1089,7 @@ void Foam::polyMeshAdder::mergeCellZones
 )
 {
     zoneNames.setCapacity(cz0.size() + cz1.size());
-
-    append(cz0.names(), zoneNames);
+    zoneNames.append(cz0.names());
 
     from1ToAll.setSize(cz1.size());
     forAll(cz1, zoneI)
@@ -1108,14 +1104,14 @@ void Foam::polyMeshAdder::mergeCellZones
     forAll(cz0, zoneI)
     {
         // Insert mesh0 cells
-        append(cz0[zoneI], czCells[zoneI]);
+        czCells[zoneI].append(cz0[zoneI]);
     }
 
 
     // Cell mapping is trivial.
     forAll(cz1, zoneI)
     {
-        label allZoneI = from1ToAll[zoneI];
+        const label allZoneI = from1ToAll[zoneI];
 
         append(from1ToAllCells, cz1[zoneI], czCells[allZoneI]);
     }
diff --git a/src/dynamicMesh/polyMeshAdder/polyMeshAdder.H b/src/dynamicMesh/polyMeshAdder/polyMeshAdder.H
index 90612cad909332e962a1a45c896e3413c577597c..1283da8b577625b0ace24268c9404e64a96718d6 100644
--- a/src/dynamicMesh/polyMeshAdder/polyMeshAdder.H
+++ b/src/dynamicMesh/polyMeshAdder/polyMeshAdder.H
@@ -66,10 +66,6 @@ private:
 
     // Private Member Functions
 
-        //- Append all elements of a list to a DynamicList
-        template<class T>
-        static void append(const List<T>&, DynamicList<T>&);
-
         //- Append all mapped elements of a list to a DynamicList
         static void append
         (
@@ -315,12 +311,6 @@ public:
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-#ifdef NoRepository
-#   include "polyMeshAdderTemplates.C"
-#endif
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
 #endif
 
 // ************************************************************************* //
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C
index 170052341d98007089273d72455e50e3d3d707c6..5ed3a5e9ea3e496c679918c68dd47a25b1f36417 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C
@@ -349,7 +349,10 @@ Foam::label Foam::addPatchCellLayer::addSideFace
 
     // Get my mesh face and its zone.
     label meshFaceI = pp.addressing()[ownFaceI];
-    label zoneI = mesh_.faceZones().whichZone(meshFaceI);
+    // Zone info comes from any side patch face. Otherwise -1 since we
+    // don't know what to put it in - inherit from the extruded faces?
+    label zoneI = -1;   //mesh_.faceZones().whichZone(meshFaceI);
+    bool flip = false;
 
     label addedFaceI = -1;
 
@@ -376,6 +379,12 @@ Foam::label Foam::addPatchCellLayer::addSideFace
             )
             {
                 otherPatchID = patches.whichPatch(faceI);
+                zoneI = mesh_.faceZones().whichZone(faceI);
+                if (zoneI != -1)
+                {
+                    label index = mesh_.faceZones()[zoneI].whichFace(faceI);
+                    flip = mesh_.faceZones()[zoneI].flipMap()[index];
+                }
                 break;
             }
         }
@@ -422,7 +431,7 @@ Foam::label Foam::addPatchCellLayer::addSideFace
                 false,                      // flux flip
                 otherPatchID,               // patch for face
                 zoneI,                      // zone for face
-                false                       // face zone flip
+                flip                        // face zone flip
             )
         );
     }
@@ -488,7 +497,7 @@ Foam::label Foam::addPatchCellLayer::addSideFace
                 false,                      // flux flip
                 -1,                         // patch for face
                 zoneI,                      // zone for face
-                false                       // face zone flip
+                flip                        // face zone flip
             )
         );
 
@@ -992,8 +1001,6 @@ void Foam::addPatchCellLayer::setRefinement
         {
             layerFaces_[patchFaceI].setSize(addedCells[patchFaceI].size() + 1);
 
-            label zoneI = mesh_.faceZones().whichZone(meshFaceI);
-
             // Get duplicated vertices on the patch face.
             const face& f = pp.localFaces()[patchFaceI];
 
@@ -1027,12 +1034,21 @@ void Foam::addPatchCellLayer::setRefinement
                 // Get new neighbour
                 label nei;
                 label patchI;
+                label zoneI = -1;
+                bool flip = false;
+
 
                 if (i == addedCells[patchFaceI].size()-1)
                 {
                     // Top layer so is patch face.
                     nei = -1;
                     patchI = patchID[patchFaceI];
+                    zoneI = mesh_.faceZones().whichZone(meshFaceI);
+                    if (zoneI != -1)
+                    {
+                        const faceZone& fz = mesh_.faceZones()[zoneI];
+                        flip = fz.flipMap()[fz.whichFace(meshFaceI)];
+                    }
                 }
                 else
                 {
@@ -1055,7 +1071,7 @@ void Foam::addPatchCellLayer::setRefinement
                         false,                      // flux flip
                         patchI,                     // patch for face
                         zoneI,                      // zone for face
-                        false                       // face zone flip
+                        flip                        // face zone flip
                     )
                 );
             }
@@ -1076,8 +1092,6 @@ void Foam::addPatchCellLayer::setRefinement
 
                 layerFaces_[patchFaceI][0] = meshFaceI;
 
-                label zoneI = mesh_.faceZones().whichZone(meshFaceI);
-
                 meshMod.setAction
                 (
                     polyModifyFace
@@ -1088,8 +1102,8 @@ void Foam::addPatchCellLayer::setRefinement
                         addedCells[patchFaceI][0],      // neighbour
                         false,                          // face flip
                         -1,                             // patch for face
-                        false,                          // remove from zone
-                        zoneI,                          // zone for face
+                        true, //false,                  // remove from zone
+                        -1, //zoneI,                    // zone for face
                         false                           // face flip in zone
                     )
                 );
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/refinementHistory.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/refinementHistory.C
index 744fceb2d5ec8663fd187b303e429e3e6ce566bc..9450b2c71702228e8ef7defca3fbfdf835ec7288 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChange/refinementHistory.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/refinementHistory.C
@@ -331,9 +331,21 @@ Foam::refinementHistory::refinementHistory(const IOobject& io)
 :
     regIOobject(io)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+    {
+        WarningIn
+        (
+            "refinementHistory::refinementHistory(const IOobject&)"
+        )   << "Specified IOobject::MUST_READ_IF_MODIFIED but class"
+            << " does not support automatic rereading."
+            << endl;
+    }
+
     if
     (
         io.readOpt() == IOobject::MUST_READ
+     || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -365,9 +377,22 @@ Foam::refinementHistory::refinementHistory
     freeSplitCells_(0),
     visibleCells_(visibleCells)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+    {
+        WarningIn
+        (
+            "refinementHistory::refinementHistory"
+            "(const IOobject&, const List<splitCell8>&, const labelList&)"
+        )   << "Specified IOobject::MUST_READ_IF_MODIFIED but class"
+            << " does not support automatic rereading."
+            << endl;
+    }
+
     if
     (
         io.readOpt() == IOobject::MUST_READ
+     || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
@@ -399,9 +424,22 @@ Foam::refinementHistory::refinementHistory
     regIOobject(io),
     freeSplitCells_(0)
 {
+    // Temporary warning
+    if (io.readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+    {
+        WarningIn
+        (
+            "refinementHistory::refinementHistory"
+            "(const IOobject&, const label)"
+        )   << "Specified IOobject::MUST_READ_IF_MODIFIED but class"
+            << " does not support automatic rereading."
+            << endl;
+    }
+
     if
     (
         io.readOpt() == IOobject::MUST_READ
+     || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/removeCells.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/removeCells.C
index c778b65d0ad80c05578883c09ca4dbce0f35ae5c..23f47dfe0ab4aa20b22df410a9aa3afe15b02c15 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChange/removeCells.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/removeCells.C
@@ -322,7 +322,9 @@ void Foam::removeCells::setRefinement
                 if (zoneID >= 0)
                 {
                     const faceZone& fZone = faceZones[zoneID];
-                    zoneFlip = fZone.flipMap()[fZone.whichFace(faceI)];
+                    // Note: we reverse the owner/neighbour of the face
+                    // so should also select the other side of the zone
+                    zoneFlip = !fZone.flipMap()[fZone.whichFace(faceI)];
                 }
 
                 //Pout<< "Putting exposed internal face " << faceI
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C b/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C
index 1f7de13abafd66bf8718b3b46279da7287a211c1..dcb95344175805302e3c5258a7b3fa8ff59f4e50 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C
@@ -43,9 +43,19 @@ void Foam::polyTopoChanger::readModifiers()
     if
     (
         readOpt() == IOobject::MUST_READ
+     || readOpt() == IOobject::MUST_READ_IF_MODIFIED
      || (readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
+        if (readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+        {
+            WarningIn("polyTopoChanger::readModifiers()")
+                << "Specified IOobject::MUST_READ_IF_MODIFIED but class"
+                << " does not support automatic rereading."
+                << endl;
+        }
+
+
         PtrList<polyMeshModifier>& modifiers = *this;
 
         // Read modifiers
diff --git a/src/edgeMesh/featureEdgeMesh/featureEdgeMesh.C b/src/edgeMesh/featureEdgeMesh/featureEdgeMesh.C
index 4fe2165606668c92f269da0fdc081f5fd6e24d8e..d8637404cb95683e9b9eb404bc3914674df2a456 100644
--- a/src/edgeMesh/featureEdgeMesh/featureEdgeMesh.C
+++ b/src/edgeMesh/featureEdgeMesh/featureEdgeMesh.C
@@ -40,9 +40,19 @@ Foam::featureEdgeMesh::featureEdgeMesh(const IOobject& io)
     if
     (
         io.readOpt() == IOobject::MUST_READ
+     || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
+        if (readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+        {
+            WarningIn("featureEdgeMesh::featureEdgeMesh(const IOobject&)")
+                << "Specified IOobject::MUST_READ_IF_MODIFIED but class"
+                << " does not support automatic rereading."
+                << endl;
+        }
+
+
         readStream(typeName) >> *this;
         close();
     }
@@ -82,9 +92,19 @@ Foam::featureEdgeMesh::featureEdgeMesh
     if
     (
         io.readOpt() == IOobject::MUST_READ
+     || io.readOpt() == IOobject::MUST_READ_IF_MODIFIED
      || (io.readOpt() == IOobject::READ_IF_PRESENT && headerOk())
     )
     {
+        if (readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+        {
+            WarningIn("featureEdgeMesh::featureEdgeMesh(const IOobject&)")
+                << "Specified IOobject::MUST_READ_IF_MODIFIED but class"
+                << " does not support automatic rereading."
+                << endl;
+        }
+
+
         readStream(typeName) >> *this;
         close();
     }
diff --git a/src/engine/engineMesh/engineMesh/engineMeshNew.C b/src/engine/engineMesh/engineMesh/engineMeshNew.C
index b827036fd37267708f4b8a3eac643c81ad25b334..d34b881cc9cab85096bbe0db72368ed200ec5b07 100644
--- a/src/engine/engineMesh/engineMesh/engineMeshNew.C
+++ b/src/engine/engineMesh/engineMesh/engineMeshNew.C
@@ -44,7 +44,7 @@ Foam::autoPtr<Foam::engineMesh> Foam::engineMesh::New
                 "engineGeometry",
                 io.time().constant(),
                 io.db(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C b/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C
index a7d107a0fdab192ef02f98d0488063eb0d884c8d..a9dc31ff2291f8035d3e11d6d923f3f2ecbaf6a1 100644
--- a/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C
+++ b/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C
@@ -45,10 +45,7 @@ Foam::fvMotionSolverEngineMesh::fvMotionSolverEngineMesh(const IOobject& io)
     pistonLayers_("pistonLayers", dimLength, 0.0),
     motionSolver_(*this, engineDB_.engineDict().lookup("motionSolver"))
 {
-    if (engineDB_.engineDict().found("pistonLayers"))
-    {
-        engineDB_.engineDict().lookup("pistonLayers") >> pistonLayers_;
-    }
+    engineDB_.engineDict().readIfPresent("pistonLayers", pistonLayers_);
 }
 
 
diff --git a/src/engine/engineMesh/layeredEngineMesh/layeredEngineMesh.C b/src/engine/engineMesh/layeredEngineMesh/layeredEngineMesh.C
index 17ce100ed67c074758cfb1b6440b06ae7db5405f..e3caab294d6d2e3cb93c1e433ef9aeb5f2241b52 100644
--- a/src/engine/engineMesh/layeredEngineMesh/layeredEngineMesh.C
+++ b/src/engine/engineMesh/layeredEngineMesh/layeredEngineMesh.C
@@ -44,10 +44,7 @@ Foam::layeredEngineMesh::layeredEngineMesh(const IOobject& io)
     engineMesh(io),
     pistonLayers_("pistonLayers", dimLength, 0.0)
 {
-    if (engineDB_.engineDict().found("pistonLayers"))
-    {
-        engineDB_.engineDict().lookup("pistonLayers") >> pistonLayers_;
-    }
+    engineDB_.engineDict().readIfPresent("pistonLayers", pistonLayers_);
 }
 
 
diff --git a/src/engine/engineTime/engineTime.C b/src/engine/engineTime/engineTime.C
index 822f8224a8f62c03af4016ba592e6f2b6247ae67..2f9ec62313d4f7c4af463b27802d00dd07333b7e 100644
--- a/src/engine/engineTime/engineTime.C
+++ b/src/engine/engineTime/engineTime.C
@@ -72,7 +72,7 @@ Foam::engineTime::engineTime
             "engineGeometry",
             constant(),
             *this,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/src/finiteVolume/Make/files b/src/finiteVolume/Make/files
index 3fa33b7e2062c01417b8e8f370398e0ba7750657..84ff879b50320d80df044cd8b323457c8fa11c5d 100644
--- a/src/finiteVolume/Make/files
+++ b/src/finiteVolume/Make/files
@@ -156,7 +156,9 @@ $(derivedFvPatchFields)/turbulentIntensityKineticEnergyInlet/turbulentIntensityK
 $(derivedFvPatchFields)/uniformFixedValue/uniformFixedValueFvPatchFields.C
 $(derivedFvPatchFields)/waveTransmissive/waveTransmissiveFvPatchFields.C
 $(derivedFvPatchFields)/uniformDensityHydrostaticPressure/uniformDensityHydrostaticPressureFvPatchScalarField.C
-$(derivedFvPatchFields)/swirlMassFlowRateInletVelocity/swirlMassFlowRateInletVelocityFvPatchVectorField.C
+$(derivedFvPatchFields)/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.C
+$(derivedFvPatchFields)/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.C
+
 
 fvsPatchFields = fields/fvsPatchFields
 $(fvsPatchFields)/fvsPatchField/fvsPatchFields.C
@@ -354,4 +356,13 @@ fieldSources = $(general)/fieldSources
 $(fieldSources)/pressureGradientExplicitSource/pressureGradientExplicitSource.C
 $(fieldSources)/timeActivatedExplicitSource/timeActivatedExplicitSource.C
 
+basicSource = $(general)/fieldSources/basicSource
+$(basicSource)/basicSource/basicSource.C
+$(basicSource)/basicSource/basicSourceIO.C
+$(basicSource)/basicSource/basicSourceList.C
+$(basicSource)/basicSource/IObasicSourceList.C
+$(basicSource)/actuationDiskSource/actuationDiskSource.C
+$(basicSource)/explicitSource/explicitSource.C
+
+
 LIB = $(FOAM_LIBBIN)/libfiniteVolume
diff --git a/src/finiteVolume/Make/options b/src/finiteVolume/Make/options
index b8402e2b986f84f897b31b6fe5ae42fa9048c468..b91061399ee1cebe26a7b6f122b5231e7f7ff7e3 100644
--- a/src/finiteVolume/Make/options
+++ b/src/finiteVolume/Make/options
@@ -3,5 +3,6 @@ EXE_INC = \
     -I$(LIB_SRC)/meshTools/lnInclude
 
 LIB_LIBS = \
+    -lOpenFOAM \
     -ltriSurface \
     -lmeshTools
diff --git a/src/finiteVolume/cfdTools/general/MRF/MRFZones.C b/src/finiteVolume/cfdTools/general/MRF/MRFZones.C
index 5ceb48af51eb548b165edd3dc59d6434912f1fba..cf7bdc8ff8021107019ff8cfbe17781c019b3f4f 100644
--- a/src/finiteVolume/cfdTools/general/MRF/MRFZones.C
+++ b/src/finiteVolume/cfdTools/general/MRF/MRFZones.C
@@ -45,7 +45,7 @@ Foam::MRFZones::MRFZones(const fvMesh& mesh)
             "MRFZones",
             mesh.time().constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         ),
         MRFZone::iNew(mesh)
diff --git a/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModel.C b/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModel.C
index 626718c932117bd1b39eba2930a873f60f1c62e0..e753196cdea285b46ea4c3c2c17b670e8108f213 100644
--- a/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModel.C
+++ b/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModel.C
@@ -53,7 +53,7 @@ Foam::SRF::SRFModel::SRFModel
             "SRFProperties",
             Urel.time().constant(),
             Urel.db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModelNew.C b/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModelNew.C
index 5c2eb2ea7625aec12a48fbaddfe6f126b970e5f6..20d358235b154b1eb456e6da7ce9b3e1154613bf 100644
--- a/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModelNew.C
+++ b/src/finiteVolume/cfdTools/general/SRF/SRFModel/SRFModel/SRFModelNew.C
@@ -43,7 +43,7 @@ Foam::autoPtr<Foam::SRF::SRFModel> Foam::SRF::SRFModel::New
                 "SRFProperties",
                 Urel.time().constant(),
                 Urel.db(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/actuationDiskSource/actuationDiskSource.C b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/actuationDiskSource/actuationDiskSource.C
new file mode 100644
index 0000000000000000000000000000000000000000..44f46f9de32857313e9a40718621e8ee5ee307d3
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/actuationDiskSource/actuationDiskSource.C
@@ -0,0 +1,196 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software; you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by the
+    Free Software Foundation; either version 3 of the License, or (at your
+    option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM; if not, write to the Free Software Foundation,
+    Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+\*----------------------------------------------------------------------------*/
+
+#include "actuationDiskSource.H"
+#include "fvMesh.H"
+#include "fvMatrices.H"
+#include "geometricOneField.H"
+#include "addToRunTimeSelectionTable.H"
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+defineTypeNameAndDebug(actuationDiskSource, 0);
+addToRunTimeSelectionTable(basicSource, actuationDiskSource, dictionary);
+
+}
+
+
+// * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
+
+void Foam::actuationDiskSource::checkData()
+{
+    if
+    (
+        magSqr(diskArea_) <= VSMALL
+    || Cp_ <= VSMALL
+    || Ct_ <= VSMALL
+    || diskDir_ == vector::zero
+    )
+    {
+        FatalIOErrorIn
+        (
+            "Foam::actuationDiskSource::checkData()",
+            dict_
+        )  << "diskArea, Cp or Ct is small "
+           << "or  disk direction not specified"
+           << exit(FatalIOError);
+    }
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::actuationDiskSource::actuationDiskSource
+(
+    const word& name,
+    const dictionary& dict,
+    const fvMesh& mesh
+)
+:
+    basicSource(name, dict, mesh),
+    cellZoneID_(mesh.cellZones().findZoneID(this->cellSetName())),
+    diskDir_(vector::zero),
+    Cp_(0),
+    Ct_(0),
+    diskArea_(0),
+    dict_(dict.subDict(typeName + "Coeffs"))
+{
+    Info<< "    - creating actuation disk zone: "
+        << this->name() << endl;
+
+    bool foundZone = (cellZoneID_ != -1);
+
+    reduce(foundZone, orOp<bool>());
+
+    if (!foundZone && Pstream::master())
+    {
+        FatalErrorIn
+        (
+            "Foam::actuationDiskSource::actuationDiskSource"
+            "(const word&, const dictionary&, const fvMesh&)"
+        )   << "cannot find porous cellZone " << this->name()
+            << exit(FatalError);
+    }
+
+    dict_.readIfPresent("diskDir", diskDir_);
+    dict_.readIfPresent("Cp", Cp_);
+    dict_.readIfPresent("Ct", Ct_);
+    dict_.readIfPresent("diskArea", diskArea_);
+
+    checkData();
+}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+void Foam::actuationDiskSource::addSu(fvMatrix<vector>& UEqn)
+{
+    if (cellZoneID_ == -1)
+    {
+        return;
+    }
+
+    bool compressible = false;
+    if (UEqn.dimensions() == dimensionSet(1, 1, -2, 0, 0))
+    {
+        compressible = true;
+    }
+
+    const labelList& cells = mesh_.cellZones()[cellZoneID_];
+    const scalarField& V = this->mesh().V();
+    vectorField& Usource = UEqn.source();
+    const vectorField& U = UEqn.psi();
+
+    if (compressible)
+    {
+        addActuationDiskAxialInertialResistance
+        (
+            Usource,
+            cells,//this->cells(),
+            V,
+            this->mesh().lookupObject<volScalarField>("rho"),
+            U
+        );
+    }
+    else
+    {
+        addActuationDiskAxialInertialResistance
+        (
+            Usource,
+            cells,//this->cells(),
+            V,
+            geometricOneField(),
+            U
+        );
+    }
+}
+
+
+void Foam::actuationDiskSource::writeData(Ostream& os) const
+{
+
+    os  << indent << token::BEGIN_BLOCK << incrIndent << nl;
+    os.writeKeyword("name") << this->name() << token::END_STATEMENT << nl;
+
+    if (dict_.found("note"))
+    {
+        os.writeKeyword("note") << string(dict_.lookup("note"))
+            << token::END_STATEMENT << nl;
+    }
+
+    os << indent << "actuationDisk";
+
+    dict_.write(os);
+
+    os << decrIndent << indent << token::END_BLOCK << endl;
+}
+
+
+bool Foam::actuationDiskSource::read(const dictionary& dict)
+{
+    if (basicSource::read(dict))
+    {
+        const dictionary& sourceDict = dict.subDict(name());
+        const dictionary& subDictCoeffs =
+            sourceDict.subDict(typeName + "Coeffs");
+        subDictCoeffs.readIfPresent("diskDir", diskDir_);
+        subDictCoeffs.readIfPresent("Cp", Cp_);
+        subDictCoeffs.readIfPresent("Ct", Ct_);
+        subDictCoeffs.readIfPresent("diskArea", diskArea_);
+
+        checkData();
+
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/actuationDiskSource/actuationDiskSource.H b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/actuationDiskSource/actuationDiskSource.H
new file mode 100644
index 0000000000000000000000000000000000000000..661fc99a547fd71a79d05089f4463b850d384735
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/actuationDiskSource/actuationDiskSource.H
@@ -0,0 +1,213 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software; you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by the
+    Free Software Foundation; either version 3 of the License, or (at your
+    option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM; if not, write to the Free Software Foundation,
+    Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+Class
+    Foam::actuationDiskSource
+
+Description
+    Actuation disk zone definition.
+    Constant values for momentum source for actuation disk
+
+    T = 2*rho*A*sqr(Uo)*a*(1-a)
+    U1 = (1 -a)Uo
+    where:
+          A: disk area
+          Uo: upstream velocity
+          a: 1 - Cp/Ct
+          U1: velocity at the disk
+
+SourceFiles
+    actuationDiskSource.C
+    actuationDiskSourceTemplates.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef actuationDiskSource_H
+#define actuationDiskSource_H
+
+#include "IOdictionary.H"
+#include "coordinateSystem.H"
+#include "coordinateSystems.H"
+#include "wordList.H"
+#include "labelList.H"
+#include "DimensionedField.H"
+#include "volFieldsFwd.H"
+#include "fvMatricesFwd.H"
+#include "basicSource.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                        Class actuationDiskSource Declaration
+\*---------------------------------------------------------------------------*/
+
+class actuationDiskSource
+:
+    public basicSource
+{
+    // Private data
+
+        //- Cell zone ID
+        label cellZoneID_;
+
+        //- Disk area normal
+        vector diskDir_;
+
+        //- Power coefficient
+        scalar Cp_;
+
+        //- Thrust coefficient
+        scalar Ct_;
+
+        //- Disk area
+        scalar diskArea_;
+
+        //- Sub dictionary with actuationDisk information
+        const dictionary& dict_;
+
+
+    // Private Member Functions
+
+        //- Check data
+        void checkData();
+
+        //- Add resistance to the UEqn
+        template<class RhoFieldType>
+        void addActuationDiskAxialInertialResistance
+        (
+            vectorField& Usource,
+            const labelList& cells,
+            const scalarField& V,
+            const RhoFieldType& rho,
+            const vectorField& U
+        ) const;
+
+        //- Disallow default bitwise copy construct
+        actuationDiskSource(const actuationDiskSource&);
+
+        //- Disallow default bitwise assignment
+        void operator=(const actuationDiskSource&);
+
+
+public:
+
+    //- Runtime type information
+    TypeName("actuationDiskSource");
+
+
+    // Constructors
+
+        //- Construct from components
+        actuationDiskSource
+        (
+            const word& name,
+            const dictionary& dict,
+            const fvMesh& mesh
+        );
+
+
+    //- Destructor
+    virtual ~actuationDiskSource()
+    {}
+
+
+    // Member Functions
+
+        // Access
+
+            //- cellZone number
+            label zoneId() const
+            {
+                return cellZoneID_;
+            }
+
+            //- Return Cp
+            scalar Cp() const
+            {
+                return Cp_;
+            }
+
+            //- Return Ct
+            scalar Ct() const
+            {
+                return Ct_;
+            }
+
+            //- Normal disk direction
+            const vector& diskDir() const
+            {
+                return diskDir_;
+            }
+
+            //- Disk area
+            scalar diskArea() const
+            {
+                return diskArea_;
+            }
+
+
+        // Public Functions
+
+            //-Source term to fvMatrix<vector>
+            virtual void addSu(fvMatrix<vector>& UEqn);
+
+            //-Source term to fvMatrix<scalar>
+            virtual void addSu(fvMatrix<scalar>& UEqn){}
+
+            //- Add all explicit source
+            virtual void addExplicitSources(){}
+
+            //- Add source to scalar field
+            virtual void addSu(DimensionedField<scalar, volMesh>& field){}
+
+            //- Add source to vector field
+            virtual void addSu(DimensionedField<vector, volMesh>& field){}
+
+
+        // I-O
+
+            //- Write data
+            virtual void writeData(Ostream&) const;
+
+            //- Read dictionary
+            virtual bool read(const dictionary& dict);
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#   include "actuationDiskSourceTemplates.C"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/actuationDiskSource/actuationDiskSourceTemplates.C b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/actuationDiskSource/actuationDiskSourceTemplates.C
new file mode 100644
index 0000000000000000000000000000000000000000..17fcbf6fd072029b48e08e146537bd03d3a430fd
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/actuationDiskSource/actuationDiskSourceTemplates.C
@@ -0,0 +1,64 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software; you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by the
+    Free Software Foundation; either version 3 of the License, or (at your
+    option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM; if not, write to the Free Software Foundation,
+    Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+\*----------------------------------------------------------------------------*/
+
+#include "actuationDiskSource.H"
+#include "volFields.H"
+#include "fvMatrix.H"
+#include "fvm.H"
+
+// * * * * * * * * * * * * * * *  Member Functions * * * * * * * * * * * * * //
+
+template<class RhoFieldType>
+void Foam::actuationDiskSource::addActuationDiskAxialInertialResistance
+(
+    vectorField& Usource,
+    const labelList& cells,
+    const scalarField& V,
+    const RhoFieldType& rho,
+    const vectorField& U
+) const
+{
+    scalar a = 1.0 - Cp_/Ct_;
+    scalar totVol = 0.0;
+    scalarField T(cells.size());
+    vector uniDiskDir = diskDir_/mag(diskDir_);
+    tensor E(tensor::zero);
+    E.xx() = uniDiskDir.x();
+    E.yy() = uniDiskDir.y();
+    E.zz() = uniDiskDir.z();
+    vectorField U1 = (1.0 - a)*U;
+    forAll(cells, i)
+    {
+        totVol += V[cells[i]];
+        T[i] = 2.0*rho[cells[i]]*diskArea_*mag(U1[cells[i]])*a/(1.0 - a);
+    }
+    forAll(cells, i)
+    {
+        Usource[cells[i]] += ((V[cells[i]]/totVol)*T[i]*E) & U1[cells[i]];
+    }
+}
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/IObasicSourceList.C b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/IObasicSourceList.C
new file mode 100644
index 0000000000000000000000000000000000000000..8ce372e8ff4fa343c981927d0dcdc42ff0878953
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/IObasicSourceList.C
@@ -0,0 +1,65 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "IObasicSourceList.H"
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::IObasicSourceList::IObasicSourceList
+(
+    const fvMesh& mesh
+)
+:
+    IOdictionary
+    (
+        IOobject
+        (
+            "sourcesProperties",
+            mesh.time().constant(),
+            mesh,
+            IOobject::MUST_READ,
+            IOobject::NO_WRITE
+        )
+    ),
+    basicSourceList(mesh, *this)
+{}
+
+
+bool Foam::IObasicSourceList::read()
+{
+    if (regIOobject::read())
+    {
+        basicSourceList::read(*this);
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+
+// ************************************************************************* //
+
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/IObasicSourceList.H b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/IObasicSourceList.H
new file mode 100644
index 0000000000000000000000000000000000000000..c291c373565efc6446ee7abd1f49b278eca07e57
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/IObasicSourceList.H
@@ -0,0 +1,99 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::IObasicSourceList
+
+Description
+    IObasicSourceList
+
+SourceFiles
+    IObasicSourceList.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef IObasicSourceList_H
+#define IObasicSourceList_H
+
+#include "basicSourceList.H"
+#include "IOdictionary.H"
+#include "autoPtr.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                        Class IObasicSourceList Declaration
+\*---------------------------------------------------------------------------*/
+
+class IObasicSourceList
+:
+    public IOdictionary,
+    public basicSourceList
+{
+private:
+
+    // Private Member Functions
+
+        //- Disallow default bitwise copy construct
+        IObasicSourceList
+        (
+            const IObasicSourceList&
+        );
+
+        //- Disallow default bitwise assignment
+        void operator=(const IObasicSourceList&);
+
+
+public:
+
+    // Constructors
+
+        //- Construct from components with list of field names
+        IObasicSourceList
+        (
+            const fvMesh& mesh
+        );
+
+
+    // Destructor
+        virtual ~IObasicSourceList()
+        {}
+
+
+    //- Read dictionary
+        virtual bool read();
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSource.C b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSource.C
new file mode 100644
index 0000000000000000000000000000000000000000..d74ce2b3522e0f3ae8d466a4c3823c8fc12710b0
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSource.C
@@ -0,0 +1,292 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "basicSource.H"
+#include "fvMesh.H"
+#include "volFields.H"
+#include "addToRunTimeSelectionTable.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTypeNameAndDebug(basicSource, 0);
+    defineRunTimeSelectionTable(basicSource, dictionary);
+}
+
+
+// * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * * //
+
+const Foam::wordList Foam::basicSource::
+selectionModeTypeNames_
+(
+    IStringStream("(points cellSet cellZone all)")()
+);
+
+
+// * * * * * * * * * * * * Protected Member Functions  * * * * * * * * * * * //
+
+Foam::basicSource::selectionModeType
+Foam::basicSource::wordToSelectionModeType
+(
+    const word& smtName
+) const
+{
+    forAll(selectionModeTypeNames_, i)
+    {
+        if (smtName == selectionModeTypeNames_[i])
+        {
+            return selectionModeType(i);
+        }
+    }
+
+    FatalErrorIn
+    (
+        "basicSource::selectionModeType"
+        "basicSource::wordToSelectionModeType"
+        "("
+            "const word&"
+        ")"
+    )   << "Unknown selectionMode type " << smtName
+        << ". Valid selectionMode types are:" << nl << selectionModeTypeNames_
+        << exit(FatalError);
+
+    return selectionModeType(0);
+}
+
+
+Foam::word Foam::basicSource::selectionModeTypeToWord
+(
+    const selectionModeType& smtType
+) const
+{
+    if (smtType > selectionModeTypeNames_.size())
+    {
+        return "UNKNOWN";
+    }
+    else
+    {
+        return selectionModeTypeNames_[smtType];
+    }
+}
+
+
+void Foam::basicSource::setSelection
+(
+    const dictionary& dict
+)
+{
+    switch (selectionMode_)
+    {
+        case smPoints:
+        {
+            //Do nothing. It should be sorted out by derived class//
+            break;
+        }
+        case smCellSet:
+        {
+            dict.lookup("cellSet") >> cellSetName_;
+            break;
+        }
+        case smCellZone:
+        {
+            dict.lookup("cellZone") >> cellSetName_;
+            break;
+        }
+        case smAll:
+        {
+            break;
+        }
+        default:
+        {
+            FatalErrorIn
+            (
+                "basicSource::setSelection(const dictionary&)"
+            )   << "Unknown selectionMode "
+                << selectionModeTypeNames_[selectionMode_]
+                << ". Valid selectionMode types are" << selectionModeTypeNames_
+                << exit(FatalError);
+        }
+    }
+}
+
+
+void Foam::basicSource::setCellSet()
+{
+    Info<< incrIndent << indent << "Source: " << name_ << endl;
+    switch (selectionMode_)
+    {
+        case smPoints:
+        {
+            break;
+        }
+        case smCellSet:
+        {
+            Info<< indent << "- selecting cells using cellSet "
+                << cellSetName_ << endl;
+
+            cellSet selectedCells(mesh_, cellSetName_);
+            cells_ = selectedCells.toc();
+
+            break;
+        }
+        case smCellZone:
+        {
+            Info<< indent << "- selecting cells using cellZone "
+                << cellSetName_ << endl;
+            label zoneID = mesh_.cellZones().findZoneID(cellSetName_);
+            if (zoneID == -1)
+            {
+                FatalErrorIn("basicSource<Type>::setCellIds()")
+                    << "Cannot find cellZone " << cellSetName_ << endl
+                    << "Valid cellZones are " << mesh_.cellZones().names()
+                    << exit(FatalError);
+            }
+            cells_ = mesh_.cellZones()[zoneID];
+
+            break;
+        }
+        case smAll:
+        {
+            Info<< indent << "- selecting all cells" << endl;
+            cells_ = identity(mesh_.nCells());
+
+            break;
+        }
+        default:
+        {
+            FatalErrorIn("basicSource<Type>::setCellIds()")
+                << "Unknown selectionMode "
+                << selectionModeTypeNames_[selectionMode_]
+                << ". Valid selectionMode types are" << selectionModeTypeNames_
+                << exit(FatalError);
+        }
+    }
+
+    // Set volume information
+    if (selectionMode_ != smPoints)
+    {
+        V_ = 0.0;
+        forAll(cells_, i)
+        {
+            V_ += mesh_.V()[cells_[i]];
+        }
+        reduce(V_, sumOp<scalar>());
+
+        Info<< indent << "- selected "
+            << returnReduce(cells_.size(), sumOp<label>())
+            << " cell(s) with volume " << V_ << nl << decrIndent << endl;
+    }
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::basicSource::basicSource
+(
+    const word& name,
+    const dictionary& dict,
+    const fvMesh& mesh
+)
+:
+    name_(name),
+    mesh_(mesh),
+    dict_(dict),
+    active_(readBool(dict_.lookup("active"))),
+    timeStart_(readScalar(dict_.lookup("timeStart"))),
+    duration_(readScalar(dict_.lookup("duration"))),
+    selectionMode_(wordToSelectionModeType(dict_.lookup("selectionMode"))),
+    cellSetName_("none"),
+    V_(1.0)
+{
+    setSelection(dict_);
+
+    setCellSet();
+}
+
+
+// * * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * //
+
+Foam::autoPtr<Foam::basicSource> Foam::basicSource::New
+(
+    const word& name,
+    const dictionary& dict,
+    const fvMesh& mesh
+)
+{
+    word typeModel;
+
+    {
+        dict.lookup("typeModel") >> typeModel;
+    }
+
+    Info<< "Selecting model type " << typeModel << endl;
+
+    dictionaryConstructorTable::iterator cstrIter =
+        dictionaryConstructorTablePtr_->find(typeModel);
+
+    if (cstrIter == dictionaryConstructorTablePtr_->end())
+    {
+        FatalErrorIn
+        (
+            "basicSource::New(const volVectorField&, "
+            "const surfaceScalarField&, transportModel&)"
+        )   << "Unknown Model type " << typeModel
+            << endl << endl
+            << "Valid model types are :" << endl
+            << dictionaryConstructorTablePtr_->toc()
+            << exit(FatalError);
+    }
+
+    return autoPtr<basicSource>(cstrIter()(name, dict, mesh));
+}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+bool Foam::basicSource::isActive()
+{
+    if
+    (
+        active_
+     && (mesh_.time().value() >= timeStart_)
+     && (mesh_.time().value() <= timeEnd())
+    )
+    {
+        // Update the cell set if the mesh is changing
+        if (mesh_.changing())
+        {
+            setCellSet();
+        }
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSource.H b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSource.H
new file mode 100644
index 0000000000000000000000000000000000000000..39f4377adb2757be53c80da459bbc0f2fd3d44c7
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSource.H
@@ -0,0 +1,384 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::basicSource
+
+Description
+    Basic source abtract class
+
+    Sources described by:
+
+    source1
+    {
+        typeModel       actuationDiskSource; // explicitSource
+        active          on;            // on/off switch
+        timeStart       0.0;           // start time
+        duration        1000.0;        // duration
+        selectionMode   cellSet;       // cellSet // points //cellZone
+        cellSet         c0;            // cellSet name
+
+        actuationDiskSourceCoeffs
+        {
+            diskDir     (-1 0 0); // orientation of the disk
+            Cp          0.53;     // Cp
+            Ct          0.58;     // Ct
+            diskArea    40;       // disk area
+        }
+    }
+
+    source2
+    {
+        typeModel       explicitSource;
+        active          on;
+        timeStart       0.0;
+        duration        1000.0;
+        selectionMode   points;
+        cellSet         c0;
+
+        explicitSourceCoeffs
+        {
+            points            // list of points when selectionMode = points
+            (
+                (-0.088 0.007 -0.02)
+                (-0.028 0.007 -0.02)
+            );
+            volumeMode      specific;  //absolute
+            fieldData                  //field data
+            {
+                k   30.7;
+                epsilon  1.5;
+            }
+        }
+    }
+
+SourceFiles
+    basicSource.C
+    basicSourceIO.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef basicSource_H
+#define basicSource_H
+
+#include "fvMatrices.H"
+#include "cellSet.H"
+#include "volFieldsFwd.H"
+#include "DimensionedField.H"
+#include "autoPtr.H"
+#include "runTimeSelectionTables.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+class fvMesh;
+
+/*---------------------------------------------------------------------------*\
+                          Class basicSource Declaration
+\*---------------------------------------------------------------------------*/
+
+class basicSource
+{
+public:
+
+    // Public data
+
+        //- Enumeration for selection mode types
+        enum selectionModeType
+        {
+            smPoints,
+            smCellSet,
+            smCellZone,
+            smAll
+        };
+
+        //- Word list of selection mode type names
+        static const wordList selectionModeTypeNames_;
+
+
+protected:
+
+    // Protected data
+
+        //- Source name
+        word name_;
+
+        //- Reference to the mesh database
+        const fvMesh& mesh_;
+
+        //- Dictionary containing the data of the source
+        const dictionary& dict_;
+
+        //- Source active flag
+        bool active_;
+
+        //- Time start
+        scalar timeStart_;
+
+        //- Duration
+        scalar duration_;
+
+        //- Cell selection mode
+        selectionModeType selectionMode_;
+
+        //- Name of cell set for "cellSet" and "cellZone" selectionMode
+        word cellSetName_;
+
+        //- Set of cells to apply source to
+        labelList cells_;
+
+        //- Sum of cell volumes
+        scalar V_;
+
+
+    // Protected functions
+
+        //- Helper function to convert from a word to a selectionModeType
+        selectionModeType wordToSelectionModeType(const word& smtName) const;
+
+        //- Helper function to convert from a selectionModeType to a word
+        word selectionModeTypeToWord(const selectionModeType& smtType) const;
+
+        //- Set the cellSet or points selection
+        void setSelection(const dictionary& dict);
+
+        //- Set the cell set based on the user input selection mode
+        void setCellSet();
+
+
+public:
+
+    //- Runtime type information
+    TypeName("basicSource");
+
+
+     // Declare run-time constructor selection table
+
+        declareRunTimeSelectionTable
+        (
+            autoPtr,
+            basicSource,
+            dictionary,
+            (
+                const word& name,
+                const dictionary& dict,
+                const fvMesh& mesh
+            ),
+            (name, dict, mesh)
+        );
+
+
+    // Constructors
+
+        //- Construct from components
+        basicSource
+        (
+            const word& name,
+            const dictionary& dict,
+            const fvMesh& mesh
+        );
+
+        //- Return clone
+        autoPtr<basicSource> clone() const
+        {
+            notImplemented
+            (
+                "autoPtr<basicSource> clone() const"
+            );
+            return autoPtr<basicSource>(NULL);
+        }
+
+        //- Return pointer to new basicSource object created
+        //  on the freestore from an Istream
+        class iNew
+        {
+            //- Reference to the mesh database
+            const fvMesh& mesh_;
+            const word& name_;
+
+        public:
+
+            iNew
+            (
+                const fvMesh& mesh,
+                const word& name
+            )
+            :
+                mesh_(mesh),
+                name_(name)
+            {}
+
+            autoPtr<basicSource> operator()(Istream& is) const
+            {
+                //const word name(is);
+                const dictionary dict(is);
+
+                return autoPtr<basicSource>
+                (
+                    basicSource::New
+                    (
+                        name_,
+                        dict,
+                        mesh_
+                    )
+                );
+            }
+        };
+
+
+    // Selectors
+
+        //- Return a reference to the selected basicSource model
+        static autoPtr<basicSource> New
+        (
+            const word& name,
+            const dictionary& dict,
+            const fvMesh& mesh
+        );
+
+
+    //- Destructor
+    virtual ~basicSource()
+    {}
+
+
+    // Member Functions
+
+        // Access
+
+            //- Return const access to the source name
+            inline const word& name() const;
+
+            //- Return const access to the mesh database
+            inline const fvMesh& mesh() const;
+
+            //- Return dictionay
+            inline const dictionary& dictCoeffs() const;
+
+            //- Return const access to the source active flag
+            inline bool active() const;
+
+            //- Return const access to the time start
+            inline scalar timeStart() const;
+
+            //- Return const access to the duration
+            inline scalar duration() const;
+
+            //- Return const access to the time end
+            inline scalar timeEnd() const;
+
+            //- Return const access to the cell selection mode
+            inline const selectionModeType& selectionMode() const;
+
+            //- Return const access to the name of cell set for "cellSet"
+            //  selectionMode
+            inline const word& cellSetName() const;
+
+            //- Return const access to the total cell volume
+            inline scalar V() const;
+
+            //- Return const access to the cell set
+            inline const labelList& cells() const;
+
+
+        // Edit
+
+            //- Return access to the source name
+            inline word& name();
+
+            //- Return access to the source active flag
+            inline bool& active();
+
+            //- Return access to the time start
+            inline scalar& timeStart();
+
+            //- Return access to the duration
+            inline scalar& duration();
+
+            //- Return access to the cell selection mode
+            inline selectionModeType& selectionMode();
+
+            //- Return access to the list of points for "points" selectionMode
+            inline List<point>& points();
+
+            //- Return access to the name of cell set for "cellSet"
+            //  selectionMode
+            inline word& cellSetName();
+
+            //- Return access to the total cell volume
+            inline scalar& V();
+
+            //- Return access to the cell set
+            inline labelList& cells();
+
+
+        // Checks
+
+            //- Is the source active?
+            bool isActive();
+
+
+        // Evaluation
+
+            //- Add all explicit sources
+            virtual void addExplicitSources() = 0;
+
+            //- Add source to scalar field
+            virtual void addSu(DimensionedField<scalar, volMesh>& field) = 0;
+
+            //- Add source to vector field
+            virtual void addSu(DimensionedField<vector, volMesh>& field) = 0;
+
+            //- Add source term to vector fvMatrix
+            virtual void addSu(fvMatrix<vector>& Eqn) = 0;
+
+            //- Add source term to scalar fvMatrix
+            virtual void addSu(fvMatrix<scalar>& Eqn) = 0;
+
+
+        // I-O
+
+            //- Write the source properties
+            virtual void writeData(Ostream&) const = 0;
+
+            //- Read source dictionary
+            virtual bool read(const dictionary& dict) = 0;
+
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#include "basicSourceI.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceI.H b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceI.H
new file mode 100644
index 0000000000000000000000000000000000000000..89e68a7df8dce7dd15b4d8d2e04f6f67a8f4d2b4
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceI.H
@@ -0,0 +1,147 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "basicSource.H"
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+
+inline const Foam::word& Foam::basicSource::name() const
+{
+    return name_;
+}
+
+
+inline const Foam::fvMesh& Foam::basicSource::mesh() const
+{
+    return mesh_;
+}
+
+inline const Foam::dictionary& Foam::basicSource::dictCoeffs() const
+{
+    return dict_;
+}
+
+inline bool Foam::basicSource::active() const
+{
+    return active_;
+}
+
+
+inline Foam::scalar Foam::basicSource::timeStart() const
+{
+    return timeStart_;
+}
+
+
+inline Foam::scalar Foam::basicSource::duration() const
+{
+    return duration_;
+}
+
+
+inline Foam::scalar Foam::basicSource::timeEnd() const
+{
+    return timeStart_ + duration_;
+}
+
+
+inline const Foam::basicSource::selectionModeType&
+Foam::basicSource::selectionMode() const
+{
+    return selectionMode_;
+}
+
+
+inline const Foam::word&
+Foam::basicSource::cellSetName() const
+{
+    return cellSetName_;
+}
+
+
+inline Foam::scalar Foam::basicSource::V() const
+{
+    return V_;
+}
+
+
+inline const Foam::labelList&
+Foam::basicSource::cells() const
+{
+    return cells_;
+}
+
+
+inline Foam::word& Foam::basicSource::name()
+{
+    return name_;
+}
+
+
+inline bool& Foam::basicSource::active()
+{
+    return active_;
+}
+
+
+inline Foam::scalar& Foam::basicSource::timeStart()
+{
+    return timeStart_;
+}
+
+
+inline Foam::scalar& Foam::basicSource::duration()
+{
+    return duration_;
+}
+
+
+inline Foam::word& Foam::basicSource::cellSetName()
+{
+    return cellSetName_;
+}
+
+
+inline Foam::basicSource::selectionModeType&
+Foam::basicSource::selectionMode()
+{
+    return selectionMode_;
+}
+
+
+inline Foam::scalar& Foam::basicSource::V()
+{
+    return V_;
+}
+
+
+inline Foam::labelList& Foam::basicSource::cells()
+{
+    return cells_;
+}
+
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceIO.C b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceIO.C
new file mode 100644
index 0000000000000000000000000000000000000000..88966fdd6b16d81130dbfc9c5f7b66c4ab68c254
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceIO.C
@@ -0,0 +1,83 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "basicSource.H"
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+
+void Foam::basicSource::writeData(Ostream& os) const
+{
+    os  << indent << name_ << nl
+        << indent << token::BEGIN_BLOCK << incrIndent << nl;
+
+    os.writeKeyword("active") << active_ << token::END_STATEMENT << nl;
+    os.writeKeyword("timeStart") << timeStart_ << token::END_STATEMENT << nl;
+    os.writeKeyword("duration") << duration_ << token::END_STATEMENT << nl;
+    os.writeKeyword("selectionMode")
+        << selectionModeTypeToWord(selectionMode_) << nl;
+
+    switch (selectionMode_)
+    {
+        case smPoints:
+        {
+            break;
+        }
+        case smCellSet:
+        {
+            os.writeKeyword("cellSet") << cellSetName_
+                << token::END_STATEMENT << nl;
+            break;
+        }
+        default:
+        {
+            FatalErrorIn
+            (
+                "basicSource::writeData"
+                "("
+                    "Ostream&, "
+                    "bool"
+                ") const"
+            )   << "Unknown selectionMode "
+                << selectionModeTypeToWord(selectionMode_)
+                << abort(FatalError);
+        }
+    }
+
+    os << decrIndent << indent << token::END_BLOCK << endl;
+}
+
+
+bool Foam::basicSource::read(const dictionary& dict)
+{
+    const dictionary& sourceDict = dict.subDict(name_);
+    active_ = readBool(sourceDict.lookup("active"));
+    timeStart_ = readScalar(sourceDict.lookup("timeStart"));
+    duration_  = readScalar(sourceDict.lookup("duration"));
+    return true;
+}
+
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceList.C b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceList.C
new file mode 100644
index 0000000000000000000000000000000000000000..8329a6f03d9b40824f0d96b47d2a98ac7ee5c64b
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceList.C
@@ -0,0 +1,180 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "basicSourceList.H"
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::basicSourceList::basicSourceList
+(
+    const fvMesh& mesh,
+    const dictionary& dict
+)
+:
+    PtrList<basicSource>(),
+    mesh_(mesh)
+{
+    label count = 0;
+    forAllConstIter(dictionary, dict, iter)
+    {
+        // safety:
+        if (iter().isDict())
+        {
+            count ++;
+        }
+    }
+
+    this->setSize(count);
+    label i = 0;
+    forAllConstIter(dictionary, dict, iter)
+    {
+        const word& name = iter().keyword();
+        const dictionary& dict = iter().dict();
+
+        this->set
+        (
+            i++,
+            basicSource::New(name, dict, mesh)
+        );
+    }
+}
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+
+void Foam::basicSourceList::addSu(fvMatrix<scalar>& Eqn)
+{
+    forAll(*this, i)
+    {
+        if (this->operator[](i).isActive())
+        {
+            this->operator[](i).addSu(Eqn);
+        }
+    }
+}
+
+
+void Foam::basicSourceList::addSu(fvMatrix<vector>& Eqn)
+{
+
+    forAll(*this, i)
+    {
+        if (this->operator[](i).isActive())
+        {
+            this->operator[](i).addSu(Eqn);
+        }
+    }
+}
+
+
+void Foam::basicSourceList::addExplicitSources()
+{
+
+    forAll(*this, i)
+    {
+        if (this->operator[](i).isActive())
+        {
+            this->operator[](i).addExplicitSources();
+        }
+    }
+}
+
+
+void Foam::basicSourceList::addSu
+(
+    DimensionedField<scalar, volMesh>& field
+)
+{
+    forAll(*this, i)
+    {
+        if (this->operator[](i).isActive())
+        {
+            this->operator[](i).addSu(field);
+        }
+    }
+}
+
+
+void Foam::basicSourceList::addSu
+(
+    DimensionedField<vector, volMesh>& field
+)
+{
+    forAll(*this, i)
+    {
+        if (this->operator[](i).isActive())
+        {
+            this->operator[](i).addSu(field);
+        }
+    }
+}
+
+
+bool Foam::basicSourceList::read(const dictionary& dict)
+{
+    forAll(*this, i)
+    {
+        this->operator[](i).read(dict);
+    }
+    return true;
+}
+
+
+bool Foam::basicSourceList::writeData(Ostream& os) const
+{
+    // Write size of list
+    os << nl << this->size();
+
+    // Write beginning of contents
+    os << nl << token::BEGIN_LIST;
+
+    // Write list contents
+    forAll(*this, i)
+    {
+        os << nl;
+        this->operator[](i).writeData(os);
+    }
+
+    // Write end of contents
+    os << token::END_LIST << token::END_STATEMENT << nl;
+
+    // Check state of IOstream
+     return os.good();
+}
+
+
+// * * * * * * * * * * * * * * * IOstream Operators  * * * * * * * * * * * * //
+
+Foam::Ostream& Foam::operator<<
+(
+    Ostream& os,
+    const basicSourceList& sources
+)
+{
+    sources.writeData(os);
+    return os;
+}
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceList.H b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceList.H
new file mode 100644
index 0000000000000000000000000000000000000000..96490f94ef98707dd75571475de00efa82b805b0
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/basicSource/basicSourceList.H
@@ -0,0 +1,137 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::basicsourceList
+
+Description
+    List of explict sources
+
+SourceFile
+    basicSourceList.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef basicSourceList_H
+#define basicSourceList_H
+
+#include "PtrList.H"
+#include "DimensionedField.H"
+#include "basicSource.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                        Class basicSourceList Declaration
+\*---------------------------------------------------------------------------*/
+
+class basicSourceList
+:
+    public PtrList<basicSource>
+{
+private:
+
+    // Private data
+
+        //- Reference to the mesh database
+        const fvMesh& mesh_;
+
+
+    // Private Member Functions
+
+        //- Disallow default bitwise copy construct
+        basicSourceList
+        (
+            const basicSourceList&
+        );
+
+        //- Disallow default bitwise assignment
+        void operator=(const basicSourceList&);
+
+
+public:
+
+    // Constructors
+
+        //- Construct from components with list of field names
+        basicSourceList
+        (
+            const fvMesh& mesh,
+            const dictionary& dict
+        );
+
+
+    // Destructor
+        virtual ~basicSourceList()
+        {}
+
+
+    // Member Functions
+
+        // Evaluation
+
+            //- Add all explicit sources
+            void addExplicitSources();
+
+             //- Add source to scalar field
+            void addSu(DimensionedField<scalar, volMesh>& field);
+
+            //- Add source to vector field
+            void addSu(DimensionedField<vector, volMesh>& field);
+
+            //- Add source terms to scalar fvMatrix
+            void addSu(fvMatrix<scalar>& Eq);
+
+            //- Add source terms to vector fvMatrix
+            void addSu(fvMatrix<vector>& Eq);
+
+
+        // I-O
+
+            //- Read dictionary
+            virtual bool read(const dictionary& dict);
+
+            //- Write data to Istream
+            virtual bool writeData(Ostream& os) const;
+
+            //- Ostream operator
+            friend Ostream& operator<<
+            (
+                Ostream& os,
+                const basicSourceList& sources
+            );
+
+};
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSource.C b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSource.C
new file mode 100644
index 0000000000000000000000000000000000000000..9798d82ce850c9161fc487b40d1b3b8b7798d9d9
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSource.C
@@ -0,0 +1,321 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "explicitSource.H"
+#include "fvMesh.H"
+#include "volFields.H"
+#include "addToRunTimeSelectionTable.H"
+#include "HashSet.H"
+
+// * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTypeNameAndDebug(explicitSource, 0);
+    addToRunTimeSelectionTable
+    (
+        basicSource,
+        explicitSource,
+        dictionary
+    );
+}
+
+const Foam::wordList Foam::explicitSource::volumeModeTypeNames_
+(
+    IStringStream("(absolute specific)")()
+);
+
+
+// * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
+
+void Foam::explicitSource::setSelectedCellsFromPoints()
+{
+    labelHashSet selectedCells;
+
+    forAll(points_, i)
+    {
+        label cellI = this->mesh().findCell(points_[i]);
+        if (cellI >= 0)
+        {
+            selectedCells.insert(cellI);
+        }
+
+        label globalCellI = returnReduce(cellI, maxOp<label>());
+
+        if (globalCellI < 0)
+        {
+            WarningIn
+            (
+                "explicitSource::setSelectedCellsFromPoints()"
+            )
+            << "Unable to find owner cell for point " << points_[i]
+            << endl;
+        }
+    }
+
+    this->cells() = selectedCells.toc();
+}
+
+
+template<class Type>
+void Foam::explicitSource::addSources
+(
+    Field<Type>& fieldSource,
+    Type& data
+) const
+{
+    forAll(this->cells(), i)
+    {
+        fieldSource[this->cells()[i]] = data/volSource_[i];
+    }
+}
+
+
+// * * * * * * * * * * * * Protected Member Functions  * * * * * * * * * * * //
+
+Foam::explicitSource::volumeModeType
+Foam::explicitSource::wordToVolumeModeType
+(
+    const word& vmtName
+) const
+{
+    forAll(volumeModeTypeNames_, i)
+    {
+        if (vmtName == volumeModeTypeNames_[i])
+        {
+            return volumeModeType(i);
+        }
+    }
+
+    FatalErrorIn
+    (
+        "explicitSource<Type>::volumeModeType"
+        "explicitSource<Type>::wordToVolumeModeType(const word&)"
+    )   << "Unknown volumeMode type " << vmtName
+        << ". Valid volumeMode types are:" << nl << volumeModeTypeNames_
+        << exit(FatalError);
+
+    return volumeModeType(0);
+}
+
+
+Foam::word Foam::explicitSource::volumeModeTypeToWord
+(
+    const volumeModeType& vmtType
+) const
+{
+    if (vmtType > volumeModeTypeNames_.size())
+    {
+        return "UNKNOWN";
+    }
+    else
+    {
+        return volumeModeTypeNames_[vmtType];
+    }
+}
+
+template <class Type>
+void Foam::explicitSource::addField
+(
+    HashTable<Type>& fields,
+    const wordList& fieldTypes,
+    const wordList& fieldNames,
+    const dictionary& fieldDataDict
+)
+{
+    forAll (fieldTypes, fieldI)
+    {
+        word fieldName = fieldNames[fieldI];
+        word fieldType = fieldTypes[fieldI];
+
+        typedef GeometricField<Type, fvPatchField, volMesh> geometricField;
+
+        if
+        (
+            (
+                fieldType
+             == GeometricField<Type, fvPatchField, volMesh>::typeName
+            ) &&
+            (
+                this->mesh().foundObject<geometricField>(fieldName)
+            )
+        )
+        {
+            Type fieldValue = fieldDataDict.lookupOrDefault<Type>
+            (
+                fieldName,
+                pTraits<Type>::zero
+            );
+
+            fields.insert(fieldName, fieldValue);
+        }
+    }
+}
+
+
+void Foam::explicitSource::setFieldData
+(
+    const dictionary& dict
+)
+{
+    scalarFields_.clear();
+    vectorFields_.clear();
+
+    wordList fieldTypes(dict.toc().size());
+    wordList fieldNames(dict.toc().size());
+
+    forAll(dict.toc(), i)
+    {
+        const word& fieldName = dict.toc()[i];
+        IOobject io
+        (
+            fieldName,
+            this->mesh().time().timeName(0),
+            this->mesh(),
+            IOobject::NO_READ,
+            IOobject::NO_WRITE,
+            false
+        );
+        if (io.headerOk())
+        {
+            fieldTypes[i] = io.headerClassName();
+            fieldNames[i] = dict.toc()[i];
+        }
+        else
+        {
+            FatalErrorIn
+            (
+                "explicitSource::setFieldData"
+            )   << "header not OK " << io.name()
+                << exit(FatalError);
+        }
+    }
+
+    addField(scalarFields_, fieldTypes, fieldNames, dict);
+    addField(vectorFields_, fieldTypes, fieldNames, dict);
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::explicitSource::explicitSource
+(
+    const word& name,
+    const dictionary& dict,
+    const fvMesh& mesh
+)
+:
+    basicSource(name, dict, mesh),
+    scalarFields_(0, *this),
+    vectorFields_(0, *this),
+    dict_(dict.subDict(typeName + "Coeffs")),
+    volumeMode_(wordToVolumeModeType(dict_.lookup("volumeMode"))),
+    points_(),
+    volSource_(this->cells().size(), 1.0)
+{
+    setFieldData(dict_.subDict("fieldData"));
+
+    // Set points if selectionMode is smPoints
+    if (this->selectionMode() == smPoints)
+    {
+        dict_.lookup("points") >> points_;
+        setSelectedCellsFromPoints();
+        volSource_.setSize(points_.size(), 1.0);
+    }
+
+    const labelList& cellList = this->cells();
+    scalar V = 0.0;
+    if (volumeMode_ == vmAbsolute)
+    {
+        forAll(cellList, cellI)
+        {
+            volSource_[cellI] = mesh.V()[cellList[cellI]];
+            V += volSource_[cellI];
+        }
+    }
+    else
+    {
+        forAll(cellList, cellI)
+        {
+            V += mesh.V()[cellList[cellI]];
+        }
+    }
+
+    reduce(V, sumOp<scalar>());
+
+    Info<< "- selected " << returnReduce(cellList.size(), sumOp<label>())
+        << " cell(s) with Volume: " << V << " in time activated sources "
+        <<  endl;
+}
+
+
+void Foam::explicitSource::addSu
+(
+    fvMatrix<scalar>& Eqn
+)
+{
+    Field<scalar>& source = Eqn.source();
+    scalar data = scalarFields_[Eqn.psi().name()];
+    addSources<scalar>(source, data);
+}
+
+
+void Foam::explicitSource::addSu
+(
+    fvMatrix<vector>& Eqn
+)
+{
+    Field<vector>& source = Eqn.source();
+    vector data = vectorFields_[Eqn.psi().name()];
+    addSources<vector>(source, data);
+}
+
+
+void Foam::explicitSource::addSu
+(
+    DimensionedField<scalar, volMesh>& field
+)
+{
+    scalar data = scalarFields_[field.name()];
+    addSources<scalar>(field, data);
+}
+
+
+void Foam::explicitSource::addSu
+(
+    DimensionedField<vector, volMesh>& field
+)
+{
+    vector data = vectorFields_[field.name()];
+    addSources<vector>(field, data);
+}
+
+void Foam::explicitSource::addExplicitSources()
+{
+    scalarFields_.applySources();
+    vectorFields_.applySources();
+}
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSource.H b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSource.H
new file mode 100644
index 0000000000000000000000000000000000000000..8aba2a2dca79cb7e1069f806a4a1874222a14c18
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSource.H
@@ -0,0 +1,289 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::explicitSource
+
+Description
+    Explicit source.
+
+    Sources described by:
+
+    explicitSourceCoeffs
+    {
+        points            // list of points when selectionMode = points
+        (
+            (-0.088 0.007 -0.02)
+            (-0.028 0.007 -0.02)
+        );
+        volumeMode          specific;  //absolute
+        fieldData            // field data - usage for multiple fields
+        {
+            k   30.7;
+            epsilon  1.5;
+        }
+    }
+
+SourceFiles
+    explicitSource.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef explicitSource_H
+#define explicitSource_H
+
+#include "cellSet.H"
+#include "volFieldsFwd.H"
+#include "DimensionedField.H"
+#include "basicSource.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                      Class explicitSource Declaration
+\*---------------------------------------------------------------------------*/
+
+class explicitSource
+:
+    public basicSource
+{
+    // Private classes
+
+        template<class Type>
+        class fieldList
+        :
+            public HashTable<Type>
+        {
+
+            explicitSource& OwnerPtr_;
+
+        public:
+
+            //- null Constructor
+            fieldList()
+            :
+                HashTable<Type>(0),
+                OwnerPtr_()
+            {}
+
+
+            //- Constructor
+            fieldList(label size, explicitSource& ownerPtr)
+            :
+                HashTable<Type>(size),
+                OwnerPtr_(ownerPtr)
+            {}
+
+
+            void applySources()
+            {
+                typedef GeometricField<Type, fvPatchField, volMesh>
+                    geometricField;
+
+                forAll(this->toc(), i)
+                {
+                    geometricField& field = const_cast<geometricField&>
+                    (
+                        OwnerPtr_.mesh().lookupObject<geometricField>
+                            (this->toc()[i])
+                    );
+
+                    Type data = this->operator[](field.name());
+                    OwnerPtr_.addSources<Type>(field.internalField(), data);
+                }
+            }
+        };
+
+private:
+
+    // Private cdata
+
+        //- List of field types
+        fieldList<scalar> scalarFields_;
+        fieldList<vector> vectorFields_;
+
+        //- Add field names and values to field table for types.
+        template<class Type>
+        void addField
+        (
+            HashTable<Type>& fields,
+            const wordList& fieldTypes,
+            const wordList& fieldNames,
+            const dictionary& dict_
+        );
+
+
+        //- Add data to field source
+        template<class Type>
+        void addSources
+        (
+            Field<Type>& fieldSource,
+            Type& data
+        ) const;
+
+
+public:
+
+
+    // Public data
+
+        //- Enumeration for volume types
+        enum volumeModeType
+        {
+            vmAbsolute,
+            vmSpecific
+        };
+
+        //- Word list of volume mode type names
+        static const wordList volumeModeTypeNames_;
+
+
+protected:
+
+    // Protected data
+
+         //- Sub dictionary for time activated explicit sources
+        const dictionary& dict_;
+
+        //- Volume mode
+        volumeModeType volumeMode_;
+
+        //- List of points for "points" selectionMode
+        List<point> points_;
+
+        //- Volume of the explicit source
+        scalarList volSource_;
+
+
+    // Protected functions
+
+        //- Helper function to convert from a word to a volumeModeType
+        volumeModeType wordToVolumeModeType(const word& vtName) const;
+
+        //- Helper function to convert from a volumeModeType to a word
+        word volumeModeTypeToWord(const volumeModeType& vtType) const;
+
+        //- Set the local field data
+        void setFieldData(const dictionary& dict);
+
+        //- Set selected cells when smPoint is used
+        void setSelectedCellsFromPoints();
+
+
+public:
+
+    //- Runtime type information
+    TypeName("explicitSource");
+
+
+    // Constructors
+
+        //- Construct from components
+        explicitSource
+        (
+            const word& name,
+            const dictionary& dict,
+            const fvMesh& mesh
+        );
+
+        //- Return clone
+        autoPtr<explicitSource> clone() const
+        {
+            notImplemented
+            (
+                "autoPtr<explicitSource> clone() const"
+            );
+            return autoPtr<explicitSource>(NULL);
+        }
+
+
+
+    // Member Functions
+
+        // Access
+
+            //- Return const access to the volume mode
+            inline const volumeModeType& volumeMode() const;
+
+
+        // Edit
+
+            //- Return access to the volume mode
+            inline volumeModeType& volumeMode();
+
+            //- Return points
+            inline  const List<point>& points() const;
+
+
+        // Evaluation
+
+            //-Source term to fvMatrix<vector>
+            virtual void addSu(fvMatrix<vector>& UEqn);
+
+            //-Source term to fvMatrix<scalar>
+            virtual void addSu(fvMatrix<scalar>& UEqn);
+
+            //- Add all explicit source
+            virtual void addExplicitSources();
+
+            //- Add source to scalar field
+            virtual void addSu(DimensionedField<vector, volMesh>& field);
+
+            //- Add source to vector field
+            virtual void addSu(DimensionedField<scalar, volMesh>& field);
+
+
+        // I-O
+
+            //- Write the source properties
+            virtual void writeData(Ostream&) const;
+
+            //- Read fieldData in sub-dictionary
+            virtual bool read(const dictionary& dict);
+
+            //- Ostream operator
+            friend Ostream& operator<<
+            (
+                Ostream& os,
+                const explicitSource& source
+            );
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#include "explicitSourceIO.C"
+#include "explicitSourceI.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSourceI.H b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSourceI.H
new file mode 100644
index 0000000000000000000000000000000000000000..6ba8c3571fb6cc9205940ce9968935a2a86401a2
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSourceI.H
@@ -0,0 +1,49 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "explicitSource.H"
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+inline const Foam::explicitSource::volumeModeType&
+Foam::explicitSource::volumeMode() const
+{
+    return volumeMode_;
+}
+
+
+inline Foam::explicitSource::volumeModeType&
+Foam::explicitSource::volumeMode()
+{
+    return volumeMode_;
+}
+
+
+inline const Foam::List<Foam::point>&
+Foam::explicitSource::points() const
+{
+    return points_;
+}
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSourceIO.C b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSourceIO.C
new file mode 100644
index 0000000000000000000000000000000000000000..b9e3c827079d557b59eecde7df6b32003d170977
--- /dev/null
+++ b/src/finiteVolume/cfdTools/general/fieldSources/basicSource/explicitSource/explicitSourceIO.C
@@ -0,0 +1,83 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "explicitSource.H"
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+void Foam::explicitSource::writeData(Ostream& os) const
+{
+    os  << indent << name_ << nl
+        << indent << token::BEGIN_BLOCK << incrIndent << nl;
+
+    os.writeKeyword("volumeMode") << volumeModeTypeToWord(volumeMode_)
+        << token::END_STATEMENT << nl;
+
+    if (scalarFields_.size() > 0)
+    {
+        os.writeKeyword("scalarFields") << scalarFields_
+            << token::END_STATEMENT << nl;
+    }
+
+    if (vectorFields_.size() > 0)
+    {
+        os.writeKeyword("vectorFields") << vectorFields_
+            << token::END_STATEMENT << nl;
+    }
+
+    os << decrIndent << indent << token::END_BLOCK << endl;
+}
+
+
+bool Foam::explicitSource::read(const dictionary& dict)
+{
+    if (basicSource::read(dict))
+    {
+        const dictionary& sourceDict = dict.subDict(name());
+        const dictionary& subDictCoeffs = sourceDict.subDict(typeName + "Coeffs");
+        setFieldData(subDictCoeffs.subDict("fieldData"));
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+
+// * * * * * * * * * * * * * * * IOstream Operators  * * * * * * * * * * * * //
+
+Foam::Ostream& Foam::operator<<
+(
+    Ostream& os,
+    const explicitSource& source
+)
+{
+    source.writeData(os);
+    return os;
+}
+
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/cfdTools/general/fieldSources/pressureGradientExplicitSource/pressureGradientExplicitSource.C b/src/finiteVolume/cfdTools/general/fieldSources/pressureGradientExplicitSource/pressureGradientExplicitSource.C
index 6f5af3bfab99e4a836fe0c201546ceccc2664963..b4351f34c700d4ad04eed3b40e4c4edfcd32dbb5 100644
--- a/src/finiteVolume/cfdTools/general/fieldSources/pressureGradientExplicitSource/pressureGradientExplicitSource.C
+++ b/src/finiteVolume/cfdTools/general/fieldSources/pressureGradientExplicitSource/pressureGradientExplicitSource.C
@@ -70,7 +70,7 @@ Foam::pressureGradientExplicitSource::pressureGradientExplicitSource
             sourceName + "Properties",
             mesh_.time().constant(),
             mesh_,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/src/finiteVolume/cfdTools/general/include/readPIMPLEControls.H b/src/finiteVolume/cfdTools/general/include/readPIMPLEControls.H
index 9de98ee20b5a90380c805c3a56a803a706729040..7e88ec410b71318a48d7e7382c18c5500371453b 100644
--- a/src/finiteVolume/cfdTools/general/include/readPIMPLEControls.H
+++ b/src/finiteVolume/cfdTools/general/include/readPIMPLEControls.H
@@ -1,13 +1,17 @@
-    dictionary pimple = mesh.solutionDict().subDict("PIMPLE");
+    const dictionary& pimple = mesh.solutionDict().subDict("PIMPLE");
 
-    int nOuterCorr(readInt(pimple.lookup("nOuterCorrectors")));
-    int nCorr(readInt(pimple.lookup("nCorrectors")));
+    const int nOuterCorr =
+        pimple.lookupOrDefault<int>("nOuterCorrectors", 1);
 
-    int nNonOrthCorr =
+    const int nCorr =
+        pimple.lookupOrDefault<int>("nCorrectors", 1);
+
+    const int nNonOrthCorr =
         pimple.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0);
 
-    bool momentumPredictor =
-        pimple.lookupOrDefault<Switch>("momentumPredictor", true);
+    const bool momentumPredictor =
+        pimple.lookupOrDefault("momentumPredictor", true);
+
+    const bool transonic =
+        pimple.lookupOrDefault("transonic", false);
 
-    bool transonic =
-        pimple.lookupOrDefault<Switch>("transonic", false);
diff --git a/src/finiteVolume/cfdTools/general/include/readPISOControls.H b/src/finiteVolume/cfdTools/general/include/readPISOControls.H
index de763e00b0c4b92769dcdbcdacbeec2049ec9a44..61cb2f7a8c734a3a33efeea278115d4588a65680 100644
--- a/src/finiteVolume/cfdTools/general/include/readPISOControls.H
+++ b/src/finiteVolume/cfdTools/general/include/readPISOControls.H
@@ -1,15 +1,17 @@
-    dictionary piso = mesh.solutionDict().subDict("PISO");
+    const dictionary& piso = mesh.solutionDict().subDict("PISO");
 
-    int nCorr(readInt(piso.lookup("nCorrectors")));
+    const int nOuterCorr =
+        piso.lookupOrDefault<int>("nOuterCorrectors", 1);
+
+    const int nCorr =
+        piso.lookupOrDefault<int>("nCorrectors", 1);
 
-    int nNonOrthCorr =
+    const int nNonOrthCorr =
         piso.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0);
 
-    bool momentumPredictor =
-        piso.lookupOrDefault<Switch>("momentumPredictor", true);
+    const bool momentumPredictor =
+        piso.lookupOrDefault("momentumPredictor", true);
 
-    bool transonic =
-        piso.lookupOrDefault<Switch>("transonic", false);
+    const bool transonic =
+        piso.lookupOrDefault("transonic", false);
 
-    int nOuterCorr =
-        piso.lookupOrDefault<int>("nOuterCorrectors", 1);
diff --git a/src/finiteVolume/cfdTools/general/include/readSIMPLEControls.H b/src/finiteVolume/cfdTools/general/include/readSIMPLEControls.H
index b3ea4bf674b51cb33efa0a9a41efbed125d8e0a8..26575dde417dd6ca6ae14eed11df698558a4a4c8 100644
--- a/src/finiteVolume/cfdTools/general/include/readSIMPLEControls.H
+++ b/src/finiteVolume/cfdTools/general/include/readSIMPLEControls.H
@@ -1,14 +1,11 @@
-    dictionary simple = mesh.solutionDict().subDict("SIMPLE");
+    const dictionary& simple = mesh.solutionDict().subDict("SIMPLE");
 
-    int nNonOrthCorr =
+    const int nNonOrthCorr =
         simple.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0);
 
-    bool momentumPredictor =
-        simple.lookupOrDefault<Switch>("momentumPredictor", true);
+    const bool momentumPredictor =
+        simple.lookupOrDefault("momentumPredictor", true);
 
-    bool fluxGradp =
-        simple.lookupOrDefault<Switch>("fluxGradp", false);
-
-    bool transonic =
-        simple.lookupOrDefault<Switch>("transonic", false);
+    const bool transonic =
+        simple.lookupOrDefault("transonic", false);
 
diff --git a/src/finiteVolume/cfdTools/general/include/readTimeControls.H b/src/finiteVolume/cfdTools/general/include/readTimeControls.H
index 1bedd175576fc379195977bc342b0ac0e6d5a65f..60b2e204928c3776aef0027151be2fd439300be5 100644
--- a/src/finiteVolume/cfdTools/general/include/readTimeControls.H
+++ b/src/finiteVolume/cfdTools/general/include/readTimeControls.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -29,15 +29,11 @@ Description
 
 \*---------------------------------------------------------------------------*/
 
-Switch adjustTimeStep
-(
-    runTime.controlDict().lookup("adjustTimeStep")
-);
+const bool adjustTimeStep =
+    runTime.controlDict().lookupOrDefault("adjustTimeStep", false);
 
-scalar maxCo
-(
-    readScalar(runTime.controlDict().lookup("maxCo"))
-);
+scalar maxCo =
+    runTime.controlDict().lookupOrDefault<scalar>("maxCo", 1.0);
 
 scalar maxDeltaT =
     runTime.controlDict().lookupOrDefault<scalar>("maxDeltaT", GREAT);
diff --git a/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.C
index 7db899daa1a3e91da174dda88916721bbf11cf86..e402e4edcac7193b5a441c95ecfa3f5ecb51596f 100644
--- a/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.C
+++ b/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.C
@@ -1,6 +1,6 @@
 /*---------------------------------------------------------------------------*\
   =========                 |
-  \\      /  F ield         | OpenOAM: The Open Source CFD Toolbox
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
     \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
      \\/     M anipulation  |
@@ -26,15 +26,10 @@ License
 #include "directionMixedFvPatchField.H"
 #include "symmTransformField.H"
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
 template<class Type>
-directionMixedFvPatchField<Type>::directionMixedFvPatchField
+Foam::directionMixedFvPatchField<Type>::directionMixedFvPatchField
 (
     const fvPatch& p,
     const DimensionedField<Type, volMesh>& iF
@@ -48,7 +43,7 @@ directionMixedFvPatchField<Type>::directionMixedFvPatchField
 
 
 template<class Type>
-directionMixedFvPatchField<Type>::directionMixedFvPatchField
+Foam::directionMixedFvPatchField<Type>::directionMixedFvPatchField
 (
     const directionMixedFvPatchField<Type>& ptf,
     const fvPatch& p,
@@ -64,7 +59,7 @@ directionMixedFvPatchField<Type>::directionMixedFvPatchField
 
 
 template<class Type>
-directionMixedFvPatchField<Type>::directionMixedFvPatchField
+Foam::directionMixedFvPatchField<Type>::directionMixedFvPatchField
 (
     const fvPatch& p,
     const DimensionedField<Type, volMesh>& iF,
@@ -81,7 +76,7 @@ directionMixedFvPatchField<Type>::directionMixedFvPatchField
 
 
 template<class Type>
-directionMixedFvPatchField<Type>::directionMixedFvPatchField
+Foam::directionMixedFvPatchField<Type>::directionMixedFvPatchField
 (
     const directionMixedFvPatchField<Type>& ptf,
     const DimensionedField<Type, volMesh>& iF
@@ -97,7 +92,7 @@ directionMixedFvPatchField<Type>::directionMixedFvPatchField
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
 template<class Type>
-void directionMixedFvPatchField<Type>::autoMap
+void Foam::directionMixedFvPatchField<Type>::autoMap
 (
     const fvPatchFieldMapper& m
 )
@@ -110,7 +105,7 @@ void directionMixedFvPatchField<Type>::autoMap
 
 
 template<class Type>
-void directionMixedFvPatchField<Type>::rmap
+void Foam::directionMixedFvPatchField<Type>::rmap
 (
     const fvPatchField<Type>& ptf,
     const labelList& addr
@@ -128,7 +123,8 @@ void directionMixedFvPatchField<Type>::rmap
 
 
 template<class Type>
-tmp<Field<Type> > directionMixedFvPatchField<Type>::snGrad() const
+Foam::tmp<Foam::Field<Type> >
+Foam::directionMixedFvPatchField<Type>::snGrad() const
 {
     Field<Type> pif = this->patchInternalField();
 
@@ -146,7 +142,7 @@ tmp<Field<Type> > directionMixedFvPatchField<Type>::snGrad() const
 
 
 template<class Type>
-void directionMixedFvPatchField<Type>::evaluate(const Pstream::commsTypes)
+void Foam::directionMixedFvPatchField<Type>::evaluate(const Pstream::commsTypes)
 {
     if (!this->updated())
     {
@@ -168,7 +164,8 @@ void directionMixedFvPatchField<Type>::evaluate(const Pstream::commsTypes)
 
 
 template<class Type>
-tmp<Field<Type> > directionMixedFvPatchField<Type>::snGradTransformDiag() const
+Foam::tmp<Foam::Field<Type> >
+Foam::directionMixedFvPatchField<Type>::snGradTransformDiag() const
 {
     vectorField diag(valueFraction_.size());
 
@@ -193,7 +190,7 @@ tmp<Field<Type> > directionMixedFvPatchField<Type>::snGradTransformDiag() const
 
 
 template<class Type>
-void directionMixedFvPatchField<Type>::write(Ostream& os) const
+void Foam::directionMixedFvPatchField<Type>::write(Ostream& os) const
 {
     transformFvPatchField<Type>::write(os);
     refValue_.writeEntry("refValue", os);
@@ -203,8 +200,4 @@ void directionMixedFvPatchField<Type>::write(Ostream& os) const
 }
 
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-} // End namespace Foam
-
 // ************************************************************************* //
diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.C
index c0a785597dd5744a19747c4097b478f44d69e75f..29af5002efd57f458173f850dd5e39cbfe1fcd3e 100644
--- a/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.C
+++ b/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.C
@@ -126,6 +126,20 @@ processorCyclicFvPatchField<Type>::processorCyclicFvPatchField
             << " in file " << this->dimensionedInternalField().objectPath()
             << exit(FatalIOError);
     }
+
+    if (Pstream::defaultCommsType == Pstream::scheduled)
+    {
+        WarningIn
+        (
+            "processorCyclicFvPatchField<Type>::processorCyclicFvPatchField\n"
+            "(\n"
+            "    const fvPatch& p,\n"
+            "    const DimensionedField<Type, volMesh>& iF,\n"
+            "    const dictionary& dict\n"
+            ")\n"
+        )   << "Scheduled communication with split cyclics not supported."
+            << endl;
+    }
 }
 
 
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.C b/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.C
new file mode 100644
index 0000000000000000000000000000000000000000..64282fde04c83ec7caa5d5afbb7b7f7a5c74c632
--- /dev/null
+++ b/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.C
@@ -0,0 +1,173 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software; you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by the
+    Free Software Foundation; either version 3 of the License, or (at your
+    option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM; if not, write to the Free Software Foundation,
+    Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+\*---------------------------------------------------------------------------*/
+
+#include "cylindricalInletVelocityFvPatchVectorField.H"
+#include "volFields.H"
+#include "addToRunTimeSelectionTable.H"
+#include "fvPatchFieldMapper.H"
+#include "surfaceFields.H"
+#include "mathematicalConstants.H"
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::
+cylindricalInletVelocityFvPatchVectorField::
+cylindricalInletVelocityFvPatchVectorField
+(
+    const fvPatch& p,
+    const DimensionedField<vector, volMesh>& iF
+)
+:
+    fixedValueFvPatchField<vector>(p, iF),
+    axialVelocity_(0),
+    centre_(pTraits<vector>::zero),
+    axis_(pTraits<vector>::zero),
+    rpm_(0),
+    radialVelocity_(0)
+{}
+
+
+Foam::
+cylindricalInletVelocityFvPatchVectorField::
+cylindricalInletVelocityFvPatchVectorField
+(
+    const cylindricalInletVelocityFvPatchVectorField& ptf,
+    const fvPatch& p,
+    const DimensionedField<vector, volMesh>& iF,
+    const fvPatchFieldMapper& mapper
+)
+:
+    fixedValueFvPatchField<vector>(ptf, p, iF, mapper),
+    axialVelocity_(ptf.axialVelocity_),
+    centre_(ptf.centre_),
+    axis_(ptf.axis_),
+    rpm_(ptf.rpm_),
+    radialVelocity_(ptf.radialVelocity_)
+{}
+
+
+Foam::
+cylindricalInletVelocityFvPatchVectorField::
+cylindricalInletVelocityFvPatchVectorField
+(
+    const fvPatch& p,
+    const DimensionedField<vector, volMesh>& iF,
+    const dictionary& dict
+)
+:
+    fixedValueFvPatchField<vector>(p, iF, dict),
+    axialVelocity_(readScalar(dict.lookup("axialVelocity"))),
+    centre_(dict.lookup("centre")),
+    axis_(dict.lookup("axis")),
+    rpm_(readScalar(dict.lookup("rpm"))),
+    radialVelocity_(readScalar(dict.lookup("radialVelocity")))
+{}
+
+
+Foam::
+cylindricalInletVelocityFvPatchVectorField::
+cylindricalInletVelocityFvPatchVectorField
+(
+    const cylindricalInletVelocityFvPatchVectorField& ptf
+)
+:
+    fixedValueFvPatchField<vector>(ptf),
+    axialVelocity_(ptf.axialVelocity_),
+    centre_(ptf.centre_),
+    axis_(ptf.axis_),
+    rpm_(ptf.rpm_),
+    radialVelocity_(ptf.radialVelocity_)
+{}
+
+
+Foam::
+cylindricalInletVelocityFvPatchVectorField::
+cylindricalInletVelocityFvPatchVectorField
+(
+    const cylindricalInletVelocityFvPatchVectorField& ptf,
+    const DimensionedField<vector, volMesh>& iF
+)
+:
+    fixedValueFvPatchField<vector>(ptf, iF),
+    axialVelocity_(ptf.axialVelocity_),
+    centre_(ptf.centre_),
+    axis_(ptf.axis_),
+    rpm_(ptf.rpm_),
+    radialVelocity_(ptf.radialVelocity_)
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+void Foam::cylindricalInletVelocityFvPatchVectorField::updateCoeffs()
+{
+    if (updated())
+    {
+        return;
+    }
+
+    vector hatAxis = axis_/mag(axis_);
+
+    vectorField r = (patch().Cf() - centre_);
+
+    vectorField d =  r - (hatAxis & r)*hatAxis;
+
+    vectorField tangVelo =
+        (rpm_*constant::mathematical::pi/30.0)*(hatAxis)^d;
+
+    operator==(tangVelo + axis_*axialVelocity_ + radialVelocity_*d);
+
+    fixedValueFvPatchField<vector>::updateCoeffs();
+}
+
+
+void Foam::cylindricalInletVelocityFvPatchVectorField::write(Ostream& os) const
+{
+    fvPatchField<vector>::write(os);
+    os.writeKeyword("axialVelocity") << axialVelocity_ <<
+        token::END_STATEMENT << nl;
+    os.writeKeyword("centre") << centre_ << token::END_STATEMENT << nl;
+    os.writeKeyword("axis") << axis_ << token::END_STATEMENT << nl;
+    os.writeKeyword("rpm") << rpm_ << token::END_STATEMENT << nl;
+    os.writeKeyword("radialVelocity") << radialVelocity_ <<
+        token::END_STATEMENT << nl;
+    writeEntry("value", os);
+}
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+   makePatchTypeField
+   (
+       fvPatchVectorField,
+       cylindricalInletVelocityFvPatchVectorField
+   );
+}
+
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.H
new file mode 100644
index 0000000000000000000000000000000000000000..a08d6801dc79e7b3c9c8f08fbfa66f720a09b7ab
--- /dev/null
+++ b/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.H
@@ -0,0 +1,175 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software; you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by the
+    Free Software Foundation; either version 3 of the License, or (at your
+    option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM; if not, write to the Free Software Foundation,
+    Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+Class
+    Foam::cylindricalInletVelocityFvPatchVectorField
+
+Description
+    Describes an inlet vector boundary condition in cylindrical coordinates
+    given a central axis, central point, rpm, axial and radial velocity.
+
+    Example of the boundary condition specification:
+    @verbatim
+    inlet
+    {
+        type            cylindricalInletVelocity;
+        axis            (0 0 1);
+        centre          (0 0 0);
+        axialVelocity   30;
+        rpm             100;
+        radialVelocity  -10;
+    }
+    @endverbatim
+
+
+SourceFiles
+    cylindricalInletVelocityFvPatchVectorField.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef cylindricalInletVelocityFvPatchVectorField_H
+#define cylindricalInletVelocityFvPatchVectorField_H
+
+#include "fixedValueFvPatchFields.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+/*---------------------------------------------------------------------------*\
+         Class cylindricalInletVelocityFvPatchVectorField Declaration
+\*---------------------------------------------------------------------------*/
+
+class cylindricalInletVelocityFvPatchVectorField
+:
+    public fixedValueFvPatchVectorField
+{
+    // Private data
+
+        //- Axial velocity
+        scalar axialVelocity_;
+
+        //- Central point
+        vector centre_;
+
+        //- Axis
+        vector axis_;
+
+        //- RPM
+        scalar rpm_;
+
+        //- Radial velocity
+        scalar radialVelocity_;
+
+
+public:
+
+   //- Runtime type information
+   TypeName("cylindricalInletVelocity");
+
+
+   // Constructors
+
+        //- Construct from patch and internal field
+        cylindricalInletVelocityFvPatchVectorField
+        (
+            const fvPatch&,
+            const DimensionedField<vector, volMesh>&
+        );
+
+        //- Construct from patch, internal field and dictionary
+        cylindricalInletVelocityFvPatchVectorField
+        (
+            const fvPatch&,
+            const DimensionedField<vector, volMesh>&,
+            const dictionary&
+        );
+
+        //- Construct by mapping given
+        //  flowRateInletVelocityFvPatchVectorField
+        //  onto a new patch
+        cylindricalInletVelocityFvPatchVectorField
+        (
+            const cylindricalInletVelocityFvPatchVectorField&,
+            const fvPatch&,
+            const DimensionedField<vector, volMesh>&,
+            const fvPatchFieldMapper&
+        );
+
+        //- Construct as copy
+        cylindricalInletVelocityFvPatchVectorField
+        (
+            const cylindricalInletVelocityFvPatchVectorField&
+        );
+
+        //- Construct and return a clone
+        virtual tmp<fvPatchVectorField> clone() const
+        {
+            return tmp<fvPatchVectorField>
+            (
+                new cylindricalInletVelocityFvPatchVectorField(*this)
+            );
+        }
+
+        //- Construct as copy setting internal field reference
+        cylindricalInletVelocityFvPatchVectorField
+        (
+            const cylindricalInletVelocityFvPatchVectorField&,
+            const DimensionedField<vector, volMesh>&
+        );
+
+        //- Construct and return a clone setting internal field reference
+        virtual tmp<fvPatchVectorField> clone
+        (
+            const DimensionedField<vector, volMesh>& iF
+        ) const
+        {
+            return tmp<fvPatchVectorField>
+            (
+                new cylindricalInletVelocityFvPatchVectorField(*this, iF)
+            );
+        }
+
+
+    // Member functions
+
+
+        //- Update the coefficients associated with the patch field
+        virtual void updateCoeffs();
+
+        //- Write
+        virtual void write(Ostream&) const;
+
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.C b/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.C
index 489b82927f02cab4b5ff403b912ea16ef28638ce..a0684b9618dc121c4ddffc659e064b30e11e3c8d 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.C
+++ b/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.C
@@ -118,9 +118,9 @@ void Foam::flowRateInletVelocityFvPatchVectorField::updateCoeffs()
     }
 
     // a simpler way of doing this would be nice
-    scalar avgU = -flowRate_/gSum(patch().magSf());
+    const scalar avgU = -flowRate_/gSum(patch().magSf());
 
-    vectorField n = patch().nf();
+    tmp<vectorField> n = patch().nf();
 
     const surfaceScalarField& phi =
         db().lookupObject<surfaceScalarField>(phiName_);
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H
index f86fdbe29ae88be22723fc77eef3f28fe61c3fcf..690c7160b0aad3c4ca40b12e7d18f1f122834206 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H
+++ b/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H
@@ -37,9 +37,9 @@ Description
     @verbatim
     inlet
     {
-        type            flowRateInletVelocity;
-        flowRate        0.2;        // Volumetric/mass flow rate [m3/s or kg/s]
-        value           uniform (0 0 0); // placeholder
+        type        flowRateInletVelocity;
+        flowRate    0.2;        // Volumetric/mass flow rate [m3/s or kg/s]
+        value       uniform (0 0 0); // placeholder
     }
     @endverbatim
 
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.C
index 6b0dab35833e6c6fe7db4b20412b93c12a7d58b0..8153405f0ba3e6ba708c4aa509b1e4c4c005e02a 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.C
+++ b/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.C
@@ -80,10 +80,7 @@ freestreamFvPatchField<Type>::freestreamFvPatchField
         fvPatchField<Type>::operator=(freestreamValue());
     }
 
-    if (dict.found("phi"))
-    {
-        dict.lookup("phi") >> this->phiName_;
-    }
+    dict.readIfPresent("phi", this->phiName_);
 }
 
 
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/swirlMassFlowRateInletVelocity/swirlMassFlowRateInletVelocityFvPatchVectorField.C b/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.C
similarity index 71%
rename from src/finiteVolume/fields/fvPatchFields/derived/swirlMassFlowRateInletVelocity/swirlMassFlowRateInletVelocityFvPatchVectorField.C
rename to src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.C
index 44a2239dca334961687f7ae19a63402c92f9a7ac..7114dc1d26f590bd0cd6c8d80c69d7142e9b9f4c 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/swirlMassFlowRateInletVelocity/swirlMassFlowRateInletVelocityFvPatchVectorField.C
+++ b/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.C
@@ -23,7 +23,7 @@ License
 
 \*---------------------------------------------------------------------------*/
 
-#include "swirlMassFlowRateInletVelocityFvPatchVectorField.H"
+#include "swirlFlowRateInletVelocityFvPatchVectorField.H"
 #include "volFields.H"
 #include "addToRunTimeSelectionTable.H"
 #include "fvPatchFieldMapper.H"
@@ -33,8 +33,8 @@ License
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
 Foam::
-swirlMassFlowRateInletVelocityFvPatchVectorField::
-swirlMassFlowRateInletVelocityFvPatchVectorField
+swirlFlowRateInletVelocityFvPatchVectorField::
+swirlFlowRateInletVelocityFvPatchVectorField
 (
     const fvPatch& p,
     const DimensionedField<vector, volMesh>& iF
@@ -49,10 +49,10 @@ swirlMassFlowRateInletVelocityFvPatchVectorField
 
 
 Foam::
-swirlMassFlowRateInletVelocityFvPatchVectorField::
-swirlMassFlowRateInletVelocityFvPatchVectorField
+swirlFlowRateInletVelocityFvPatchVectorField::
+swirlFlowRateInletVelocityFvPatchVectorField
 (
-    const swirlMassFlowRateInletVelocityFvPatchVectorField& ptf,
+    const swirlFlowRateInletVelocityFvPatchVectorField& ptf,
     const fvPatch& p,
     const DimensionedField<vector, volMesh>& iF,
     const fvPatchFieldMapper& mapper
@@ -66,8 +66,8 @@ swirlMassFlowRateInletVelocityFvPatchVectorField
 
 
 Foam::
-swirlMassFlowRateInletVelocityFvPatchVectorField::
-swirlMassFlowRateInletVelocityFvPatchVectorField
+swirlFlowRateInletVelocityFvPatchVectorField::
+swirlFlowRateInletVelocityFvPatchVectorField
 (
     const fvPatch& p,
     const DimensionedField<vector, volMesh>& iF,
@@ -83,10 +83,10 @@ swirlMassFlowRateInletVelocityFvPatchVectorField
 
 
 Foam::
-swirlMassFlowRateInletVelocityFvPatchVectorField::
-swirlMassFlowRateInletVelocityFvPatchVectorField
+swirlFlowRateInletVelocityFvPatchVectorField::
+swirlFlowRateInletVelocityFvPatchVectorField
 (
-    const swirlMassFlowRateInletVelocityFvPatchVectorField& ptf
+    const swirlFlowRateInletVelocityFvPatchVectorField& ptf
 )
 :
     fixedValueFvPatchField<vector>(ptf),
@@ -98,10 +98,10 @@ swirlMassFlowRateInletVelocityFvPatchVectorField
 
 
 Foam::
-swirlMassFlowRateInletVelocityFvPatchVectorField::
-swirlMassFlowRateInletVelocityFvPatchVectorField
+swirlFlowRateInletVelocityFvPatchVectorField::
+swirlFlowRateInletVelocityFvPatchVectorField
 (
-    const swirlMassFlowRateInletVelocityFvPatchVectorField& ptf,
+    const swirlFlowRateInletVelocityFvPatchVectorField& ptf,
     const DimensionedField<vector, volMesh>& iF
 )
 :
@@ -115,25 +115,28 @@ swirlMassFlowRateInletVelocityFvPatchVectorField
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-void Foam::swirlMassFlowRateInletVelocityFvPatchVectorField::updateCoeffs()
+void Foam::swirlFlowRateInletVelocityFvPatchVectorField::updateCoeffs()
 {
     if (updated())
     {
         return;
     }
 
-    scalar totArea   = gSum(patch().magSf());
+    const scalar totArea   = gSum(patch().magSf());
     // a simpler way of doing this would be nice
-    scalar avgU = -flowRate_/totArea;
+    const scalar avgU = -flowRate_/totArea;
 
-    vector center = gSum(patch().Cf()*patch().magSf())/totArea;
-    vector normal = gSum(patch().nf()*patch().magSf())/totArea;
+    const vector avgCenter = gSum(patch().Cf()*patch().magSf())/totArea;
+    const vector avgNormal = gSum(patch().Sf())/totArea;
 
-    vectorField tangVelo =
+    // Update angular velocity - convert [rpm] to [rad/s]
+    vectorField tangentialVelocity =
+    (
         (rpm_*constant::mathematical::pi/30.0)
-       *(patch().Cf() - center) ^ normal;
+      * (patch().Cf() - avgCenter) ^ avgNormal
+    );
 
-    vectorField n = patch().nf();
+    tmp<vectorField> n = patch().nf();
 
     const surfaceScalarField& phi =
         db().lookupObject<surfaceScalarField>(phiName_);
@@ -141,7 +144,7 @@ void Foam::swirlMassFlowRateInletVelocityFvPatchVectorField::updateCoeffs()
     if (phi.dimensions() == dimVelocity*dimArea)
     {
         // volumetric flow-rate
-        operator==(tangVelo + n*avgU);
+        operator==(tangentialVelocity + n*avgU);
     }
     else if (phi.dimensions() == dimDensity*dimVelocity*dimArea)
     {
@@ -149,13 +152,13 @@ void Foam::swirlMassFlowRateInletVelocityFvPatchVectorField::updateCoeffs()
             patch().lookupPatchField<volScalarField, scalar>(rhoName_);
 
         // mass flow-rate
-        operator==(tangVelo + n*avgU/rhop);
+        operator==(tangentialVelocity + n*avgU/rhop);
     }
     else
     {
         FatalErrorIn
         (
-            "swirlMassFlowRateInletVelocityFvPatchVectorField::updateCoeffs()"
+            "swirlFlowRateInletVelocityFvPatchVectorField::updateCoeffs()"
         )   << "dimensions of " << phiName_ << " are incorrect" << nl
             << "    on patch " << this->patch().name()
             << " of field " << this->dimensionedInternalField().name()
@@ -167,18 +170,15 @@ void Foam::swirlMassFlowRateInletVelocityFvPatchVectorField::updateCoeffs()
 }
 
 
-void Foam::swirlMassFlowRateInletVelocityFvPatchVectorField::write(Ostream& os) const
+void Foam::swirlFlowRateInletVelocityFvPatchVectorField::write
+(
+    Ostream& os
+) const
 {
     fvPatchField<vector>::write(os);
     os.writeKeyword("flowRate") << flowRate_ << token::END_STATEMENT << nl;
-    if (phiName_ != "phi")
-    {
-        os.writeKeyword("phi") << phiName_ << token::END_STATEMENT << nl;
-    }
-    if (rhoName_ != "rho")
-    {
-        os.writeKeyword("rho") << rhoName_ << token::END_STATEMENT << nl;
-    }
+    writeEntryIfDifferent<word>(os, "phi", "phi", phiName_);
+    writeEntryIfDifferent<word>(os, "rho", "rho", rhoName_);
     os.writeKeyword("rpm") << rpm_ << token::END_STATEMENT << nl;
     writeEntry("value", os);
 }
@@ -191,7 +191,7 @@ namespace Foam
    makePatchTypeField
    (
        fvPatchVectorField,
-       swirlMassFlowRateInletVelocityFvPatchVectorField
+       swirlFlowRateInletVelocityFvPatchVectorField
    );
 }
 
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/swirlMassFlowRateInletVelocity/swirlMassFlowRateInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.H
similarity index 76%
rename from src/finiteVolume/fields/fvPatchFields/derived/swirlMassFlowRateInletVelocity/swirlMassFlowRateInletVelocityFvPatchVectorField.H
rename to src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.H
index 0ea56eb798fe3ab58b8e94a66d386b2e12c68613..199a9957804b2d81d0e62e51c23d466304b7a58a 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/swirlMassFlowRateInletVelocity/swirlMassFlowRateInletVelocityFvPatchVectorField.H
+++ b/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.H
@@ -8,10 +8,10 @@
 License
     This file is part of OpenFOAM.
 
-    OpenFOAM is free software: you can redistribute it and/or modify it
-    under the terms of the GNU General Public License as published by
-    the Free Software Foundation, either version 3 of the License, or
-    (at your option) any later version.
+    OpenFOAM is free software; you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by the
+    Free Software Foundation; either version 2 of the License, or (at your
+    option) any later version.
 
     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@@ -19,10 +19,11 @@ License
     for more details.
 
     You should have received a copy of the GNU General Public License
-    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+    along with OpenFOAM; if not, write to the Free Software Foundation,
+    Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 
 Class
-    Foam::swirlMassFlowRateInletVelocityFvPatchVectorField
+    Foam::swirlFlowRateInletVelocityFvPatchVectorField
 
 Description
     Describes a volumetric/mass flow normal vector boundary condition by its
@@ -38,7 +39,7 @@ Description
     @verbatim
     inlet
     {
-        type            swirlMassFlowRateInletVelocity;
+        type            swirlFlowRateInletVelocity;
         flowRate        0.2;        // Volumetric/mass flow rate [m3/s or kg/s]
         rpm             100;
     }
@@ -48,12 +49,12 @@ Note
     - The value is positive inwards
 
 SourceFiles
-    swirlMassFlowRateInletVelocityFvPatchVectorField.C
+    swirlFlowRateInletVelocityFvPatchVectorField.C
 
 \*---------------------------------------------------------------------------*/
 
-#ifndef swirlMassFlowRateInletVelocityFvPatchVectorField_H
-#define swirlMassFlowRateInletVelocityFvPatchVectorField_H
+#ifndef swirlFlowRateInletVelocityFvPatchVectorField_H
+#define swirlFlowRateInletVelocityFvPatchVectorField_H
 
 #include "fixedValueFvPatchFields.H"
 
@@ -62,10 +63,10 @@ SourceFiles
 namespace Foam
 {
 /*---------------------------------------------------------------------------*\
-      Class swirlMassFlowRateInletVelocityFvPatchVectorField Declaration
+      Class swirlFlowRateInletVelocityFvPatchVectorField Declaration
 \*---------------------------------------------------------------------------*/
 
-class swirlMassFlowRateInletVelocityFvPatchVectorField
+class swirlFlowRateInletVelocityFvPatchVectorField
 :
     public fixedValueFvPatchVectorField
 {
@@ -87,20 +88,20 @@ class swirlMassFlowRateInletVelocityFvPatchVectorField
 public:
 
    //- Runtime type information
-   TypeName("swirlMassFlowRateInletVelocity");
+   TypeName("swirlFlowRateInletVelocity");
 
 
    // Constructors
 
         //- Construct from patch and internal field
-        swirlMassFlowRateInletVelocityFvPatchVectorField
+        swirlFlowRateInletVelocityFvPatchVectorField
         (
             const fvPatch&,
             const DimensionedField<vector, volMesh>&
         );
 
         //- Construct from patch, internal field and dictionary
-        swirlMassFlowRateInletVelocityFvPatchVectorField
+        swirlFlowRateInletVelocityFvPatchVectorField
         (
             const fvPatch&,
             const DimensionedField<vector, volMesh>&,
@@ -110,18 +111,18 @@ public:
         //- Construct by mapping given
         //  flowRateInletVelocityFvPatchVectorField
         //  onto a new patch
-        swirlMassFlowRateInletVelocityFvPatchVectorField
+        swirlFlowRateInletVelocityFvPatchVectorField
         (
-            const swirlMassFlowRateInletVelocityFvPatchVectorField&,
+            const swirlFlowRateInletVelocityFvPatchVectorField&,
             const fvPatch&,
             const DimensionedField<vector, volMesh>&,
             const fvPatchFieldMapper&
         );
 
         //- Construct as copy
-        swirlMassFlowRateInletVelocityFvPatchVectorField
+        swirlFlowRateInletVelocityFvPatchVectorField
         (
-            const swirlMassFlowRateInletVelocityFvPatchVectorField&
+            const swirlFlowRateInletVelocityFvPatchVectorField&
         );
 
         //- Construct and return a clone
@@ -129,14 +130,14 @@ public:
         {
             return tmp<fvPatchVectorField>
             (
-                new swirlMassFlowRateInletVelocityFvPatchVectorField(*this)
+                new swirlFlowRateInletVelocityFvPatchVectorField(*this)
             );
         }
 
         //- Construct as copy setting internal field reference
-        swirlMassFlowRateInletVelocityFvPatchVectorField
+        swirlFlowRateInletVelocityFvPatchVectorField
         (
-            const swirlMassFlowRateInletVelocityFvPatchVectorField&,
+            const swirlFlowRateInletVelocityFvPatchVectorField&,
             const DimensionedField<vector, volMesh>&
         );
 
@@ -148,7 +149,7 @@ public:
         {
             return tmp<fvPatchVectorField>
             (
-                new swirlMassFlowRateInletVelocityFvPatchVectorField(*this, iF)
+                new swirlFlowRateInletVelocityFvPatchVectorField(*this, iF)
             );
         }
 
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C
index 9a51c18d480a32b5cba3dca8fd6c11c0b96498d0..0f2f46b834b04b81a17f1c621220535969f88770 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C
+++ b/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C
@@ -112,10 +112,7 @@ timeVaryingMappedFixedValueFvPatchField
     endSampledValues_(0),
     endAverage_(pTraits<Type>::zero)
 {
-    if (dict.found("fieldTableName"))
-    {
-        dict.lookup("fieldTableName") >> fieldTableName_;
-    }
+    dict.readIfPresent("fieldTableName", fieldTableName_);
 
     if (dict.found("value"))
     {
diff --git a/src/finiteVolume/finiteVolume/fvSchemes/fvSchemes.C b/src/finiteVolume/finiteVolume/fvSchemes/fvSchemes.C
index e77b6c77a01d9eb5407bb237c2d0e139f06c8cd2..37b09def99f5970e364a10e7b02fd65684baf90d 100644
--- a/src/finiteVolume/finiteVolume/fvSchemes/fvSchemes.C
+++ b/src/finiteVolume/finiteVolume/fvSchemes/fvSchemes.C
@@ -64,7 +64,7 @@ Foam::fvSchemes::fvSchemes(const objectRegistry& obr)
             "fvSchemes",
             obr.time().system(),
             obr,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C
index b4889660f6cb24fe76019af23064a581ce326490..fcf1a6a4b9f949d958a1ccaa25eb5c55fe6161b0 100644
--- a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C
+++ b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C
@@ -150,6 +150,7 @@ Foam::lduMatrix::solverPerformance Foam::fvMatrix<Type>::solve
         solverPerf.print();
 
         solverPerfVec = max(solverPerfVec, solverPerf);
+        solverPerfVec.solverName() = solverPerf.solverName();
 
         psi.internalField().replace(cmpt, psiCmpt);
         diag() = saveDiag;
diff --git a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C
index f6266998a3ef5cfd915ea8aff26641c02175e0cd..bb5ac17506406a9d49afeedac5b20d0d81c1cdb6 100644
--- a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C
+++ b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C
@@ -276,28 +276,50 @@ void Foam::fvMeshSubset::subsetZones()
     {
         const faceZone& fz = faceZones[i];
 
-        // Create list of mesh faces part of the new zone
-        labelList subAddressing
-        (
-            subset
-            (
-                baseMesh().nFaces(),
-                fz,
-                faceMap()
-            )
-        );
-
-        // Flipmap for all mesh faces
-        boolList fullFlipStatus(baseMesh().nFaces(), false);
+        // Expand faceZone to full mesh
+        // +1 : part of faceZone, flipped
+        // -1 :    ,,           , unflipped
+        //  0 : not part of faceZone
+        labelList zone(baseMesh().nFaces(), 0);
         forAll(fz, j)
         {
-            fullFlipStatus[fz[j]] = fz.flipMap()[j];
+            if (fz.flipMap()[j])
+            {
+                zone[fz[j]] = 1;
+            }
+            else
+            {
+                zone[fz[j]] = -1;
+            }
+        }
+
+        // Select faces
+        label nSub = 0;
+        forAll(faceMap(), j)
+        {
+            if (zone[faceMap()[j]] != 0)
+            {
+                nSub++;
+            }
         }
-        // Extract sub part
-        boolList subFlipStatus(subAddressing.size(), false);
-        forAll(subAddressing, j)
+        labelList subAddressing(nSub);
+        boolList subFlipStatus(nSub);
+        nSub = 0;
+        forAll(faceMap(), subFaceI)
         {
-            subFlipStatus[j] = fullFlipStatus[faceMap()[subAddressing[j]]];
+            label meshFaceI = faceMap()[subFaceI];
+            if (zone[meshFaceI] != 0)
+            {
+                subAddressing[nSub] = subFaceI;
+                label subOwner = subMesh().faceOwner()[subFaceI];
+                label baseOwner = baseMesh().faceOwner()[meshFaceI];
+                // If subowner is the same cell as the base keep the flip status
+                bool sameOwner = (cellMap()[subOwner] == baseOwner);
+                bool flip = (zone[meshFaceI] == 1);
+                subFlipStatus[nSub] = (sameOwner == flip);
+
+                nSub++;
+            }
         }
 
         fZonePtrs[i] = new faceZone
diff --git a/src/finiteVolume/interpolation/interpolation/interpolationCell/interpolationCell.H b/src/finiteVolume/interpolation/interpolation/interpolationCell/interpolationCell.H
index 994d1cae404ed8bad9e7493bd41d043c141e1bb7..c16d234613cbbc292cd01e2972dd754876b07542 100644
--- a/src/finiteVolume/interpolation/interpolation/interpolationCell/interpolationCell.H
+++ b/src/finiteVolume/interpolation/interpolation/interpolationCell/interpolationCell.H
@@ -25,7 +25,7 @@ Class
     Foam::interpolationCell
 
 Description
-    Foam::interpolationCell
+    Uses the cell value for any point in the cell
 
 \*---------------------------------------------------------------------------*/
 
diff --git a/src/finiteVolume/interpolation/interpolation/interpolationCellPoint/cellPointWeight/cellPointWeight.H b/src/finiteVolume/interpolation/interpolation/interpolationCellPoint/cellPointWeight/cellPointWeight.H
index 01599a2fd1f503197efc26ad086fd4dfddddf1aa..6c439ea166f080f1405336f46d4949556fdca313 100644
--- a/src/finiteVolume/interpolation/interpolation/interpolationCellPoint/cellPointWeight/cellPointWeight.H
+++ b/src/finiteVolume/interpolation/interpolation/interpolationCellPoint/cellPointWeight/cellPointWeight.H
@@ -87,7 +87,7 @@ public:
     static int debug;
 
     //- Tolerance used in calculating barycentric co-ordinates
-    //  (applied to normailised values)
+    //  (applied to normalised values)
     static scalar tol;
 
 
diff --git a/src/finiteVolume/interpolation/interpolation/interpolationCellPoint/interpolationCellPoint.H b/src/finiteVolume/interpolation/interpolation/interpolationCellPoint/interpolationCellPoint.H
index b187d3ff08bf56bf214f88892437a4a067be1c06..ab37149b1454b13d1b97c654585a6a82b10c96f2 100644
--- a/src/finiteVolume/interpolation/interpolation/interpolationCellPoint/interpolationCellPoint.H
+++ b/src/finiteVolume/interpolation/interpolation/interpolationCellPoint/interpolationCellPoint.H
@@ -25,7 +25,8 @@ Class
     Foam::interpolationCellPoint
 
 Description
-    Foam::interpolationCellPoint
+    Given cell centre values and point (vertex) values decompose into 
+    tetrahedra and linear interpolate within them.
 
 \*---------------------------------------------------------------------------*/
 
diff --git a/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.H b/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.H
index fb46d50a8711cb044089df896700c0cc1bef4eb2..d850c1b68d5cb1c359ef0d1bd66358e2a433fd0d 100644
--- a/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.H
+++ b/src/finiteVolume/interpolation/volPointInterpolation/volPointInterpolation.H
@@ -25,7 +25,8 @@ Class
     Foam::volPointInterpolation
 
 Description
-    Foam::volPointInterpolation
+    Interpolate from cell centres to points (vertices) using inverse distance
+    weighting
 
 SourceFiles
     volPointInterpolation.C
diff --git a/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C b/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C
index 977fdb89a0b422ff261b4964251ebe35f7ee7649..e1613e584d9f5e91ca075ef447844e1d5a9ed160 100644
--- a/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C
+++ b/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C
@@ -70,7 +70,7 @@ displacementInterpolationFvMotionSolver
                 "dynamicMeshDict",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/lagrangian/basic/Cloud/Cloud.C b/src/lagrangian/basic/Cloud/Cloud.C
index ceaf1c44d4f1ec0485cdb677a6c1b0e23fbfb7a0..8f817df7fb12a83fb4442887fc1cc168494c4799 100644
--- a/src/lagrangian/basic/Cloud/Cloud.C
+++ b/src/lagrangian/basic/Cloud/Cloud.C
@@ -101,9 +101,29 @@ template<class ParticleType>
 template<class TrackingData>
 void Foam::Cloud<ParticleType>::move(TrackingData& td)
 {
+    const polyBoundaryMesh& pbm = pMesh().boundaryMesh();
     const globalMeshData& pData = polyMesh_.globalData();
-    const labelList& processorPatches = pData.processorPatches();
-    const labelList& processorPatchIndices = pData.processorPatchIndices();
+
+    // Which patches are processor patches
+    const labelList& procPatches = pData.processorPatches();
+
+    // Indexing of patches into the procPatches list
+    const labelList& procPatchIndices = pData.processorPatchIndices();
+
+    // Indexing of equivalent patch on neighbour processor into the
+    // procPatches list on the neighbour
+    const labelList& procPatchNeighbours = pData.processorPatchNeighbours();
+
+    // Which processors this processor is connected to
+    const labelList& neighbourProcs = pData[Pstream::myProcNo()];
+
+    // Indexing from the processor number into the neighbourProcs list
+    labelList neighbourProcIndices(Pstream::nProcs(), -1);
+
+    forAll(neighbourProcs, i)
+    {
+        neighbourProcIndices[neighbourProcs[i]] = i;
+    }
 
     // Initialise the stepFraction moved for the particles
     forAllIter(typename Cloud<ParticleType>, *this, pIter)
@@ -114,9 +134,19 @@ void Foam::Cloud<ParticleType>::move(TrackingData& td)
     // While there are particles to transfer
     while (true)
     {
-        // List of lists of particles to be transfered for all the processor
-        // patches
-        List<IDLList<ParticleType> > transferList(processorPatches.size());
+        // List of lists of particles to be transfered for all of the
+        // neighbour processors
+        List<IDLList<ParticleType> > particleTransferLists
+        (
+            neighbourProcs.size()
+        );
+
+        // List of destination processorPatches indices for all of the
+        // neighbour processors
+        List<DynamicList<label> > patchIndexTransferLists
+        (
+            neighbourProcs.size()
+        );
 
         // Loop over all particles
         forAllIter(typename Cloud<ParticleType>, *this, pIter)
@@ -134,15 +164,28 @@ void Foam::Cloud<ParticleType>::move(TrackingData& td)
                 // boundary face
                 if (Pstream::parRun() && p.facei_ >= pMesh().nInternalFaces())
                 {
-                    label patchi = pMesh().boundaryMesh().whichPatch(p.facei_);
-                    label n = processorPatchIndices[patchi];
+                    label patchi = pbm.whichPatch(p.facei_);
 
                     // ... and the face is on a processor patch
                     // prepare it for transfer
-                    if (n != -1)
+                    if (procPatchIndices[patchi] != -1)
                     {
+                        label n = neighbourProcIndices
+                        [
+                            refCast<const processorPolyPatch>
+                            (
+                                pbm[patchi]
+                            ).neighbProcNo()
+                        ];
+
                         p.prepareForParallelTransfer(patchi, td);
-                        transferList[n].append(this->remove(&p));
+
+                        particleTransferLists[n].append(this->remove(&p));
+
+                        patchIndexTransferLists[n].append
+                        (
+                            procPatchNeighbours[patchi]
+                        );
                     }
                 }
             }
@@ -157,31 +200,30 @@ void Foam::Cloud<ParticleType>::move(TrackingData& td)
             break;
         }
 
-
         // Allocate transfer buffers
         PstreamBuffers pBufs(Pstream::nonBlocking);
 
         // Stream into send buffers
-        forAll(transferList, i)
+        forAll(particleTransferLists, i)
         {
-            if (transferList[i].size())
+            if (particleTransferLists[i].size())
             {
                 UOPstream particleStream
                 (
-                    refCast<const processorPolyPatch>
-                    (
-                        pMesh().boundaryMesh()[processorPatches[i]]
-                    ).neighbProcNo(),
+                    neighbourProcs[i],
                     pBufs
                 );
 
-                particleStream << transferList[i];
+                particleStream
+                    << patchIndexTransferLists[i]
+                    << particleTransferLists[i];
             }
         }
 
         // Set up transfers when in non-blocking mode. Returns sizes (in bytes)
         // to be sent/received.
         labelListList allNTrans(Pstream::nProcs());
+
         pBufs.finishedSends(allNTrans);
 
         bool transfered = false;
@@ -203,34 +245,35 @@ void Foam::Cloud<ParticleType>::move(TrackingData& td)
             break;
         }
 
-
         // Retrieve from receive buffers
-        forAll(processorPatches, i)
+        forAll(neighbourProcs, i)
         {
-            label patchi = processorPatches[i];
-
-            const processorPolyPatch& procPatch =
-                refCast<const processorPolyPatch>
-                (pMesh().boundaryMesh()[patchi]);
-
-            label neighbProci = procPatch.neighbProcNo();
+            label neighbProci = neighbourProcs[i];
 
-            label nRecPs = allNTrans[neighbProci][Pstream::myProcNo()];
+            label nRec = allNTrans[neighbProci][Pstream::myProcNo()];
 
-            if (nRecPs)
+            if (nRec)
             {
                 UIPstream particleStream(neighbProci, pBufs);
 
+                labelList receivePatchIndex(particleStream);
+
                 IDLList<ParticleType> newParticles
                 (
                     particleStream,
                     typename ParticleType::iNew(*this)
                 );
 
+                label pI = 0;
+
                 forAllIter(typename Cloud<ParticleType>, newParticles, newpIter)
                 {
                     ParticleType& newp = newpIter();
+
+                    label patchi = procPatches[receivePatchIndex[pI++]];
+
                     newp.correctAfterParallelTransfer(patchi, td);
+
                     addParticle(newParticles.remove(&newp));
                 }
             }
diff --git a/src/lagrangian/basic/Cloud/Cloud.H b/src/lagrangian/basic/Cloud/Cloud.H
index 0520c51869d3a353a1c3801791c45f6c5776df07..25cf3fce33daac6f353f653f4c53dc86dc6a72b8 100644
--- a/src/lagrangian/basic/Cloud/Cloud.H
+++ b/src/lagrangian/basic/Cloud/Cloud.H
@@ -38,6 +38,7 @@ SourceFiles
 #include "cloud.H"
 #include "IDLList.H"
 #include "IOField.H"
+#include "IOFieldField.H"
 #include "polyMesh.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@@ -267,6 +268,14 @@ public:
                 const IOField<DataType>& data
             ) const;
 
+            //- Check lagrangian data fieldfield
+            template<class DataType>
+            void checkFieldFieldIOobject
+            (
+                const Cloud<ParticleType>& c,
+                const IOFieldField<Field<DataType>, DataType>& data
+            ) const;
+
             //- Read the field data for the cloud of particles. Dummy at
             //  this level.
             virtual void readFields();
diff --git a/src/lagrangian/basic/Cloud/CloudIO.C b/src/lagrangian/basic/Cloud/CloudIO.C
index 24a65c1685ecfbdf298225c8604ff58786d8be7c..388fba1c5747f63437260c73d55ca220882cdfeb 100644
--- a/src/lagrangian/basic/Cloud/CloudIO.C
+++ b/src/lagrangian/basic/Cloud/CloudIO.C
@@ -45,7 +45,7 @@ void Foam::Cloud<ParticleType>::readCloudUniformProperties()
         time().timeName(),
         "uniform"/cloud::prefix/name(),
         db(),
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE,
         false
     );
@@ -205,6 +205,31 @@ void Foam::Cloud<ParticleType>::checkFieldIOobject
 }
 
 
+template<class ParticleType>
+template<class DataType>
+void Foam::Cloud<ParticleType>::checkFieldFieldIOobject
+(
+    const Cloud<ParticleType>& c,
+    const IOFieldField<Field<DataType>, DataType>& data
+) const
+{
+    if (data.size() != c.size())
+    {
+        FatalErrorIn
+        (
+            "void Cloud<ParticleType>::checkFieldFieldIOobject"
+            "("
+                "const Cloud<ParticleType>&, "
+                "const IOFieldField<Field<DataType>, DataType>&"
+            ") const"
+        )   << "Size of " << data.name()
+            << " field " << data.size()
+            << " does not match the number of particles " << c.size()
+            << abort(FatalError);
+    }
+}
+
+
 template<class ParticleType>
 void Foam::Cloud<ParticleType>::readFields()
 {}
diff --git a/src/lagrangian/basic/InteractionLists/InteractionLists.C b/src/lagrangian/basic/InteractionLists/InteractionLists.C
index 83ab477ee4abb0bcb4b4b5951475396345926e5d..391a41aa5b71da4aed7966e3aa1a82e7274c0f5d 100644
--- a/src/lagrangian/basic/InteractionLists/InteractionLists.C
+++ b/src/lagrangian/basic/InteractionLists/InteractionLists.C
@@ -932,7 +932,7 @@ void Foam::InteractionLists<ParticleType>::prepareParticlesToRefer
 
         IDLList<ParticleType>& particlesToRefer = referredParticles_[i];
 
-        forAll (realParticles, rM)
+        forAll(realParticles, rM)
         {
             const ParticleType& particle = *realParticles[rM];
 
@@ -1188,7 +1188,7 @@ void Foam::InteractionLists<ParticleType>::receiveReferredData
         {
             UIPstream str(domain, pBufs);
 
-            forAll (constructMap, i)
+            forAll(constructMap, i)
             {
                 referredParticles_[constructMap[i]] = IDLList<ParticleType>
                 (
diff --git a/src/lagrangian/dieselSpray/spray/spray.C b/src/lagrangian/dieselSpray/spray/spray.C
index 4f98523b078a0bb8ae7e44b882edea49fb961f56..6ff9319f9a55f5eb013fe9a3a0ba7c15f9484be8 100644
--- a/src/lagrangian/dieselSpray/spray/spray.C
+++ b/src/lagrangian/dieselSpray/spray/spray.C
@@ -83,7 +83,7 @@ Foam::spray::spray
             "sprayProperties",
             U.time().constant(),
             U.db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -98,7 +98,7 @@ Foam::spray::spray
             "injectorProperties",
             U.time().constant(),
             U.db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         ),
         injector::iNew(U.time())
diff --git a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C
index 455ee7936da04b5c796a2ee456ab54e88003a748..80e0dea37d5faa8b9914f8dbe23707954ba5c52b 100644
--- a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C
+++ b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C
@@ -28,6 +28,7 @@ License
 #include "WallInteractionModel.H"
 #include "InflowBoundaryModel.H"
 #include "constants.H"
+#include "zeroGradientFvPatchFields.H"
 
 using namespace Foam::constant;
 
@@ -459,6 +460,8 @@ void Foam::DsmcCloud<ParcelType>::collisions()
 
     reduce(collisionCandidates, sumOp<label>());
 
+    sigmaTcRMax_.correctBoundaryConditions();
+
     if (collisionCandidates)
     {
         Info<< "    Collisions                      = "
@@ -550,6 +553,8 @@ void Foam::DsmcCloud<ParcelType>::calculateFields()
     rhoM *= nParticle_/mesh().cellVolumes();
     rhoM_.correctBoundaryConditions();
 
+    dsmcRhoN_.correctBoundaryConditions();
+
     linearKE *= nParticle_/mesh().cellVolumes();
     linearKE_.correctBoundaryConditions();
 
@@ -611,7 +616,7 @@ Foam::DsmcCloud<ParcelType>::DsmcCloud
             cloudName + "Properties",
             mesh_.time().constant(),
             mesh_,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -833,7 +838,7 @@ Foam::DsmcCloud<ParcelType>::DsmcCloud
             cloudName + "Properties",
             mesh_.time().constant(),
             mesh_,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -851,7 +856,8 @@ Foam::DsmcCloud<ParcelType>::DsmcCloud
             IOobject::AUTO_WRITE
         ),
         mesh_,
-        dimensionedScalar("zero",  dimensionSet(0, 3, -1, 0, 0), 0.0)
+        dimensionedScalar("zero",  dimensionSet(0, 3, -1, 0, 0), 0.0),
+        zeroGradientFvPatchScalarField::typeName
     ),
     collisionSelectionRemainder_(),
     q_
diff --git a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.H b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.H
index 1df4935f6850e72e8ed47f3674b93533f2d61d27..aba26e7bf83ad714a05bcf9a57283800626fa3d2 100644
--- a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.H
+++ b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.H
@@ -83,10 +83,10 @@ class DsmcCloud
         //- Dictionary of particle properties
         IOdictionary particleProperties_;
 
-        //- A list of unique instances of molecule types in the simulation.
-        // The position of an entry in the list maps to the label identifying
-        // the typeId, i.e. where typeIdList_ = (N2 O2 CO2)
-        // N2 has typeId label = 0, O2 = 1, CO2 = 2.
+        //- A list of unique instances of molecule types in the
+        //  simulation.  The position of an entry in the list maps to
+        //  the label identifying the typeId, i.e. where typeIdList_ =
+        //  (N2 O2 CO2) N2 has typeId label = 0, O2 = 1, CO2 = 2.
         List<word> typeIdList_;
 
         //- Number of real atoms/molecules represented by a parcel
@@ -95,9 +95,9 @@ class DsmcCloud
         //- A data structure holding which particles are in which cell
         List<DynamicList<ParcelType*> > cellOccupancy_;
 
-        //- An IOField holding the value of (sigmaT * cR)max for each cell (see
-        // Bird p220). Initialised with the parcels, updated as required, and
-        // read in on start/restart.
+        //- A field holding the value of (sigmaT * cR)max for each
+        //  cell (see Bird p220). Initialised with the parcels,
+        //  updated as required, and read in on start/restart.
         volScalarField sigmaTcRMax_;
 
         //- A field holding the remainder from the previous collision selections
diff --git a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C
index 7fc3cf863634c4167d4fc3dc88fd087f5ba1ad4c..10fccde371cc711a59e4d67d21dbf88991c8f062 100644
--- a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C
+++ b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C
@@ -181,7 +181,7 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
             cloudName + "Properties",
             rho.mesh().time().constant(),
             rho.mesh(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordList.C b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordList.C
index 4fd7453f3ed734451274831611845d8462c7575a..aa2db0b4de6fd7b220d6b773886ea7423a803e85 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordList.C
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordList.C
@@ -51,6 +51,104 @@ Foam::CollisionRecordList<PairType, WallType>::CollisionRecordList(Istream& is)
 }
 
 
+template<class PairType, class WallType>
+Foam::CollisionRecordList<PairType, WallType>::CollisionRecordList
+(
+    const labelField& pairAccessed,
+    const labelField& pairOrigProcOfOther,
+    const labelField& pairOrigIdOfOther,
+    const Field<PairType>& pairData,
+    const labelField& wallAccessed,
+    const vectorField& wallPRel,
+    const Field<WallType>& wallData
+)
+:
+    pairRecords_(),
+    wallRecords_()
+{
+    label nPair = pairAccessed.size();
+
+    if
+    (
+        pairOrigProcOfOther.size() != nPair
+     || pairOrigIdOfOther.size() != nPair
+     || pairData.size() != nPair
+    )
+    {
+        FatalErrorIn
+        (
+            "Foam::CollisionRecordList<PairType, WallType>::CollisionRecordList"
+            "("
+                "const labelField& pairAccessed,"
+                "const labelField& pairOrigProcOfOther,"
+                "const labelField& pairOrigIdOfOther,"
+                "const Field<PairType>& pairData,"
+                "const labelField& wallAccessed,"
+                "const vectorField& wallPRel,"
+                "const Field<WallType>& wallData"
+            ")"
+        )
+            << "Pair field size mismatch." << nl
+            << pairAccessed << nl
+            << pairOrigProcOfOther << nl
+            << pairOrigIdOfOther << nl
+            << pairData << nl
+            << abort(FatalError);
+    }
+
+    forAll(pairAccessed, i)
+    {
+        pairRecords_.append
+        (
+            PairCollisionRecord<PairType>
+            (
+                pairAccessed[i],
+                pairOrigProcOfOther[i],
+                pairOrigIdOfOther[i],
+                pairData[i]
+            )
+        );
+    }
+
+    label nWall = wallAccessed.size();
+
+    if (wallPRel.size() != nWall || wallData.size() != nWall)
+    {
+        FatalErrorIn
+        (
+            "Foam::CollisionRecordList<PairType, WallType>::CollisionRecordList"
+            "("
+                "const labelField& pairAccessed,"
+                "const labelField& pairOrigProcOfOther,"
+                "const labelField& pairOrigIdOfOther,"
+                "const Field<PairType>& pairData,"
+                "const labelField& wallAccessed,"
+                "const vectorField& wallPRel,"
+                "const Field<WallType>& wallData"
+            ")"
+        )
+            << "Wall field size mismatch." << nl
+            << wallAccessed << nl
+            << wallPRel << nl
+            << wallData << nl
+            << abort(FatalError);
+    }
+
+    forAll(wallAccessed, i)
+    {
+        wallRecords_.append
+        (
+            WallCollisionRecord<WallType>
+            (
+                wallAccessed[i],
+                wallPRel[i],
+                wallData[i]
+            )
+        );
+    }
+}
+
+
 // * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * /
 
 template<class PairType, class WallType>
@@ -60,6 +158,111 @@ Foam::CollisionRecordList<PairType, WallType>::~CollisionRecordList()
 
 // * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * * //
 
+template<class PairType, class WallType>
+Foam::labelField
+Foam::CollisionRecordList<PairType, WallType>::pairAccessed() const
+{
+    labelField f(pairRecords_.size());
+
+    forAll(pairRecords_, i)
+    {
+        f[i] = pairRecords_[i].accessed();
+    }
+
+    return f;
+}
+
+
+template<class PairType, class WallType>
+Foam::labelField
+Foam::CollisionRecordList<PairType, WallType>::pairOrigProcOfOther() const
+{
+    labelField f(pairRecords_.size());
+
+    forAll(pairRecords_, i)
+    {
+        f[i] = pairRecords_[i].origProcOfOther();
+    }
+
+    return f;
+}
+
+
+template<class PairType, class WallType>
+Foam::labelField
+Foam::CollisionRecordList<PairType, WallType>::pairOrigIdOfOther() const
+{
+    labelField f(pairRecords_.size());
+
+    forAll(pairRecords_, i)
+    {
+        f[i] = pairRecords_[i].origIdOfOther();
+    }
+
+    return f;
+}
+
+
+template<class PairType, class WallType>
+Foam::Field<PairType>
+Foam::CollisionRecordList<PairType, WallType>::pairData() const
+{
+    Field<PairType> f(pairRecords_.size());
+
+    forAll(pairRecords_, i)
+    {
+        f[i] = pairRecords_[i].collisionData();
+    }
+
+    return f;
+}
+
+
+template<class PairType, class WallType>
+Foam::labelField
+Foam::CollisionRecordList<PairType, WallType>::wallAccessed() const
+{
+    labelField f(wallRecords_.size());
+
+    forAll(wallRecords_, i)
+    {
+        f[i] = wallRecords_[i].accessed();
+    }
+
+    return f;
+}
+
+
+template<class PairType, class WallType>
+Foam::vectorField
+Foam::CollisionRecordList<PairType, WallType>::wallPRel() const
+{
+    vectorField f(wallRecords_.size());
+
+    forAll(wallRecords_, i)
+    {
+        f[i] = wallRecords_[i].pRel();
+    }
+
+    return f;
+}
+
+
+template<class PairType, class WallType>
+Foam::Field<WallType>
+Foam::CollisionRecordList<PairType, WallType>::wallData() const
+{
+    Field<WallType> f(wallRecords_.size());
+
+    forAll(wallRecords_, i)
+    {
+        f[i] = wallRecords_[i].collisionData();
+    }
+
+    return f;
+}
+
+
 template<class PairType, class WallType>
 Foam::PairCollisionRecord<PairType>&
 Foam::CollisionRecordList<PairType, WallType>::matchPairRecord
@@ -85,12 +288,12 @@ Foam::CollisionRecordList<PairType, WallType>::matchPairRecord
     }
 
     // Record not found, create a new one and return it as the last
-    // member of the list.  The status of the record will be accessed
-    // by construction.
+    // member of the list.  Setting the status of the record to be accessed
+    // on construction.
 
     pairRecords_.append
     (
-        PairCollisionRecord<PairType>(origProcOfOther, origIdOfOther)
+        PairCollisionRecord<PairType>(true, origProcOfOther, origIdOfOther)
     );
 
     return pairRecords_.last();
@@ -121,10 +324,10 @@ Foam::CollisionRecordList<PairType, WallType>::matchWallRecord
     }
 
     // Record not found, create a new one and return it as the last
-    // member of the list.  The status of the record will be accessed
-    // by construction.
+    // member of the list.  Setting the status of the record to be accessed
+    // on construction.
 
-    wallRecords_.append(WallCollisionRecord<WallType>(pRel));
+    wallRecords_.append(WallCollisionRecord<WallType>(true, pRel));
 
     return wallRecords_.last();
 }
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordList.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordList.H
index 2993b9df30d7c7ff3f77c044e517f2b37ebd8aca..51aa29849f3f6359d6e1c7015b802479277613b8 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordList.H
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordList.H
@@ -95,6 +95,17 @@ public:
         //- Construct from Istream
         CollisionRecordList(Istream&);
 
+        //- Construct from component fields (for IO)
+        CollisionRecordList
+        (
+            const labelField& pairAccessed,
+            const labelField& pairOrigProcOfOther,
+            const labelField& pairOrigIdOfOther,
+            const Field<PairType>& pairData,
+            const labelField& wallAccessed,
+            const vectorField& wallPRel,
+            const Field<WallType>& wallData
+        );
 
     //- Destructor
     ~CollisionRecordList();
@@ -102,6 +113,50 @@ public:
 
     // Member Functions
 
+        //- Return the active pair collisions
+        inline const DynamicList<PairCollisionRecord<PairType> >&
+        pairRecords() const;
+
+        //- Return the active wall collisions
+        inline const DynamicList<WallCollisionRecord<WallType> >&
+        wallRecords() const;
+
+        // Fields representing the data from each record, i.e if the
+        // records 0-N containing each data members {a, b, c, d...}
+        // are organised:
+        //
+        // a0 b0 c0 d0 ...
+        // a1 b1 c1 d1 ...
+        // a2 b2 c2 d2 ...
+        // ...
+        // aN bN cN dN ...
+        //
+        // Then these field return, for example, (c0, c1, c2,... cN)
+
+        //- Return field of pair accessed from each record, used for
+        //  field IO
+        labelField pairAccessed() const;
+
+        //- Return field of pair origProcOfOther from each record,
+        //  used for field IO
+        labelField pairOrigProcOfOther() const;
+
+        //- Return field of pair origIdOfOther from each record, used
+        //  for field IO
+        labelField pairOrigIdOfOther() const;
+
+        //- Return field of pair data from each record, used for field IO
+        Field<PairType> pairData() const;
+
+        //- Return field of wall accessed from each record, used for field IO
+        labelField wallAccessed() const;
+
+        //- Return field of wall pRel from each record, used for field IO
+        vectorField wallPRel() const;
+
+        //- Return field of wall data from each record, used for field IO
+        Field<WallType> wallData() const;
+
         //- Enquires if the proc and id pair of the other particle are
         //  present in the records.  If so, return non-const access to
         //  the PairCollisionRecord (hence the data) and mark the
@@ -172,6 +227,10 @@ public:
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
+#include "CollisionRecordListI.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
 #ifdef NoRepository
 #   include "CollisionRecordList.C"
 #endif
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordListI.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordListI.H
new file mode 100644
index 0000000000000000000000000000000000000000..0880662a402a84e75b142fd0fdf1788b5e2b7d64
--- /dev/null
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordListI.H
@@ -0,0 +1,49 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+template<class PairType, class WallType>
+const Foam::DynamicList<Foam::PairCollisionRecord<PairType> >&
+Foam::CollisionRecordList<PairType, WallType>::pairRecords() const
+{
+    return pairRecords_;
+}
+
+
+template<class PairType, class WallType>
+const Foam::DynamicList<Foam::WallCollisionRecord<WallType> >&
+Foam::CollisionRecordList<PairType, WallType>::wallRecords() const
+{
+    return wallRecords_;
+}
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+
+// ************************************************************************* //
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/PairCollisionRecord/PairCollisionRecord.C b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/PairCollisionRecord/PairCollisionRecord.C
index 0357d15c5dd0ca271e6e4d69b1becbd325ab2f60..e20e58c433a94e3ede14292beb23bc204153cc52 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/PairCollisionRecord/PairCollisionRecord.C
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/PairCollisionRecord/PairCollisionRecord.C
@@ -30,8 +30,8 @@ License
 template<class Type>
 Foam::PairCollisionRecord<Type>::PairCollisionRecord()
 :
-    origProcOfOther_(-VGREAT),
-    origIdOfOther_(-VGREAT),
+    origProcOfOther_(0),
+    origIdOfOther_(-1),
     data_(pTraits<Type>::zero)
 {}
 
@@ -39,6 +39,7 @@ Foam::PairCollisionRecord<Type>::PairCollisionRecord()
 template<class Type>
 Foam::PairCollisionRecord<Type>::PairCollisionRecord
 (
+    bool accessed,
     label origProcOfOther,
     label origIdOfOther,
     const Type& data
@@ -47,7 +48,14 @@ Foam::PairCollisionRecord<Type>::PairCollisionRecord
     origProcOfOther_(origProcOfOther + 1),
     origIdOfOther_(origIdOfOther),
     data_(data)
-{}
+{
+    // Default assignment to origProcOfOther_ assumes accessed is true
+
+    if (!accessed)
+    {
+        setUnaccessed();
+    }
+}
 
 
 template<class Type>
@@ -56,7 +64,7 @@ Foam::PairCollisionRecord<Type>::PairCollisionRecord
     const PairCollisionRecord<Type>& pCR
 )
 :
-    origProcOfOther_(pCR.origProcOfOther() + 1),
+    origProcOfOther_(pCR.origProcOfOther_),
     origIdOfOther_(pCR.origIdOfOther_),
     data_(pCR.data_)
 {}
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/PairCollisionRecord/PairCollisionRecord.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/PairCollisionRecord/PairCollisionRecord.H
index a14b645fb4617aec63176957f8bdd52ef1f35345..5604efd54935f94c531863a8c5164f8e86c73450 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/PairCollisionRecord/PairCollisionRecord.H
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/PairCollisionRecord/PairCollisionRecord.H
@@ -108,6 +108,7 @@ public:
         //- Construct from components
         PairCollisionRecord
         (
+            bool accessed,
             label origProcOfOther,
             label origIdOfOther,
             const Type& data = pTraits<Type>::zero
@@ -121,7 +122,7 @@ public:
 
 
     //- Destructor
-    ~PairCollisionRecord();
+        ~PairCollisionRecord();
 
 
     // Member Functions
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.C b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.C
index d3141e660df7795eaca443f8cb042c848fe4683e..04125ee7b320f79c5e4cfe86d3a8aae5c6c2b9ac 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.C
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.C
@@ -25,6 +25,12 @@ License
 
 #include "WallCollisionRecord.H"
 
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+template<class Type>
+const Foam::scalar Foam::WallCollisionRecord<Type>::errorCosAngle(1.0 + 1e-6);
+
+
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
 template<class Type>
@@ -39,11 +45,12 @@ Foam::WallCollisionRecord<Type>::WallCollisionRecord()
 template<class Type>
 Foam::WallCollisionRecord<Type>::WallCollisionRecord
 (
+    bool accessed,
     const vector& pRel,
     const Type& data
 )
 :
-    accessed_(true),
+    accessed_(accessed),
     pRel_(pRel),
     data_(data)
 {}
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.H
index 33f021fc7c542deb715e82f16fba01dc5a20640e..7383ba648588a250d59ba303a947c193249dd4b5 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.H
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.H
@@ -82,7 +82,7 @@ class WallCollisionRecord
         // //- Recording whether or not this record has been accessed
         bool accessed_;
 
-        //- The position of wall impact relative to the cell centre
+        //- The position of wall impact relative to the particle centre
         vector pRel_;
 
         //- Collision data, stored as if the storing particle was the
@@ -92,6 +92,12 @@ class WallCollisionRecord
 
 public:
 
+    // Static data members
+
+        //- Tolerance for detecting seriously erroneous wall matches
+        static const scalar errorCosAngle;
+
+
     // Constructors
 
         //- Construct null
@@ -100,6 +106,7 @@ public:
         //- Construct from components
         WallCollisionRecord
         (
+            bool accessed,
             const vector& pRel,
             const Type& data = pTraits<Type>::zero
         );
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecordI.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecordI.H
index 1a9a9feb0b99e8d67cddcfa407dbd2e25ccf82a6..5928714412539f8e1549bda8244e1bf4689435ea 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecordI.H
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecordI.H
@@ -39,7 +39,7 @@ inline bool Foam::WallCollisionRecord<Type>::match
     // Using the new data as the acceptance criterion
     scalar cosAcceptanceAngle = magpRel/radius;
 
-    if (cosAcceptanceAngle > 1.0)
+    if (cosAcceptanceAngle > errorCosAngle)
     {
         Info<< "pRel_ " << pRel_ << " " << magpRel_ << nl
             << "pRel " << pRel << " " << magpRel << nl
@@ -75,6 +75,14 @@ inline bool Foam::WallCollisionRecord<Type>::match
 }
 
 
+template<class Type>
+inline const Foam::vector&
+Foam::WallCollisionRecord<Type>::pRel() const
+{
+    return pRel_;
+}
+
+
 template<class Type>
 inline const Type&
 Foam::WallCollisionRecord<Type>::collisionData() const
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H
index 9b8691c534f2eaaa9709e786040442655b452882..8b693c6220889d1386e7e0542ae34ed6c97357c0 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H
@@ -33,7 +33,7 @@ Description
     - drag
     - turbulent dispersion
     - wall interactions
-    - many-body collisions
+    - many-body collisions, including memory of data from previous collision
 
 SourceFiles
     KinematicParcelI.H
@@ -53,12 +53,18 @@ SourceFiles
 
 #include "KinematicCloud.H"
 #include "CollisionRecordList.H"
+#include "labelFieldIOField.H"
+#include "vectorFieldIOField.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
 namespace Foam
 {
 
+typedef CollisionRecordList<vector, vector> collisionRecordList;
+typedef vectorIOFieldField pairDataIOFieldField;
+typedef vectorIOFieldField wallDataIOFieldField;
+
 template<class ParcelType>
 class KinematicParcel;
 
@@ -268,7 +274,7 @@ protected:
             vector UTurb_;
 
             //- Particle collision records
-            CollisionRecordList<vector, vector> collisionRecords_;
+            collisionRecordList collisionRecords_;
 
 
         // Cell-based quantities
@@ -400,8 +406,7 @@ public:
             inline const vector& UTurb() const;
 
             //- Return const access to the collision records
-            inline const CollisionRecordList<vector, vector>&
-            collisionRecords() const;
+            inline const collisionRecordList& collisionRecords() const;
 
 
         // Edit
@@ -440,7 +445,7 @@ public:
             inline vector& UTurb();
 
             //- Return access to collision records
-            inline CollisionRecordList<vector, vector>& collisionRecords();
+            inline collisionRecordList& collisionRecords();
 
 
         // Helper functions
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H
index e551c38b9e5c3b5b357f3592ca999c95203b881e..1a274b258b153fd1337f8399ad31fa7e3b3717bf 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H
@@ -348,7 +348,7 @@ inline bool& Foam::KinematicParcel<ParcelType>::active()
 
 
 template <class ParcelType>
-inline const Foam::CollisionRecordList<Foam::vector, Foam::vector>&
+inline const Foam::collisionRecordList&
 Foam::KinematicParcel<ParcelType>::collisionRecords() const
 {
     return collisionRecords_;
@@ -426,7 +426,7 @@ inline Foam::vector& Foam::KinematicParcel<ParcelType>::UTurb()
 
 
 template <class ParcelType>
-inline Foam::CollisionRecordList<Foam::vector, Foam::vector>&
+inline Foam::collisionRecordList&
 Foam::KinematicParcel<ParcelType>::collisionRecords()
 {
     return collisionRecords_;
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C
index 6220aade2a2ce6c2e70d98b935a2e7e5efbd76ed..7660070383dd2f234dd09d93233ed70481f6f763 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelIO.C
@@ -43,7 +43,14 @@ Foam::string Foam::KinematicParcel<ParcelType>::propHeader =
   + " (torquex torquey torquez)"
   + " rho"
   + " tTurb"
-  + " (UTurbx UTurby UTurbz)";
+  + " (UTurbx UTurby UTurbz)"
+  + " collisionRecordsPairAccessed"
+  + " collisionRecordsPairOrigProcOfOther"
+  + " collisionRecordsPairOrigIdOfOther"
+  + " (collisionRecordsPairData)"
+  + " collisionRecordsWallAccessed"
+  + " collisionRecordsWallPRel"
+  + " (collisionRecordsWallData)";
 
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
@@ -167,7 +174,58 @@ void Foam::KinematicParcel<ParcelType>::readFields(Cloud<ParcelType>& c)
     IOField<vector> UTurb(c.fieldIOobject("UTurb", IOobject::MUST_READ));
     c.checkFieldIOobject(c, UTurb);
 
+    labelIOFieldField collisionRecordsPairAccessed
+    (
+        c.fieldIOobject("collisionRecordsPairAccessed", IOobject::MUST_READ)
+    );
+    c.checkFieldFieldIOobject(c, collisionRecordsPairAccessed);
+
+    labelIOFieldField collisionRecordsPairOrigProcOfOther
+    (
+        c.fieldIOobject
+        (
+            "collisionRecordsPairOrigProcOfOther",
+            IOobject::MUST_READ
+        )
+    );
+    c.checkFieldFieldIOobject(c, collisionRecordsPairOrigProcOfOther);
+
+    labelIOFieldField collisionRecordsPairOrigIdOfOther
+    (
+        c.fieldIOobject
+        (
+            "collisionRecordsPairOrigIdOfOther",
+            IOobject::MUST_READ
+        )
+    );
+    c.checkFieldFieldIOobject(c, collisionRecordsPairOrigProcOfOther);
+
+    pairDataIOFieldField collisionRecordsPairData
+    (
+        c.fieldIOobject("collisionRecordsPairData", IOobject::MUST_READ)
+    );
+    c.checkFieldFieldIOobject(c, collisionRecordsPairData);
+
+    labelIOFieldField collisionRecordsWallAccessed
+    (
+        c.fieldIOobject("collisionRecordsWallAccessed", IOobject::MUST_READ)
+    );
+    c.checkFieldFieldIOobject(c, collisionRecordsWallAccessed);
+
+    vectorIOFieldField collisionRecordsWallPRel
+    (
+        c.fieldIOobject("collisionRecordsWallPRel", IOobject::MUST_READ)
+    );
+    c.checkFieldFieldIOobject(c, collisionRecordsWallPRel);
+
+    wallDataIOFieldField collisionRecordsWallData
+    (
+        c.fieldIOobject("collisionRecordsWallData", IOobject::MUST_READ)
+    );
+    c.checkFieldFieldIOobject(c, collisionRecordsWallData);
+
     label i = 0;
+
     forAllIter(typename Cloud<ParcelType>, c, iter)
     {
         ParcelType& p = iter();
@@ -182,6 +240,17 @@ void Foam::KinematicParcel<ParcelType>::readFields(Cloud<ParcelType>& c)
         p.rho_ = rho[i];
         p.tTurb_ = tTurb[i];
         p.UTurb_ = UTurb[i];
+        p.collisionRecords_ = collisionRecordList
+        (
+            collisionRecordsPairAccessed[i],
+            collisionRecordsPairOrigProcOfOther[i],
+            collisionRecordsPairOrigIdOfOther[i],
+            collisionRecordsPairData[i],
+            collisionRecordsWallAccessed[i],
+            collisionRecordsWallPRel[i],
+            collisionRecordsWallData[i]
+        );
+
         i++;
     }
 }
@@ -206,14 +275,56 @@ void Foam::KinematicParcel<ParcelType>::writeFields(const Cloud<ParcelType>& c)
     IOField<vector> f(c.fieldIOobject("f", IOobject::NO_READ), np);
     IOField<vector> angularMomentum
     (
-        c.fieldIOobject("angularMomentum", IOobject::NO_READ), np
+        c.fieldIOobject("angularMomentum", IOobject::NO_READ),
+        np
     );
     IOField<vector> torque(c.fieldIOobject("torque", IOobject::NO_READ), np);
     IOField<scalar> rho(c.fieldIOobject("rho", IOobject::NO_READ), np);
     IOField<scalar> tTurb(c.fieldIOobject("tTurb", IOobject::NO_READ), np);
     IOField<vector> UTurb(c.fieldIOobject("UTurb", IOobject::NO_READ), np);
 
+    labelIOFieldField collisionRecordsPairAccessed
+    (
+        c.fieldIOobject("collisionRecordsPairAccessed", IOobject::NO_READ),
+        np
+    );
+    labelIOFieldField collisionRecordsPairOrigProcOfOther
+    (
+        c.fieldIOobject
+        (
+            "collisionRecordsPairOrigProcOfOther",
+            IOobject::NO_READ
+        ),
+        np
+    );
+    labelIOFieldField collisionRecordsPairOrigIdOfOther
+    (
+        c.fieldIOobject("collisionRecordsPairOrigIdOfOther", IOobject::NO_READ),
+        np
+    );
+    pairDataIOFieldField collisionRecordsPairData
+    (
+        c.fieldIOobject("collisionRecordsPairData", IOobject::NO_READ),
+        np
+    );
+    labelIOFieldField collisionRecordsWallAccessed
+    (
+        c.fieldIOobject("collisionRecordsWallAccessed", IOobject::NO_READ),
+        np
+    );
+    vectorIOFieldField collisionRecordsWallPRel
+    (
+        c.fieldIOobject("collisionRecordsWallPRel", IOobject::NO_READ),
+        np
+    );
+    wallDataIOFieldField collisionRecordsWallData
+    (
+        c.fieldIOobject("collisionRecordsWallData", IOobject::NO_READ),
+        np
+    );
+
     label i = 0;
+
     forAllConstIter(typename Cloud<ParcelType>, c, iter)
     {
         const KinematicParcel<ParcelType>& p = iter();
@@ -229,6 +340,16 @@ void Foam::KinematicParcel<ParcelType>::writeFields(const Cloud<ParcelType>& c)
         rho[i] = p.rho();
         tTurb[i] = p.tTurb();
         UTurb[i] = p.UTurb();
+        collisionRecordsPairAccessed[i] = p.collisionRecords().pairAccessed();
+        collisionRecordsPairOrigProcOfOther[i] =
+            p.collisionRecords().pairOrigProcOfOther();
+        collisionRecordsPairOrigIdOfOther[i] =
+            p.collisionRecords().pairOrigIdOfOther();
+        collisionRecordsPairData[i] = p.collisionRecords().pairData();
+        collisionRecordsWallAccessed[i] = p.collisionRecords().wallAccessed();
+        collisionRecordsWallPRel[i] = p.collisionRecords().wallPRel();
+        collisionRecordsWallData[i] = p.collisionRecords().wallData();
+
         i++;
     }
 
@@ -243,6 +364,13 @@ void Foam::KinematicParcel<ParcelType>::writeFields(const Cloud<ParcelType>& c)
     rho.write();
     tTurb.write();
     UTurb.write();
+    collisionRecordsPairAccessed.write();
+    collisionRecordsPairOrigProcOfOther.write();
+    collisionRecordsPairOrigIdOfOther.write();
+    collisionRecordsPairData.write();
+    collisionRecordsWallAccessed.write();
+    collisionRecordsWallPRel.write();
+    collisionRecordsWallData.write();
 }
 
 
diff --git a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/defineBasicKinematicParcel.C b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/defineBasicKinematicParcel.C
index 7e713921dabd3877a94b72d71e878bf6ce6f8136..aee5402c3476467e950f2c475200346569f992ae 100644
--- a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/defineBasicKinematicParcel.C
+++ b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/defineBasicKinematicParcel.C
@@ -25,6 +25,7 @@ License
 
 #include "basicKinematicParcel.H"
 #include "KinematicCloud.H"
+#include "KinematicParcel.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/src/lagrangian/intermediate/parcels/include/makeParcelCollisionModels.H b/src/lagrangian/intermediate/parcels/include/makeParcelCollisionModels.H
index 98ef4bfbe5aef3ac4b71c4aa6cc4ee2d6f85bb0f..0c84d934bde9c4047d4a9e73f8ac40ef029c8c84 100644
--- a/src/lagrangian/intermediate/parcels/include/makeParcelCollisionModels.H
+++ b/src/lagrangian/intermediate/parcels/include/makeParcelCollisionModels.H
@@ -36,6 +36,7 @@ License
 #include "PairSpringSliderDashpot.H"
 
 #include "WallSpringSliderDashpot.H"
+#include "WallLocalSpringSliderDashpot.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
@@ -73,6 +74,13 @@ License
         WallSpringSliderDashpot,                                              \
         KinematicCloud,                                                       \
         ParcelType                                                            \
+    );                                                                        \
+                                                                              \
+    makeWallModelType                                                         \
+    (                                                                         \
+        WallLocalSpringSliderDashpot,                                         \
+        KinematicCloud,                                                       \
+        ParcelType                                                            \
     );
 
 
diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelCollisionModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelCollisionModels.H
index f1bd4af8a1c5fc9a5d2c50be8e2049668ff4470f..289615125fdcad49a6bae6a40508db0808927132 100644
--- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelCollisionModels.H
+++ b/src/lagrangian/intermediate/parcels/include/makeReactingParcelCollisionModels.H
@@ -37,6 +37,7 @@ License
 #include "PairSpringSliderDashpot.H"
 
 #include "WallSpringSliderDashpot.H"
+#include "WallLocalSpringSliderDashpot.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
@@ -99,9 +100,16 @@ License
         KinematicCloud,                                                       \
         ParcelType,                                                           \
         ThermoType                                                            \
+    );                                                                        \
+                                                                              \
+    makeWallModelThermoType                                                   \
+    (                                                                         \
+        WallLocalSpringSliderDashpot,                                         \
+        KinematicCloud,                                                       \
+        ParcelType,                                                           \
+        ThermoType                                                            \
     );
 
-
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
 #endif
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairSpringSliderDashpot/PairSpringSliderDashpot.C b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairSpringSliderDashpot/PairSpringSliderDashpot.C
index 54bf3ab659ec04ca140bead0ca87491b61fac246..fb732aa19d1362c22d489fc88bfc339e2cbeb3a9 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairSpringSliderDashpot/PairSpringSliderDashpot.C
+++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairSpringSliderDashpot/PairSpringSliderDashpot.C
@@ -45,7 +45,12 @@ void Foam::PairSpringSliderDashpot<CloudType>::findMinMaxProperties
 
         // Finding minimum diameter to avoid excessive arithmetic
 
-        scalar dEff = p.d()*cbrt(p.nParticle()*volumeFactor_);
+        scalar dEff = p.d();
+
+        if (useEquivalentSize_)
+        {
+            dEff *= cbrt(p.nParticle()*volumeFactor_);
+        }
 
         RMin = min(dEff, RMin);
 
@@ -94,8 +99,14 @@ Foam::PairSpringSliderDashpot<CloudType>::PairSpringSliderDashpot
             this->coeffDict().lookup("collisionResolutionSteps")
         )
     ),
-    volumeFactor_(this->dict().lookupOrDefault("volumeFactor", 1.0))
+    volumeFactor_(1.0),
+    useEquivalentSize_(Switch(this->coeffDict().lookup("useEquivalentSize")))
 {
+    if (useEquivalentSize_)
+    {
+        volumeFactor_ = readScalar(this->coeffDict().lookup("volumeFactor"));
+    }
+
     scalar nu = this->owner().constProps().poissonsRatio();
 
     scalar E = this->owner().constProps().youngsModulus();
@@ -158,9 +169,19 @@ void Foam::PairSpringSliderDashpot<CloudType>::evaluatePair
 {
     vector r_AB = (pA.position() - pB.position());
 
-    scalar dAEff = pA.d()*cbrt(pA.nParticle()*volumeFactor_);
+    scalar dAEff = pA.d();
 
-    scalar dBEff = pB.d()*cbrt(pB.nParticle()*volumeFactor_);
+    if (useEquivalentSize_)
+    {
+        dAEff *= cbrt(pA.nParticle()*volumeFactor_);
+    }
+
+    scalar dBEff = pB.d();
+
+    if (useEquivalentSize_)
+    {
+        dBEff *= cbrt(pB.nParticle()*volumeFactor_);
+    }
 
     scalar normalOverlapMag = 0.5*(dAEff + dBEff) - mag(r_AB);
 
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairSpringSliderDashpot/PairSpringSliderDashpot.H b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairSpringSliderDashpot/PairSpringSliderDashpot.H
index 58cd3850127eeb6239f1af3960d5b45373016118..9fba1b35e7e776417b76f7e572c4fc2a56c126b9 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairSpringSliderDashpot/PairSpringSliderDashpot.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairSpringSliderDashpot/PairSpringSliderDashpot.H
@@ -58,9 +58,6 @@ class PairSpringSliderDashpot
         //  the same Poisson's ratio and Young's modulus
         scalar Gstar_;
 
-        //- Poisson's ratio of both particles
-        scalar sigma_;
-
         //- alpha-coefficient, related to coefficient of restitution
         scalar alpha_;
 
@@ -92,6 +89,10 @@ class PairSpringSliderDashpot
         // factor
         scalar volumeFactor_;
 
+        //- Switch to control use of equivalent size particles.  Used
+        //  because the calculation can be very expensive.
+        bool useEquivalentSize_;
+
 
     // Private Member Functions
 
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallLocalSpringSliderDashpot/WallLocalSpringSliderDashpot.C b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallLocalSpringSliderDashpot/WallLocalSpringSliderDashpot.C
new file mode 100644
index 0000000000000000000000000000000000000000..996c35801d9b4c325b31472c564c0edad578666e
--- /dev/null
+++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallLocalSpringSliderDashpot/WallLocalSpringSliderDashpot.C
@@ -0,0 +1,354 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2008-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "WallLocalSpringSliderDashpot.H"
+
+// * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
+
+template <class CloudType>
+void Foam::WallLocalSpringSliderDashpot<CloudType>::findMinMaxProperties
+(
+    scalar& rMin,
+    scalar& rhoMax,
+    scalar& UMagMax
+) const
+{
+    rMin = VGREAT;
+    rhoMax = -VGREAT;
+    UMagMax = -VGREAT;
+
+    forAllConstIter(typename CloudType, this->owner(), iter)
+    {
+        const typename CloudType::parcelType& p = iter();
+
+        // Finding minimum diameter to avoid excessive arithmetic
+
+        scalar dEff = p.d();
+
+        if (useEquivalentSize_)
+        {
+            dEff *= cbrt(p.nParticle()*volumeFactor_);
+        }
+
+        rMin = min(dEff, rMin);
+
+        rhoMax = max(p.rho(), rhoMax);
+
+        UMagMax = max
+        (
+            mag(p.U()) + mag(p.omega())*dEff/2,
+            UMagMax
+        );
+    }
+
+    // Transform the minimum diameter into minimum radius
+    //     rMin = dMin/2
+
+    rMin /= 2.0;
+}
+
+
+template <class CloudType>
+void Foam::WallLocalSpringSliderDashpot<CloudType>::evaluateWall
+(
+    typename CloudType::parcelType& p,
+    const point& site,
+    const WallSiteData<vector>& data,
+    scalar pREff
+) const
+{
+    // wall patch index
+    label wPI = patchMap_[data.patchIndex()];
+
+    // data for this patch
+    scalar Estar = Estar_[wPI];
+    scalar Gstar = Gstar_[wPI];
+    scalar alpha = alpha_[wPI];
+    scalar b = b_[wPI];
+    scalar mu = mu_[wPI];
+
+    vector r_PW = p.position() - site;
+
+    vector U_PW = p.U() - data.wallData();
+
+    scalar normalOverlapMag = max(pREff - mag(r_PW), 0.0);
+
+    vector rHat_PW = r_PW/(mag(r_PW) + VSMALL);
+
+    scalar kN = (4.0/3.0)*sqrt(pREff)*Estar;
+
+    scalar etaN = alpha*sqrt(p.mass()*kN)*pow025(normalOverlapMag);
+
+    vector fN_PW =
+        rHat_PW
+       *(kN*pow(normalOverlapMag, b) - etaN*(U_PW & rHat_PW));
+
+    p.f() += fN_PW;
+
+    vector USlip_PW =
+        U_PW - (U_PW & rHat_PW)*rHat_PW
+      + (p.omega() ^ (pREff*-rHat_PW));
+
+    scalar deltaT = this->owner().mesh().time().deltaTValue();
+
+    vector& tangentialOverlap_PW =
+        p.collisionRecords().matchWallRecord(-r_PW, pREff).collisionData();
+
+    tangentialOverlap_PW += USlip_PW*deltaT;
+
+    scalar tangentialOverlapMag = mag(tangentialOverlap_PW);
+
+    if (tangentialOverlapMag > VSMALL)
+    {
+        scalar kT = 8.0*sqrt(pREff*normalOverlapMag)*Gstar;
+
+        scalar etaT = etaN;
+
+        // Tangential force
+        vector fT_PW;
+
+        if (kT*tangentialOverlapMag > mu*mag(fN_PW))
+        {
+            // Tangential force greater than sliding friction,
+            // particle slips
+
+            fT_PW = -mu*mag(fN_PW)*USlip_PW/mag(USlip_PW);
+
+            tangentialOverlap_PW = vector::zero;
+        }
+        else
+        {
+            fT_PW =
+                -kT*tangentialOverlapMag
+               *tangentialOverlap_PW/tangentialOverlapMag
+              - etaT*USlip_PW;
+        }
+
+        p.f() += fT_PW;
+
+        p.torque() += (pREff*-rHat_PW) ^ fT_PW;
+    }
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+template <class CloudType>
+Foam::WallLocalSpringSliderDashpot<CloudType>::WallLocalSpringSliderDashpot
+(
+    const dictionary& dict,
+    CloudType& cloud
+)
+:
+    WallModel<CloudType>(dict, cloud, typeName),
+    Estar_(),
+    Gstar_(),
+    alpha_(),
+    b_(),
+    mu_(),
+    patchMap_(),
+    maxEstarIndex_(-1),
+    collisionResolutionSteps_
+    (
+        readScalar
+        (
+            this->coeffDict().lookup("collisionResolutionSteps")
+        )
+    ),
+    volumeFactor_(1.0),
+    useEquivalentSize_(Switch(this->coeffDict().lookup("useEquivalentSize")))
+{
+    if (useEquivalentSize_)
+    {
+        volumeFactor_ = readScalar(this->coeffDict().lookup("volumeFactor"));
+    }
+
+    scalar pNu = this->owner().constProps().poissonsRatio();
+
+    scalar pE = this->owner().constProps().youngsModulus();
+
+    const polyMesh& mesh = cloud.mesh();
+
+    const polyBoundaryMesh& bMesh = mesh.boundaryMesh();
+
+    patchMap_.setSize(bMesh.size(), -1);
+
+    DynamicList<label> wallPatchIndices;
+
+    forAll(bMesh, patchI)
+    {
+        if (isA<wallPolyPatch>(bMesh[patchI]))
+        {
+            wallPatchIndices.append(bMesh[patchI].index());
+        }
+    }
+
+    label nWallPatches = wallPatchIndices.size();
+
+    Estar_.setSize(nWallPatches);
+    Gstar_.setSize(nWallPatches);
+    alpha_.setSize(nWallPatches);
+    b_.setSize(nWallPatches);
+    mu_.setSize(nWallPatches);
+
+    scalar maxEstar = -GREAT;
+
+    forAll(wallPatchIndices, wPI)
+    {
+        const dictionary& patchCoeffDict
+        (
+            this->coeffDict().subDict(bMesh[wallPatchIndices[wPI]].name())
+        );
+
+        patchMap_[wallPatchIndices[wPI]] = wPI;
+
+        scalar nu = dimensionedScalar
+        (
+            patchCoeffDict.lookup("poissonsRatio")
+        ).value();
+
+        scalar E = dimensionedScalar
+        (
+            patchCoeffDict.lookup("youngsModulus")
+        ).value();
+
+        Estar_[wPI] = 1/((1 - sqr(pNu))/pE + (1 - sqr(nu))/E);
+
+        Gstar_[wPI] = 1/(2*((2 + pNu - sqr(pNu))/pE + (2 + nu - sqr(nu))/E));
+
+        alpha_[wPI] =
+            dimensionedScalar(patchCoeffDict.lookup("alpha")).value();
+
+        b_[wPI] = dimensionedScalar(patchCoeffDict.lookup("b")).value();
+
+        mu_[wPI] = dimensionedScalar(patchCoeffDict.lookup("mu")).value();
+
+        if (Estar_[wPI] > maxEstar)
+        {
+            maxEstarIndex_ = wPI;
+
+            maxEstar = Estar_[wPI];
+        }
+    }
+}
+
+
+// * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
+
+template <class CloudType>
+Foam::WallLocalSpringSliderDashpot<CloudType>::~WallLocalSpringSliderDashpot()
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+template<class CloudType>
+Foam::scalar Foam::WallLocalSpringSliderDashpot<CloudType>::pREff
+(
+    const typename CloudType::parcelType& p
+) const
+{
+    if (useEquivalentSize_)
+    {
+        return p.d()/2*cbrt(p.nParticle()*volumeFactor_);
+    }
+    else
+    {
+        return p.d()/2;
+    }
+}
+
+
+template<class CloudType>
+bool Foam::WallLocalSpringSliderDashpot<CloudType>::controlsTimestep() const
+{
+    return true;
+}
+
+
+template<class CloudType>
+Foam::label Foam::WallLocalSpringSliderDashpot<CloudType>::nSubCycles() const
+{
+    if (!(this->owner().size()))
+    {
+        return 1;
+    }
+
+    scalar rMin;
+    scalar rhoMax;
+    scalar UMagMax;
+
+    findMinMaxProperties(rMin, rhoMax, UMagMax);
+
+    // Note:  pi^(7/5)*(5/4)^(2/5) = 5.429675
+    scalar minCollisionDeltaT =
+        5.429675
+       *rMin
+       *pow(rhoMax/(Estar_[maxEstarIndex_]*sqrt(UMagMax) + VSMALL), 0.4)
+       /collisionResolutionSteps_;
+
+    return ceil(this->owner().time().deltaTValue()/minCollisionDeltaT);
+}
+
+
+template<class CloudType>
+void Foam::WallLocalSpringSliderDashpot<CloudType>::evaluateWall
+(
+    typename CloudType::parcelType& p,
+    const List<point>& flatSitePoints,
+    const List<WallSiteData<vector> >& flatSiteData,
+    const List<point>& sharpSitePoints,
+    const List<WallSiteData<vector> >& sharpSiteData
+) const
+{
+    scalar pREff = this->pREff(p);
+
+    forAll(flatSitePoints, siteI)
+    {
+        evaluateWall
+        (
+            p,
+            flatSitePoints[siteI],
+            flatSiteData[siteI],
+            pREff
+        );
+    }
+
+    forAll(sharpSitePoints, siteI)
+    {
+        // Treating sharp sites like flat sites
+
+        evaluateWall
+        (
+            p,
+            sharpSitePoints[siteI],
+            sharpSiteData[siteI],
+            pREff
+        );
+    }
+}
+
+
+// ************************************************************************* //
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallLocalSpringSliderDashpot/WallLocalSpringSliderDashpot.H b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallLocalSpringSliderDashpot/WallLocalSpringSliderDashpot.H
new file mode 100644
index 0000000000000000000000000000000000000000..4062c9928cb8846b1ce9602d6fd5055cfa45592a
--- /dev/null
+++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallLocalSpringSliderDashpot/WallLocalSpringSliderDashpot.H
@@ -0,0 +1,184 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2008-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::WallLocalSpringSliderDashpot
+
+Description
+    Forces between particles and walls, interacting with a spring,
+    slider, damper model
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef WallLocalSpringSliderDashpot_H
+#define WallLocalSpringSliderDashpot_H
+
+#include "WallModel.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+/*---------------------------------------------------------------------------*\
+                Class WallLocalSpringSliderDashpot Declaration
+\*---------------------------------------------------------------------------*/
+
+template<class CloudType>
+class WallLocalSpringSliderDashpot
+:
+    public WallModel<CloudType>
+{
+    // Private data
+
+        //- Effective Young's modulus value
+        scalarList Estar_;
+
+        //- Effective shear modulus value
+        scalarList Gstar_;
+
+        //- alpha-coefficient, related to coefficient of restitution
+        scalarList alpha_;
+
+        //- Spring power (b = 1 for linear, b = 3/2 for Hertzian)
+        scalarList b_;
+
+        //- Coefficient of friction in for tangential sliding
+        scalarList mu_;
+
+        //- Mapping the patch index to the model data
+        labelList patchMap_;
+
+        //- Index of the maximum value of Estar_
+        label maxEstarIndex_;
+
+        //- The number of steps over which to resolve the minimum
+        //  harmonic approximation of the collision period
+        scalar collisionResolutionSteps_;
+
+        //- Volume factor for determining the equivalent size of a
+        //  parcel where nParticles is not 1.  The equivalent size of
+        //  the parcel is
+        //      parcelEquivVolume = volumeFactor*nParticles*p.volume()
+        //  so
+        //      parcelEquivD = cbrt(volumeFactor*nParticles)*p.d()
+        //  + When volumeFactor = 1, the particles are compressed
+        //    together so that the equivalent volume of the parcel is
+        //    the sum of the constituent particles
+        //  + When volumeFactor = 3*sqrt(2)/pi, the particles are
+        //    close packed, but uncompressed.
+        //  + When volumeFactor > 3*sqrt(2)/pi, the particles loosely
+        //    grouped.
+        // 3*sqrt(2)/pi = 1.350474 is the volume factor for close
+        // packing, i.e pi/(3*sqrt(2)) is the maximum close packing
+        // factor
+        scalar volumeFactor_;
+
+        //- Switch to control use of equivalent size particles.  Used
+        //  because the calculation can be very expensive.
+        bool useEquivalentSize_;
+
+
+    // Private Member Functions
+
+        //- Find the appropriate properties for determining the minimum
+        //- allowable timestep
+        void findMinMaxProperties
+        (
+            scalar& rMin,
+            scalar& rhoMax,
+            scalar& vMagMax
+        ) const;
+
+        //- Calculate the wall interaction for a parcel at a given site
+        void evaluateWall
+        (
+            typename CloudType::parcelType& p,
+            const point& site,
+            const WallSiteData<vector>& data,
+            scalar pREff
+        ) const;
+
+
+public:
+
+    //- Runtime type information
+    TypeName("WallLocalSpringSliderDashpot");
+
+
+    // Constructors
+
+        //- Construct from dictionary
+        WallLocalSpringSliderDashpot(const dictionary& dict, CloudType& cloud);
+
+
+    //- Destructor
+    virtual ~WallLocalSpringSliderDashpot();
+
+
+    // Member Functions
+
+        //- Return the volumeFactor
+        inline scalar volumeFactor() const
+        {
+            return volumeFactor_;
+        }
+
+        //- Return the effective radius for a particle for the model
+        virtual scalar pREff(const typename CloudType::parcelType& p) const;
+
+        //- Whether the WallModel has a timestep limit that will
+        //  require subCycling
+        virtual bool controlsTimestep() const;
+
+        //- For WallModels that control the timestep, calculate the
+        //  number of subCycles needed to satisfy the minimum
+        //  allowable timestep
+        virtual label nSubCycles() const;
+
+        //- Calculate the wall interaction for a parcel
+        virtual void evaluateWall
+        (
+            typename CloudType::parcelType& p,
+            const List<point>& flatSitePoints,
+            const List<WallSiteData<vector> >& flatSiteData,
+            const List<point>& sharpSitePoints,
+            const List<WallSiteData<vector> >& sharpSiteData
+        ) const;
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#ifdef NoRepository
+#   include "WallLocalSpringSliderDashpot.C"
+#endif
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.C b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.C
index d8f1ffa84eeef20f53a4ca9ea0519ceaef74c336..d25cc29c6ab630d0b331a25d5e4aa6eccd62073f 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.C
+++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.C
@@ -58,6 +58,14 @@ Foam::WallModel<CloudType>::owner() const
 }
 
 
+template<class CloudType>
+CloudType&
+Foam::WallModel<CloudType>::owner()
+{
+    return owner_;
+}
+
+
 template<class CloudType>
 const Foam::dictionary& Foam::WallModel<CloudType>::dict() const
 {
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.H b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.H
index 31fde4e2991f3293e29e124f3e6f53453a7800da..392825f8297802f68e2ceefdb756e2a52e9e4df2 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.H
@@ -111,6 +111,9 @@ public:
         //- Return the owner cloud object
         const CloudType& owner() const;
 
+        //- Return non-const access to the owner cloud object
+        CloudType& owner();
+
         //- Return the dictionary
         const dictionary& dict() const;
 
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallSpringSliderDashpot/WallSpringSliderDashpot.C b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallSpringSliderDashpot/WallSpringSliderDashpot.C
index 4bf524e387cc82605dd01a81d4d49fe2aca8b88a..a2cc666f15a186912a66b3eae9f9636943029987 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallSpringSliderDashpot/WallSpringSliderDashpot.C
+++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallSpringSliderDashpot/WallSpringSliderDashpot.C
@@ -45,7 +45,12 @@ void Foam::WallSpringSliderDashpot<CloudType>::findMinMaxProperties
 
         // Finding minimum diameter to avoid excessive arithmetic
 
-        scalar dEff = p.d()*cbrt(p.nParticle()*volumeFactor_);
+        scalar dEff = p.d();
+
+        if (useEquivalentSize_)
+        {
+            dEff *= cbrt(p.nParticle()*volumeFactor_);
+        }
 
         rMin = min(dEff, rMin);
 
@@ -64,25 +69,22 @@ void Foam::WallSpringSliderDashpot<CloudType>::findMinMaxProperties
     rMin /= 2.0;
 }
 
+
 template <class CloudType>
 void Foam::WallSpringSliderDashpot<CloudType>::evaluateWall
 (
     typename CloudType::parcelType& p,
     const point& site,
     const WallSiteData<vector>& data,
-    scalar pNu,
-    scalar pE,
     scalar pREff,
-    scalar Estar,
-    scalar kN,
-    scalar Gstar
+    scalar kN
 ) const
 {
     vector r_PW = p.position() - site;
 
     vector U_PW = p.U() - data.wallData();
 
-    scalar normalOverlapMag = pREff - mag(r_PW);
+    scalar normalOverlapMag = max(pREff - mag(r_PW), 0.0);
 
     vector rHat_PW = r_PW/(mag(r_PW) + VSMALL);
 
@@ -109,7 +111,7 @@ void Foam::WallSpringSliderDashpot<CloudType>::evaluateWall
 
     if (tangentialOverlapMag > VSMALL)
     {
-        scalar kT = 8.0*sqrt(pREff*normalOverlapMag)*Gstar;
+        scalar kT = 8.0*sqrt(pREff*normalOverlapMag)*Gstar_;
 
         scalar etaT = etaN;
 
@@ -150,8 +152,8 @@ Foam::WallSpringSliderDashpot<CloudType>::WallSpringSliderDashpot
 )
 :
     WallModel<CloudType>(dict, cloud, typeName),
-    E_(dimensionedScalar(this->coeffDict().lookup("youngsModulus")).value()),
-    nu_(dimensionedScalar(this->coeffDict().lookup("poissonsRatio")).value()),
+    Estar_(),
+    Gstar_(),
     alpha_(dimensionedScalar(this->coeffDict().lookup("alpha")).value()),
     b_(dimensionedScalar(this->coeffDict().lookup("b")).value()),
     mu_(dimensionedScalar(this->coeffDict().lookup("mu")).value()),
@@ -162,8 +164,32 @@ Foam::WallSpringSliderDashpot<CloudType>::WallSpringSliderDashpot
             this->coeffDict().lookup("collisionResolutionSteps")
         )
     ),
-    volumeFactor_(this->dict().lookupOrDefault("volumeFactor", 1.0))
-{}
+    volumeFactor_(1.0),
+    useEquivalentSize_(Switch(this->coeffDict().lookup("useEquivalentSize")))
+{
+    if (useEquivalentSize_)
+    {
+        volumeFactor_ = readScalar(this->coeffDict().lookup("volumeFactor"));
+    }
+
+    scalar nu = dimensionedScalar
+    (
+        this->coeffDict().lookup("poissonsRatio")
+    ).value();
+
+    scalar E = dimensionedScalar
+    (
+        this->coeffDict().lookup("youngsModulus")
+    ).value();
+
+    scalar pNu = this->owner().constProps().poissonsRatio();
+
+    scalar pE = this->owner().constProps().youngsModulus();
+
+    Estar_ = 1/((1 - sqr(pNu))/pE + (1 - sqr(nu))/E);
+
+    Gstar_ = 1/(2*((2 + pNu - sqr(pNu))/pE + (2 + nu - sqr(nu))/E));
+}
 
 
 // * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
@@ -181,9 +207,17 @@ Foam::scalar Foam::WallSpringSliderDashpot<CloudType>::pREff
     const typename CloudType::parcelType& p
 ) const
 {
-    return p.d()/2*cbrt(p.nParticle()*volumeFactor_);
+    if (useEquivalentSize_)
+    {
+        return p.d()/2*cbrt(p.nParticle()*volumeFactor_);
+    }
+    else
+    {
+        return p.d()/2;
+    }
 }
 
+
 template<class CloudType>
 bool Foam::WallSpringSliderDashpot<CloudType>::controlsTimestep() const
 {
@@ -205,17 +239,11 @@ Foam::label Foam::WallSpringSliderDashpot<CloudType>::nSubCycles() const
 
     findMinMaxProperties(rMin, rhoMax, UMagMax);
 
-    scalar pNu = this->owner().constProps().poissonsRatio();
-
-    scalar pE = this->owner().constProps().youngsModulus();
-
-    scalar Estar = 1/((1 - sqr(pNu))/pE + (1 - sqr(nu_))/E_);
-
     // Note:  pi^(7/5)*(5/4)^(2/5) = 5.429675
     scalar minCollisionDeltaT =
         5.429675
        *rMin
-       *pow(rhoMax/(Estar*sqrt(UMagMax) + VSMALL), 0.4)
+       *pow(rhoMax/(Estar_*sqrt(UMagMax) + VSMALL), 0.4)
        /collisionResolutionSteps_;
 
     return ceil(this->owner().time().deltaTValue()/minCollisionDeltaT);
@@ -232,17 +260,9 @@ void Foam::WallSpringSliderDashpot<CloudType>::evaluateWall
     const List<WallSiteData<vector> >& sharpSiteData
 ) const
 {
-    scalar pNu = this->owner().constProps().poissonsRatio();
-
-    scalar pE = this->owner().constProps().youngsModulus();
-
     scalar pREff = this->pREff(p);
 
-    scalar Estar = 1/((1 - sqr(pNu))/pE + (1 - sqr(nu_))/E_);
-
-    scalar kN = (4.0/3.0)*sqrt(pREff)*Estar;
-
-    scalar GStar = 1/(2*((2 + pNu - sqr(pNu))/pE + (2 + nu_ - sqr(nu_))/E_));
+    scalar kN = (4.0/3.0)*sqrt(pREff)*Estar_;
 
     forAll(flatSitePoints, siteI)
     {
@@ -251,12 +271,8 @@ void Foam::WallSpringSliderDashpot<CloudType>::evaluateWall
             p,
             flatSitePoints[siteI],
             flatSiteData[siteI],
-            pNu,
-            pE,
             pREff,
-            Estar,
-            kN,
-            GStar
+            kN
         );
     }
 
@@ -269,12 +285,8 @@ void Foam::WallSpringSliderDashpot<CloudType>::evaluateWall
             p,
             sharpSitePoints[siteI],
             sharpSiteData[siteI],
-            pNu,
-            pE,
             pREff,
-            Estar,
-            kN,
-            GStar
+            kN
         );
     }
 }
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallSpringSliderDashpot/WallSpringSliderDashpot.H b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallSpringSliderDashpot/WallSpringSliderDashpot.H
index 2aefa7d7e7d70accf278ba26b29262146dd8078c..e11ac0127af4f2031bcfb6eeea0181c6b2d0610c 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallSpringSliderDashpot/WallSpringSliderDashpot.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallSpringSliderDashpot/WallSpringSliderDashpot.H
@@ -50,11 +50,11 @@ class WallSpringSliderDashpot
 {
     // Private data
 
-        //- Young's modulus of the wall
-        scalar E_;
+        //- Effective Young's modulus value
+        scalar Estar_;
 
-        //- Poisson's ratio of the wall
-        scalar nu_;
+        //- Effective shear modulus value
+        scalar Gstar_;
 
         //- alpha-coefficient, related to coefficient of restitution
         scalar alpha_;
@@ -87,6 +87,10 @@ class WallSpringSliderDashpot
         // factor
         scalar volumeFactor_;
 
+        //- Switch to control use of equivalent size particles.  Used
+        //  because the calculation can be very expensive.
+        bool useEquivalentSize_;
+
 
     // Private Member Functions
 
@@ -105,12 +109,8 @@ class WallSpringSliderDashpot
             typename CloudType::parcelType& p,
             const point& site,
             const WallSiteData<vector>& data,
-            scalar pNu,
-            scalar pE,
             scalar pREff,
-            scalar Estar,
-            scalar kN,
-            scalar Gstar
+            scalar kN
         ) const;
 
 
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.C b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.C
index 9b44324461ba87abce6e45c553f9f52fab06b71d..c56ff296183545103ce726d421955a1ed4853ee6 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.C
+++ b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.C
@@ -40,7 +40,7 @@ void Foam::InjectionModel<CloudType>::readProps()
         owner_.db().time().timeName(),
         "uniform"/cloud::prefix/owner_.name(),
         owner_.db(),
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE,
         false
     );
diff --git a/src/lagrangian/molecularDynamics/molecule/mdTools/createAutoCorrelationFunctions.H b/src/lagrangian/molecularDynamics/molecule/mdTools/createAutoCorrelationFunctions.H
index ebe1781e6fda4b685bcf840ed4bf50db5d4515b6..b257b7eece99e7330cc4b5301b5f776c671b298c 100644
--- a/src/lagrangian/molecularDynamics/molecule/mdTools/createAutoCorrelationFunctions.H
+++ b/src/lagrangian/molecularDynamics/molecule/mdTools/createAutoCorrelationFunctions.H
@@ -32,7 +32,7 @@ IOdictionary mdTransportProperitesDict
         "mdTransportProperitesDict",
         mesh.time().system(),
         mesh,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE,
         false
     )
diff --git a/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C b/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C
index 55f24f100f8851d9c24afe094b1e5db231714624..5fef0b1d0d4edcf10d6293d6344c89ce3960f9d2 100644
--- a/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C
+++ b/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C
@@ -56,7 +56,7 @@ void Foam::moleculeCloud::buildConstProps()
             "moleculeProperties",
             mesh_.time().constant(),
             mesh_,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/src/lagrangian/molecularDynamics/potential/potential/potential.C b/src/lagrangian/molecularDynamics/potential/potential/potential.C
index a54ef7f153d0a285460028187223c95864f552ab..b34b6e38ccdc5a7098756e580358592d4e5008b7 100644
--- a/src/lagrangian/molecularDynamics/potential/potential/potential.C
+++ b/src/lagrangian/molecularDynamics/potential/potential/potential.C
@@ -104,7 +104,7 @@ void Foam::potential::potential::readPotentialDict()
             "idList",
             mesh_.time().constant(),
             mesh_,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
@@ -120,7 +120,7 @@ void Foam::potential::potential::readPotentialDict()
                 "moleculeProperties",
                 mesh_.time().constant(),
                 mesh_,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -151,7 +151,7 @@ void Foam::potential::potential::readPotentialDict()
             "potentialDict",
             mesh_.time().system(),
             mesh_,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
@@ -229,18 +229,12 @@ void Foam::potential::potential::readPotentialDict()
 
     if (potentialDict.found("external"))
     {
-
         Info<< nl << "Reading external forces:" << endl;
 
         const dictionary& externalDict = potentialDict.subDict("external");
 
-        // *********************************************************************
         // gravity
-
-        if (externalDict.found("gravity"))
-        {
-            gravity_ = externalDict.lookup("gravity");
-        }
+        externalDict.readIfPresent("gravity", gravity_);
     }
 
     Info<< nl << tab << "gravity = " << gravity_ << endl;
@@ -260,7 +254,7 @@ void Foam::potential::potential::readMdInitialiseDict
             "moleculeProperties",
             mesh_.time().constant(),
             mesh_,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/src/lagrangian/solidParticle/solidParticleCloud.C b/src/lagrangian/solidParticle/solidParticleCloud.C
index 753b760b14be1f54bcbed37d15c09d332091775b..625116d525c68db7793f76bdc0aa0c480ac0a743 100644
--- a/src/lagrangian/solidParticle/solidParticleCloud.C
+++ b/src/lagrangian/solidParticle/solidParticleCloud.C
@@ -54,7 +54,7 @@ Foam::solidParticleCloud::solidParticleCloud
             "particleProperties",
             mesh_.time().constant(),
             mesh_,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/autoHexMeshDriver.C b/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/autoHexMeshDriver.C
index 1fd66dfda8d38196bb3ac90f2c2ebf79266f68e3..b5085a465abb4a286b3b229145cac45a3f611bef 100644
--- a/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/autoHexMeshDriver.C
+++ b/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/autoHexMeshDriver.C
@@ -415,11 +415,7 @@ Foam::autoHexMeshDriver::autoHexMeshDriver
 
     {
         // Decomposition
-        decomposerPtr_ = decompositionMethod::New
-        (
-            decomposeDict,
-            mesh_
-        );
+        decomposerPtr_ = decompositionMethod::New(decomposeDict);
         decompositionMethod& decomposer = decomposerPtr_();
 
 
diff --git a/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/layerParameters/layerParameters.C b/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/layerParameters/layerParameters.C
index 348f9ce4142389f3627ccba8f746e298ff7e7acd..99b231f23457f9f04d8ce0fe6a554741d4f5d07d 100644
--- a/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/layerParameters/layerParameters.C
+++ b/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/layerParameters/layerParameters.C
@@ -218,10 +218,7 @@ Foam::layerParameters::layerParameters
             << endl;
     }
 
-    if (dict.found("nRelaxedIter"))
-    {
-        dict.lookup("nRelaxedIter") >> nRelaxedIter_;
-    }
+    dict.readIfPresent("nRelaxedIter", nRelaxedIter_);
 
     if (nLayerIter_ < 0 || nRelaxedIter_ < 0)
     {
@@ -303,10 +300,8 @@ Foam::layerParameters::layerParameters
             << endl;
     }
 
-    if (dict.found("nRelaxedIter"))
-    {
-        dict.lookup("nRelaxedIter") >> nRelaxedIter_;
-    }
+    dict.readIfPresent("nRelaxedIter", nRelaxedIter_);
+
     if (nLayerIter_ < 0 || nRelaxedIter_ < 0)
     {
         FatalErrorIn("layerParameters::layerParameters(..)")
diff --git a/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinement.C b/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinement.C
index 0622273a4ef922a6342de997919c1a1eefb82a7a..43d1c740609a0c408967a858a11e7d28192ab29b 100644
--- a/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinement.C
+++ b/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinement.C
@@ -1214,6 +1214,7 @@ Foam::autoPtr<Foam::mapDistributePolyMesh> Foam::meshRefinement::balance
                 // Normal decomposition
                 distribution = decomposer.decompose
                 (
+                    mesh_,
                     mesh_.cellCentres(),
                     cellWeights
                 );
@@ -1224,6 +1225,7 @@ Foam::autoPtr<Foam::mapDistributePolyMesh> Foam::meshRefinement::balance
             // Normal decomposition
             distribution = decomposer.decompose
             (
+                mesh_,
                 mesh_.cellCentres(),
                 cellWeights
             );
diff --git a/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinementProblemCells.C b/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinementProblemCells.C
index 5bef117c7f44bb9f61713de43564c6ac3c21a083..2074814ac5a6f107955dd80194149f2f3a8ad53a 100644
--- a/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinementProblemCells.C
+++ b/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinementProblemCells.C
@@ -519,11 +519,9 @@ Foam::labelList Foam::meshRefinement::markFacesOnProblemCells
     // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
     // Collapse checking parameters
-    scalar volFraction = -1;
-    if (motionDict.found("minVolCollapseRatio"))
-    {
-        volFraction = readScalar(motionDict.lookup("minVolCollapseRatio"));
-    }
+    const scalar volFraction =
+        motionDict.lookupOrDefault<scalar>("minVolCollapseRatio", -1);
+
     const bool checkCollapse = (volFraction > 0);
     scalar minArea = -1;
     scalar maxNonOrtho = -1;
diff --git a/src/mesh/autoMesh/autoHexMesh/refinementSurfaces/refinementSurfaces.C b/src/mesh/autoMesh/autoHexMesh/refinementSurfaces/refinementSurfaces.C
index e53d7ae03f8d4194e6234b89bd4afd2684ff97a9..f10b815b9d5a7bc839b3007500a8137e0c4b05e0 100644
--- a/src/mesh/autoMesh/autoHexMesh/refinementSurfaces/refinementSurfaces.C
+++ b/src/mesh/autoMesh/autoHexMesh/refinementSurfaces/refinementSurfaces.C
@@ -151,17 +151,10 @@ Foam::refinementSurfaces::refinementSurfaces
         }
 
         // Global perpendicular angle
-        if (dict.found("perpendicularAngle"))
-        {
-            globalAngle[surfI] = readScalar(dict.lookup("perpendicularAngle"));
-        }
+        dict.readIfPresent("perpendicularAngle", globalAngle[surfI]);
 
         //// Global patch name per surface
-        //if (dict.found("patchType"))
-        //{
-        //    dict.lookup("patchType") >> globalPatchType[surfI];
-        //}
-
+        //dict.readIfPresent("patchType", globalPatchType[surfI]);
 
         if (dict.found("regions"))
         {
@@ -446,13 +439,7 @@ Foam::refinementSurfaces::refinementSurfaces
             }
 
             // Global perpendicular angle
-            if (dict.found("perpendicularAngle"))
-            {
-                globalAngle[surfI] = readScalar
-                (
-                    dict.lookup("perpendicularAngle")
-                );
-            }
+            dict.readIfPresent("perpendicularAngle", globalAngle[surfI]);
 
             if (dict.found("regions"))
             {
diff --git a/src/meshTools/coordinateSystems/coordinateRotation/EulerCoordinateRotation.C b/src/meshTools/coordinateSystems/coordinateRotation/EulerCoordinateRotation.C
index e9f9882c8b092ce5f47c713c69a0d1bbce0563b8..68f3c272bf5b3a7776e17fa15920668e5adebe45 100644
--- a/src/meshTools/coordinateSystems/coordinateRotation/EulerCoordinateRotation.C
+++ b/src/meshTools/coordinateSystems/coordinateRotation/EulerCoordinateRotation.C
@@ -25,7 +25,6 @@ License
 
 #include "EulerCoordinateRotation.H"
 
-#include "Switch.H"
 #include "mathematicalConstants.H"
 #include "addToRunTimeSelectionTable.H"
 
@@ -137,7 +136,7 @@ Foam::EulerCoordinateRotation::EulerCoordinateRotation
         rotation.component(vector::X),
         rotation.component(vector::Y),
         rotation.component(vector::Z),
-        dict.lookupOrDefault<Switch>("degrees", true)
+        dict.lookupOrDefault("degrees", true)
     );
 }
 
diff --git a/src/meshTools/coordinateSystems/coordinateRotation/STARCDCoordinateRotation.C b/src/meshTools/coordinateSystems/coordinateRotation/STARCDCoordinateRotation.C
index c8277b9071d6a3d25004de9ef88d5a31d51c216f..7bea35f466ef7d74566a9c5b88ca71a38206fd27 100644
--- a/src/meshTools/coordinateSystems/coordinateRotation/STARCDCoordinateRotation.C
+++ b/src/meshTools/coordinateSystems/coordinateRotation/STARCDCoordinateRotation.C
@@ -25,7 +25,6 @@ License
 
 #include "STARCDCoordinateRotation.H"
 
-#include "Switch.H"
 #include "mathematicalConstants.H"
 #include "addToRunTimeSelectionTable.H"
 
@@ -138,7 +137,7 @@ Foam::STARCDCoordinateRotation::STARCDCoordinateRotation
         rotation.component(vector::X),
         rotation.component(vector::Y),
         rotation.component(vector::Z),
-        dict.lookupOrDefault<Switch>("degrees", true)
+        dict.lookupOrDefault("degrees", true)
     );
 }
 
diff --git a/src/meshTools/coordinateSystems/cylindricalCS.C b/src/meshTools/coordinateSystems/cylindricalCS.C
index 588397eeab077025606e2d4f3a642bb6a06bf982..372e06cfc77205eb4a68e1a50b905a4564bc4bc8 100644
--- a/src/meshTools/coordinateSystems/cylindricalCS.C
+++ b/src/meshTools/coordinateSystems/cylindricalCS.C
@@ -26,7 +26,6 @@ License
 #include "cylindricalCS.H"
 
 #include "one.H"
-#include "Switch.H"
 #include "mathematicalConstants.H"
 #include "addToRunTimeSelectionTable.H"
 
@@ -106,7 +105,7 @@ Foam::cylindricalCS::cylindricalCS
 )
 :
     coordinateSystem(name, dict),
-    inDegrees_(dict.lookupOrDefault<Switch>("degrees", true))
+    inDegrees_(dict.lookupOrDefault("degrees", true))
 {}
 
 
diff --git a/src/meshTools/coordinateSystems/sphericalCS.C b/src/meshTools/coordinateSystems/sphericalCS.C
index 40cf2630884dadb4403e9b847d2acdabe60060cf..9aa8343407de86ffb6e3b55b3492a0c9cb601b01 100644
--- a/src/meshTools/coordinateSystems/sphericalCS.C
+++ b/src/meshTools/coordinateSystems/sphericalCS.C
@@ -26,7 +26,6 @@ License
 #include "sphericalCS.H"
 
 #include "one.H"
-#include "Switch.H"
 #include "mathematicalConstants.H"
 #include "addToRunTimeSelectionTable.H"
 
@@ -106,7 +105,7 @@ Foam::sphericalCS::sphericalCS
 )
 :
     coordinateSystem(name, dict),
-    inDegrees_(dict.lookupOrDefault<Switch>("degrees", true))
+    inDegrees_(dict.lookupOrDefault("degrees", true))
 {}
 
 
diff --git a/src/meshTools/searchableSurface/distributedTriSurfaceMesh.C b/src/meshTools/searchableSurface/distributedTriSurfaceMesh.C
index 70bfa897a933e9bc3833d6f12abff473e524a7aa..e736ec8945e754fd5c95cef2abdab9514018726e 100644
--- a/src/meshTools/searchableSurface/distributedTriSurfaceMesh.C
+++ b/src/meshTools/searchableSurface/distributedTriSurfaceMesh.C
@@ -34,6 +34,7 @@ License
 
 #include "IFstream.H"
 #include "decompositionMethod.H"
+#include "geomDecomp.H"
 #include "vectorList.H"
 #include "PackedBoolList.H"
 
@@ -838,7 +839,7 @@ Foam::distributedTriSurfaceMesh::independentlyDistributedBbs
                 "decomposeParDict",
                 searchableSurface::time().system(),
                 searchableSurface::time(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -855,6 +856,19 @@ Foam::distributedTriSurfaceMesh::independentlyDistributedBbs
                 << " does not decompose in parallel."
                 << " Please choose one that does." << exit(FatalError);
         }
+
+        if (!isA<geomDecomp>(decomposer_()))
+        {
+            FatalErrorIn
+            (
+                "distributedTriSurfaceMesh::independentlyDistributedBbs"
+                "(const triSurface&)"
+            )   << "The decomposition method " << decomposer_().typeName
+                << " is not a geometric decomposition method." << endl
+                << "Only geometric decomposition methods are currently"
+                << " supported."
+                << exit(FatalError);
+        }
     }
 
     // Do decomposition according to triangle centre
@@ -864,8 +878,11 @@ Foam::distributedTriSurfaceMesh::independentlyDistributedBbs
         triCentres[triI] = s[triI].centre(s.points());
     }
 
+
+    geomDecomp& decomposer = refCast<geomDecomp>(decomposer_());
+
     // Do the actual decomposition
-    labelList distribution(decomposer_->decompose(triCentres));
+    labelList distribution(decomposer.decompose(triCentres));
 
     // Find bounding box for all triangles on new distribution.
 
diff --git a/src/meshTools/searchableSurface/searchableCylinder.C b/src/meshTools/searchableSurface/searchableCylinder.C
index a3abdf197a70f930653c229b2db0145c159a02d2..7ad44f60d88f1321c69daa5df217ee2246096433 100644
--- a/src/meshTools/searchableSurface/searchableCylinder.C
+++ b/src/meshTools/searchableSurface/searchableCylinder.C
@@ -60,45 +60,66 @@ Foam::pointIndexHit Foam::searchableCylinder::findNearest
     // Decompose sample-point1 into normal and parallel component
     scalar parallel = (v & unitDir_);
 
-    // Remove the parallel component
+    // Remove the parallel component and normalise
     v -= parallel*unitDir_;
     scalar magV = mag(v);
 
+    if (magV < ROOTVSMALL)
+    {
+        v = vector::zero;
+    }
+    else
+    {
+        v /= magV;
+    }
+
     if (parallel <= 0)
     {
         // nearest is at point1 end cap. Clip to radius.
-        if (magV < ROOTVSMALL)
-        {
-            info.setPoint(point1_);
-        }
-        else
-        {
-            //info.setPoint(point1_ + min(magV, radius_)*v/magV);
-            info.setPoint(point1_ + radius_*(v/magV));
-        }
+        info.setPoint(point1_ + min(magV, radius_)*v);
     }
     else if (parallel >= magDir_)
     {
-        // nearest is at point2
-        if (magV < ROOTVSMALL)
-        {
-            info.setPoint(point2_);
-        }
-        else
-        {
-            info.setPoint(point2_ + min(magV, radius_)*v/magV);
-        }
+        // nearest is at point2 end cap. Clip to radius.
+        info.setPoint(point2_ + min(magV, radius_)*v);
     }
     else
     {
-        if (magV < ROOTVSMALL)
+        // inbetween endcaps. Might either be nearer endcaps or cylinder wall
+
+        // distance to endpoint: parallel or parallel-magDir
+        // distance to cylinder wall: magV-radius_
+
+        // Nearest cylinder point
+        point cylPt = sample + (radius_-magV)*v;
+
+        if (parallel < 0.5*magDir_)
         {
-            info.setPoint(point1_ + parallel*unitDir_);
+            // Project onto p1 endcap
+            point end1Pt = point1_ + min(magV, radius_)*v;
+
+            if (magSqr(sample-cylPt) < magSqr(sample-end1Pt))
+            {
+                info.setPoint(cylPt);
+            }
+            else
+            {
+                info.setPoint(end1Pt);
+            }
         }
         else
         {
-            // Project onto radius
-            info.setPoint(point1_ + parallel*unitDir_ + radius_*v/magV);
+            // Project onto p2 endcap
+            point end2Pt = point2_ + min(magV, radius_)*v;
+
+            if (magSqr(sample-cylPt) < magSqr(sample-end2Pt))
+            {
+                info.setPoint(cylPt);
+            }
+            else
+            {
+                info.setPoint(end2Pt);
+            }
         }
     }
 
diff --git a/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.C b/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.C
index 96ce8b6cbe42726a8c41ffd45bc32da13b5b58a2..b934db15efc5c4ad515d619053ff144b4687c667 100644
--- a/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.C
+++ b/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.C
@@ -189,7 +189,8 @@ void Foam::fieldToCell::applyToSet
         mesh().time().timeName(),
         mesh(),
         IOobject::MUST_READ,
-        IOobject::AUTO_WRITE
+        IOobject::AUTO_WRITE,
+        false
     );
 
     if (!fieldObject.headerOk())
diff --git a/src/meshTools/sets/topoSets/cellZoneSet.C b/src/meshTools/sets/topoSets/cellZoneSet.C
index 0a387c669ff885477df44ceeabc6385d3527abab..70de4a799c6921ef0bd3574d19f3778ae97e213f 100644
--- a/src/meshTools/sets/topoSets/cellZoneSet.C
+++ b/src/meshTools/sets/topoSets/cellZoneSet.C
@@ -80,6 +80,7 @@ cellZoneSet::cellZoneSet
     if
     (
         (r == IOobject::MUST_READ)
+     || (r == IOobject::MUST_READ_IF_MODIFIED)
      || (r == IOobject::READ_IF_PRESENT && zoneID != -1)
     )
     {
diff --git a/src/meshTools/sets/topoSets/faceZoneSet.C b/src/meshTools/sets/topoSets/faceZoneSet.C
index ed552af24b20315f71b40823734e7b5ec8f7146a..00669101c8a667009a0c6e9de6f64d4282f5896d 100644
--- a/src/meshTools/sets/topoSets/faceZoneSet.C
+++ b/src/meshTools/sets/topoSets/faceZoneSet.C
@@ -82,6 +82,7 @@ faceZoneSet::faceZoneSet
     if
     (
         (r == IOobject::MUST_READ)
+     || (r == IOobject::MUST_READ_IF_MODIFIED)
      || (r == IOobject::READ_IF_PRESENT && zoneID != -1)
     )
     {
diff --git a/src/meshTools/sets/topoSets/pointZoneSet.C b/src/meshTools/sets/topoSets/pointZoneSet.C
index 64c1a29ed1ea2853982994d231bef44ab539b738..00870ee652bfc2fc7be4e74b590af24bc05abaee 100644
--- a/src/meshTools/sets/topoSets/pointZoneSet.C
+++ b/src/meshTools/sets/topoSets/pointZoneSet.C
@@ -81,7 +81,8 @@ pointZoneSet::pointZoneSet
 
     if
     (
-        (r == IOobject::MUST_READ)
+        r == IOobject::MUST_READ
+     || r == IOobject::MUST_READ_IF_MODIFIED
      || (r == IOobject::READ_IF_PRESENT && zoneID != -1)
     )
     {
diff --git a/src/meshTools/sets/topoSets/topoSet.C b/src/meshTools/sets/topoSets/topoSet.C
index fb9e79164ba1174adec08528469c3080841917e8..b4530e5b6ecd82873335c43decf9eb8a9752ce14 100644
--- a/src/meshTools/sets/topoSets/topoSet.C
+++ b/src/meshTools/sets/topoSets/topoSet.C
@@ -309,6 +309,7 @@ Foam::topoSet::topoSet(const IOobject& obj, const word& wantedType)
     if
     (
         readOpt() == IOobject::MUST_READ
+     || readOpt() == IOobject::MUST_READ_IF_MODIFIED
      || (
             readOpt() == IOobject::READ_IF_PRESENT
          && headerOk()
@@ -356,6 +357,7 @@ Foam::topoSet::topoSet
     if
     (
         readOpt() == IOobject::MUST_READ
+     || readOpt() == IOobject::MUST_READ_IF_MODIFIED
      || (
             readOpt() == IOobject::READ_IF_PRESENT
          && headerOk()
diff --git a/src/parallel/decompose/decompositionMethods/Make/files b/src/parallel/decompose/decompositionMethods/Make/files
index 43bb9a25c1ddcd504bf938804ff526b7e512fb39..fccb8b7c8f602795a79b445e365285e21b2a8a91 100644
--- a/src/parallel/decompose/decompositionMethods/Make/files
+++ b/src/parallel/decompose/decompositionMethods/Make/files
@@ -3,5 +3,6 @@ geomDecomp/geomDecomp.C
 simpleGeomDecomp/simpleGeomDecomp.C
 hierarchGeomDecomp/hierarchGeomDecomp.C
 manualDecomp/manualDecomp.C
+multiLevelDecomp/multiLevelDecomp.C
 
 LIB = $(FOAM_LIBBIN)/libdecompositionMethods
diff --git a/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C b/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C
index 4e026f9e487a7b46fc034f959fe8129ea22921ca..e68e31c7b97911d2ebed46eef074a674a5c4b568 100644
--- a/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C
+++ b/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C
@@ -37,7 +37,6 @@ namespace Foam
 {
     defineTypeNameAndDebug(decompositionMethod, 0);
     defineRunTimeSelectionTable(decompositionMethod, dictionary);
-    defineRunTimeSelectionTable(decompositionMethod, dictionaryMesh);
 }
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
@@ -71,57 +70,45 @@ Foam::autoPtr<Foam::decompositionMethod> Foam::decompositionMethod::New
 }
 
 
-Foam::autoPtr<Foam::decompositionMethod> Foam::decompositionMethod::New
-(
-    const dictionary& decompositionDict,
-    const polyMesh& mesh
-)
-{
-    const word methodType(decompositionDict.lookup("method"));
-
-    Info<< "Selecting decompositionMethod " << methodType << endl;
-
-    dictionaryMeshConstructorTable::iterator cstrIter =
-        dictionaryMeshConstructorTablePtr_->find(methodType);
-
-    if (cstrIter == dictionaryMeshConstructorTablePtr_->end())
-    {
-        FatalErrorIn
-        (
-            "decompositionMethod::New"
-            "(const dictionary& decompositionDict, "
-            "const polyMesh& mesh)"
-        )   << "Unknown decompositionMethod "
-            << methodType << nl << nl
-            << "Valid decompositionMethods are : " << endl
-            << dictionaryMeshConstructorTablePtr_->sortedToc()
-            << exit(FatalError);
-    }
-
-    return autoPtr<decompositionMethod>(cstrIter()(decompositionDict, mesh));
-}
-
-
 Foam::labelList Foam::decompositionMethod::decompose
 (
+    const polyMesh& mesh,
     const pointField& points
 )
 {
-    scalarField weights(0);
+    scalarField weights(points.size(), 1.0);
 
-    return decompose(points, weights);
+    return decompose(mesh, points, weights);
 }
 
 
 Foam::labelList Foam::decompositionMethod::decompose
 (
+    const polyMesh& mesh,
     const labelList& fineToCoarse,
     const pointField& coarsePoints,
     const scalarField& coarseWeights
 )
 {
+    CompactListList<label> coarseCellCells;
+    calcCellCells
+    (
+        mesh,
+        fineToCoarse,
+        coarsePoints.size(),
+        coarseCellCells
+    );
+
     // Decompose based on agglomerated points
-    labelList coarseDistribution(decompose(coarsePoints, coarseWeights));
+    labelList coarseDistribution
+    (
+        decompose
+        (
+            coarseCellCells(),
+            coarsePoints,
+            coarseWeights
+        )
+    );
 
     // Rework back into decomposition for original mesh_
     labelList fineDistribution(fineToCoarse.size());
@@ -137,22 +124,20 @@ Foam::labelList Foam::decompositionMethod::decompose
 
 Foam::labelList Foam::decompositionMethod::decompose
 (
+    const polyMesh& mesh,
     const labelList& fineToCoarse,
     const pointField& coarsePoints
 )
 {
-    // Decompose based on agglomerated points
-    labelList coarseDistribution(decompose(coarsePoints));
-
-    // Rework back into decomposition for original mesh_
-    labelList fineDistribution(fineToCoarse.size());
-
-    forAll(fineDistribution, i)
-    {
-        fineDistribution[i] = coarseDistribution[fineToCoarse[i]];
-    }
-
-    return fineDistribution;
+    scalarField cWeights(coarsePoints.size(), 1.0);
+
+    return decompose
+    (
+        mesh,
+        fineToCoarse,
+        coarsePoints,
+        cWeights
+    );
 }
 
 
@@ -162,57 +147,12 @@ Foam::labelList Foam::decompositionMethod::decompose
     const pointField& cc
 )
 {
-    scalarField cWeights(0);
+    scalarField cWeights(cc.size(), 1.0);
 
     return decompose(globalCellCells, cc, cWeights);
 }
 
 
-void Foam::decompositionMethod::calcCellCells
-(
-    const polyMesh& mesh,
-    const labelList& fineToCoarse,
-    const label nCoarse,
-    labelListList& cellCells
-)
-{
-    if (fineToCoarse.size() != mesh.nCells())
-    {
-        FatalErrorIn
-        (
-            "decompositionMethod::calcCellCells"
-            "(const labelList&, labelListList&) const"
-        )   << "Only valid for mesh agglomeration." << exit(FatalError);
-    }
-
-    List<DynamicList<label> > dynCellCells(nCoarse);
-
-    forAll(mesh.faceNeighbour(), faceI)
-    {
-        label own = fineToCoarse[mesh.faceOwner()[faceI]];
-        label nei = fineToCoarse[mesh.faceNeighbour()[faceI]];
-
-        if (own != nei)
-        {
-            if (findIndex(dynCellCells[own], nei) == -1)
-            {
-                dynCellCells[own].append(nei);
-            }
-            if (findIndex(dynCellCells[nei], own) == -1)
-            {
-                dynCellCells[nei].append(own);
-            }
-        }
-    }
-
-    cellCells.setSize(dynCellCells.size());
-    forAll(dynCellCells, coarseI)
-    {
-        cellCells[coarseI].transfer(dynCellCells[coarseI]);
-    }
-}
-
-
 // Return the minimum face between two cells. Only relevant for
 // cells with multiple faces inbetween.
 Foam::label Foam::decompositionMethod::masterFace
@@ -250,208 +190,209 @@ Foam::label Foam::decompositionMethod::masterFace
 }
 
 
-void Foam::decompositionMethod::calcCSR
-(
-    const polyMesh& mesh,
-    List<int>& adjncy,
-    List<int>& xadj
-)
-{
-    const polyBoundaryMesh& pbm = mesh.boundaryMesh();
-
-    // Make Metis CSR (Compressed Storage Format) storage
-    //   adjncy      : contains neighbours (= edges in graph)
-    //   xadj(celli) : start of information in adjncy for celli
-
-
-    // Count unique faces between cells
-    // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-    labelList nFacesPerCell(mesh.nCells(), 0);
-
-    // Internal faces
-    for (label faceI = 0; faceI < mesh.nInternalFaces(); faceI++)
-    {
-        label own = mesh.faceOwner()[faceI];
-        label nei = mesh.faceNeighbour()[faceI];
-
-        if (faceI == masterFace(mesh, own, nei))
-        {
-            nFacesPerCell[own]++;
-            nFacesPerCell[nei]++;
-        }
-    }
-
-    // Coupled faces. Only cyclics done.
-    HashSet<edge, Hash<edge> > cellPair(mesh.nFaces()-mesh.nInternalFaces());
-
-    forAll(pbm, patchI)
-    {
-        if
-        (
-            isA<cyclicPolyPatch>(pbm[patchI])
-         && refCast<const cyclicPolyPatch>(pbm[patchI]).owner()
-        )
-        {
-            const cyclicPolyPatch& cycPatch = refCast<const cyclicPolyPatch>
-            (
-                pbm[patchI]
-            );
-
-            const unallocLabelList& faceCells = cycPatch.faceCells();
-            const unallocLabelList& nbrCells =
-                cycPatch.neighbPatch().faceCells();
-
-            forAll(faceCells, facei)
-            {
-                label own = faceCells[facei];
-                label nei = nbrCells[facei];
-
-                if (cellPair.insert(edge(own, nei)))
-                {
-                    nFacesPerCell[own]++;
-                    nFacesPerCell[nei]++;
-                }
-            }
-        }
-    }
-
+//void Foam::decompositionMethod::calcCSR
+//(
+//    const polyMesh& mesh,
+//    List<int>& adjncy,
+//    List<int>& xadj
+//)
+//{
+//    const polyBoundaryMesh& pbm = mesh.boundaryMesh();
+//
+//    // Make Metis CSR (Compressed Storage Format) storage
+//    //   adjncy      : contains neighbours (= edges in graph)
+//    //   xadj(celli) : start of information in adjncy for celli
+//
+//
+//    // Count unique faces between cells
+//    // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+//
+//    labelList nFacesPerCell(mesh.nCells(), 0);
+//
+//    // Internal faces
+//    for (label faceI = 0; faceI < mesh.nInternalFaces(); faceI++)
+//    {
+//        label own = mesh.faceOwner()[faceI];
+//        label nei = mesh.faceNeighbour()[faceI];
+//
+//        if (faceI == masterFace(mesh, own, nei))
+//        {
+//            nFacesPerCell[own]++;
+//            nFacesPerCell[nei]++;
+//        }
+//    }
+//
+//    // Coupled faces. Only cyclics done.
+//    HashSet<edge, Hash<edge> > cellPair(mesh.nFaces()-mesh.nInternalFaces());
+//
+//    forAll(pbm, patchI)
+//    {
+//        if
+//        (
+//            isA<cyclicPolyPatch>(pbm[patchI])
+//         && refCast<const cyclicPolyPatch>(pbm[patchI]).owner()
+//        )
+//        {
+//            const cyclicPolyPatch& cycPatch = refCast<const cyclicPolyPatch>
+//            (
+//                pbm[patchI]
+//            );
+//
+//            const unallocLabelList& faceCells = cycPatch.faceCells();
+//            const unallocLabelList& nbrCells =
+//                cycPatch.neighbPatch().faceCells();
+//
+//            forAll(faceCells, facei)
+//            {
+//                label own = faceCells[facei];
+//                label nei = nbrCells[facei];
+//
+//                if (cellPair.insert(edge(own, nei)))
+//                {
+//                    nFacesPerCell[own]++;
+//                    nFacesPerCell[nei]++;
+//                }
+//            }
+//        }
+//    }
+//
+//
+//    // Size tables
+//    // ~~~~~~~~~~~
+//
+//    // Sum nFacesPerCell
+//    xadj.setSize(mesh.nCells()+1);
+//
+//    label nConnections = 0;
+//
+//    for (label cellI = 0; cellI < mesh.nCells(); cellI++)
+//    {
+//        xadj[cellI] = nConnections;
+//        nConnections += nFacesPerCell[cellI];
+//    }
+//    xadj[mesh.nCells()] = nConnections;
+//    adjncy.setSize(nConnections);
+//
+//
+//
+//    // Fill tables
+//    // ~~~~~~~~~~~
+//
+//    nFacesPerCell = 0;
+//
+//    // Internal faces
+//    for (label faceI = 0; faceI < mesh.nInternalFaces(); faceI++)
+//    {
+//        label own = mesh.faceOwner()[faceI];
+//        label nei = mesh.faceNeighbour()[faceI];
+//
+//        if (faceI == masterFace(mesh, own, nei))
+//        {
+//            adjncy[xadj[own] + nFacesPerCell[own]++] = nei;
+//            adjncy[xadj[nei] + nFacesPerCell[nei]++] = own;
+//        }
+//    }
+//
+//    // Coupled faces. Only cyclics done.
+//    cellPair.clear();
+//    forAll(pbm, patchI)
+//    {
+//        if
+//        (
+//            isA<cyclicPolyPatch>(pbm[patchI])
+//         && refCast<const cyclicPolyPatch>(pbm[patchI]).owner()
+//        )
+//        {
+//            const cyclicPolyPatch& cycPatch = refCast<const cyclicPolyPatch>
+//            (
+//                pbm[patchI]
+//            );
+//
+//            const unallocLabelList& faceCells = cycPatch.faceCells();
+//            const unallocLabelList& nbrCells =
+//                cycPatch.neighbPatch().faceCells();
+//
+//            forAll(faceCells, facei)
+//            {
+//                label own = faceCells[facei];
+//                label nei = nbrCells[facei];
+//
+//                if (cellPair.insert(edge(own, nei)))
+//                {
+//                    adjncy[xadj[own] + nFacesPerCell[own]++] = nei;
+//                    adjncy[xadj[nei] + nFacesPerCell[nei]++] = own;
+//                }
+//            }
+//        }
+//    }
+//}
+//
+//
+//// From cell-cell connections to Metis format (like CompactListList)
+//void Foam::decompositionMethod::calcCSR
+//(
+//    const labelListList& cellCells,
+//    List<int>& adjncy,
+//    List<int>& xadj
+//)
+//{
+//    labelHashSet nbrCells;
+//
+//    // Count number of internal faces
+//    label nConnections = 0;
+//
+//    forAll(cellCells, coarseI)
+//    {
+//        nbrCells.clear();
+//
+//        const labelList& cCells = cellCells[coarseI];
+//
+//        forAll(cCells, i)
+//        {
+//            if (nbrCells.insert(cCells[i]))
+//            {
+//                nConnections++;
+//            }
+//        }
+//    }
+//
+//    // Create the adjncy array as twice the size of the total number of
+//    // internal faces
+//    adjncy.setSize(nConnections);
+//
+//    xadj.setSize(cellCells.size()+1);
+//
+//
+//    // Fill in xadj
+//    // ~~~~~~~~~~~~
+//    label freeAdj = 0;
+//
+//    forAll(cellCells, coarseI)
+//    {
+//        xadj[coarseI] = freeAdj;
+//
+//        nbrCells.clear();
+//
+//        const labelList& cCells = cellCells[coarseI];
+//
+//        forAll(cCells, i)
+//        {
+//            if (nbrCells.insert(cCells[i]))
+//            {
+//                adjncy[freeAdj++] = cCells[i];
+//            }
+//        }
+//    }
+//    xadj[cellCells.size()] = freeAdj;
+//}
 
-    // Size tables
-    // ~~~~~~~~~~~
 
-    // Sum nFacesPerCell
-    xadj.setSize(mesh.nCells()+1);
-
-    label nConnections = 0;
-
-    for (label cellI = 0; cellI < mesh.nCells(); cellI++)
-    {
-        xadj[cellI] = nConnections;
-        nConnections += nFacesPerCell[cellI];
-    }
-    xadj[mesh.nCells()] = nConnections;
-    adjncy.setSize(nConnections);
-
-
-
-    // Fill tables
-    // ~~~~~~~~~~~
-
-    nFacesPerCell = 0;
-
-    // Internal faces
-    for (label faceI = 0; faceI < mesh.nInternalFaces(); faceI++)
-    {
-        label own = mesh.faceOwner()[faceI];
-        label nei = mesh.faceNeighbour()[faceI];
-
-        if (faceI == masterFace(mesh, own, nei))
-        {
-            adjncy[xadj[own] + nFacesPerCell[own]++] = nei;
-            adjncy[xadj[nei] + nFacesPerCell[nei]++] = own;
-        }
-    }
-
-    // Coupled faces. Only cyclics done.
-    cellPair.clear();
-    forAll(pbm, patchI)
-    {
-        if
-        (
-            isA<cyclicPolyPatch>(pbm[patchI])
-         && refCast<const cyclicPolyPatch>(pbm[patchI]).owner()
-        )
-        {
-            const cyclicPolyPatch& cycPatch = refCast<const cyclicPolyPatch>
-            (
-                pbm[patchI]
-            );
-
-            const unallocLabelList& faceCells = cycPatch.faceCells();
-            const unallocLabelList& nbrCells =
-                cycPatch.neighbPatch().faceCells();
-
-            forAll(faceCells, facei)
-            {
-                label own = faceCells[facei];
-                label nei = nbrCells[facei];
-
-                if (cellPair.insert(edge(own, nei)))
-                {
-                    adjncy[xadj[own] + nFacesPerCell[own]++] = nei;
-                    adjncy[xadj[nei] + nFacesPerCell[nei]++] = own;
-                }
-            }
-        }
-    }
-}
-
-
-// From cell-cell connections to Metis format (like CompactListList)
-void Foam::decompositionMethod::calcCSR
-(
-    const labelListList& cellCells,
-    List<int>& adjncy,
-    List<int>& xadj
-)
-{
-    labelHashSet nbrCells;
-
-    // Count number of internal faces
-    label nConnections = 0;
-
-    forAll(cellCells, coarseI)
-    {
-        nbrCells.clear();
-
-        const labelList& cCells = cellCells[coarseI];
-
-        forAll(cCells, i)
-        {
-            if (nbrCells.insert(cCells[i]))
-            {
-                nConnections++;
-            }
-        }
-    }
-
-    // Create the adjncy array as twice the size of the total number of
-    // internal faces
-    adjncy.setSize(nConnections);
-
-    xadj.setSize(cellCells.size()+1);
-
-
-    // Fill in xadj
-    // ~~~~~~~~~~~~
-    label freeAdj = 0;
-
-    forAll(cellCells, coarseI)
-    {
-        xadj[coarseI] = freeAdj;
-
-        nbrCells.clear();
-
-        const labelList& cCells = cellCells[coarseI];
-
-        forAll(cCells, i)
-        {
-            if (nbrCells.insert(cCells[i]))
-            {
-                adjncy[freeAdj++] = cCells[i];
-            }
-        }
-    }
-    xadj[cellCells.size()] = freeAdj;
-}
-
-
-void Foam::decompositionMethod::calcDistributedCSR
+void Foam::decompositionMethod::calcCellCells
 (
     const polyMesh& mesh,
-    List<int>& adjncy,
-    List<int>& xadj
+    const labelList& agglom,
+    const label nCoarse,
+    CompactListList<label>& cellCells
 )
 {
     // Create global cell numbers
@@ -459,14 +400,6 @@ void Foam::decompositionMethod::calcDistributedCSR
 
     globalIndex globalCells(mesh.nCells());
 
-
-    //
-    // Make Metis Distributed CSR (Compressed Storage Format) storage
-    //   adjncy      : contains cellCells (= edges in graph)
-    //   xadj(celli) : start of information in adjncy for celli
-    //
-
-
     const labelList& faceOwner = mesh.faceOwner();
     const labelList& faceNeighbour = mesh.faceNeighbour();
     const polyBoundaryMesh& patches = mesh.boundaryMesh();
@@ -475,7 +408,7 @@ void Foam::decompositionMethod::calcDistributedCSR
     // Get renumbered owner on other side of coupled faces
     // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-    List<int> globalNeighbour(mesh.nFaces()-mesh.nInternalFaces());
+    labelList globalNeighbour(mesh.nFaces()-mesh.nInternalFaces());
 
     forAll(patches, patchI)
     {
@@ -504,18 +437,15 @@ void Foam::decompositionMethod::calcDistributedCSR
     // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
     // Number of faces per cell
-    List<int> nFacesPerCell(mesh.nCells(), 0);
+    labelList nFacesPerCell(mesh.nCells(), 0);
 
     for (label faceI = 0; faceI < mesh.nInternalFaces(); faceI++)
     {
-        label own = faceOwner[faceI];
-        label nei = faceNeighbour[faceI];
+        label own = agglom[faceOwner[faceI]];
+        label nei = agglom[faceNeighbour[faceI]];
 
-        if (faceI == masterFace(mesh, own, nei))
-        {
-            nFacesPerCell[own]++;
-            nFacesPerCell[nei]++;
-        }
+        nFacesPerCell[own]++;
+        nFacesPerCell[nei]++;
     }
 
     // Handle coupled faces
@@ -532,7 +462,7 @@ void Foam::decompositionMethod::calcDistributedCSR
 
             forAll(pp, i)
             {
-                label own =  faceOwner[faceI];
+                label own = agglom[faceOwner[faceI]];
                 label globalNei = globalNeighbour[bFaceI];
                 if (cellPair.insert(edge(own, globalNei)))
                 {
@@ -545,43 +475,24 @@ void Foam::decompositionMethod::calcDistributedCSR
     }
 
 
-    // Fill in xadj
-    // ~~~~~~~~~~~~
+    // Fill in offset and data
+    // ~~~~~~~~~~~~~~~~~~~~~~~
 
-    xadj.setSize(mesh.nCells()+1);
-
-    int freeAdj = 0;
-
-    for (label cellI = 0; cellI < mesh.nCells(); cellI++)
-    {
-        xadj[cellI] = freeAdj;
-
-        freeAdj += nFacesPerCell[cellI];
-    }
-    xadj[mesh.nCells()] = freeAdj;
-
-
-
-    // Fill in adjncy
-    // ~~~~~~~~~~~~~~
-
-    adjncy.setSize(freeAdj);
+    cellCells.setSize(nFacesPerCell);
 
     nFacesPerCell = 0;
 
+    labelList& m = cellCells.m();
+    const labelList& offsets = cellCells.offsets();
+
     // For internal faces is just offsetted owner and neighbour
     for (label faceI = 0; faceI < mesh.nInternalFaces(); faceI++)
     {
-        label own = faceOwner[faceI];
-        label nei = faceNeighbour[faceI];
+        label own = agglom[faceOwner[faceI]];
+        label nei = agglom[faceNeighbour[faceI]];
 
-        if (faceI == masterFace(mesh, own, nei))
-        {
-            adjncy[xadj[own] + nFacesPerCell[own]++] =
-                globalCells.toGlobal(nei);
-            adjncy[xadj[nei] + nFacesPerCell[nei]++] =
-                globalCells.toGlobal(own);
-        }
+        m[offsets[own] + nFacesPerCell[own]++] = globalCells.toGlobal(nei);
+        m[offsets[nei] + nFacesPerCell[nei]++] = globalCells.toGlobal(own);
     }
 
     // For boundary faces is offsetted coupled neighbour
@@ -597,17 +508,41 @@ void Foam::decompositionMethod::calcDistributedCSR
 
             forAll(pp, i)
             {
-                label own = faceOwner[faceI];
+                label own = agglom[faceOwner[faceI]];
                 label globalNei = globalNeighbour[bFaceI];
                 if (cellPair.insert(edge(own, globalNei)))
                 {
-                    adjncy[xadj[own] + nFacesPerCell[own]++] = globalNei;
+                    m[offsets[own] + nFacesPerCell[own]++] = globalNei;
                 }
                 faceI++;
                 bFaceI++;
             }
         }
     }
+
+
+    // Check for duplicates connections between cells as a postprocessing step
+    // (since quite rare)
+    label startIndex = 0;
+    label newIndex = 0;
+    labelHashSet nbrCells;
+    forAll(cellCells, cellI)
+    {
+        nbrCells.clear();
+
+        label& endIndex = cellCells.offsets()[cellI+1];
+
+        for (label i = startIndex; i < endIndex; i++)
+        {
+            if (nbrCells.insert(cellCells.m()[i]))
+            {
+                cellCells.m()[newIndex++] = cellCells.m()[i];
+            }
+        }
+
+        startIndex = endIndex;
+        endIndex = newIndex;
+    }
 }
 
 
diff --git a/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.H b/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.H
index dabca144c88c1b6679882d528cb7407ce5da5bce..e57951a186e6f014b4db41ef90c6011409f7ee5d 100644
--- a/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.H
+++ b/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.H
@@ -37,6 +37,7 @@ SourceFiles
 
 #include "polyMesh.H"
 #include "pointField.H"
+#include "CompactListList.H"
 
 namespace Foam
 {
@@ -56,44 +57,19 @@ protected:
         label nProcessors_;
 
 
-        //- Helper: determine (non-parallel) cellCells from mesh agglomeration.
+        //- Helper: determine (global) cellCells from mesh agglomeration.
         static void calcCellCells
         (
             const polyMesh& mesh,
             const labelList& agglom,
             const label nCoarse,
-            labelListList& cellCells
+            CompactListList<label>& cellCells
         );
 
         //- Calculate the minimum face between two neighbouring cells
         //  (usually there is only one)
         static label masterFace(const polyMesh&, const label, const label);
 
-        // From mesh to compact row storage format
-        // (like CompactListList)
-        static void calcCSR
-        (
-            const polyMesh& mesh,
-            List<int>& adjncy,
-            List<int>& xadj
-        );
-
-        // From cell-cell connections to compact row storage format
-        // (like CompactListList)
-        static void calcCSR
-        (
-            const labelListList& cellCells,
-            List<int>& adjncy,
-            List<int>& xadj
-        );
-
-        static void calcDistributedCSR
-        (
-            const polyMesh& mesh,
-            List<int>& adjncy,
-            List<int>& xadj
-        );
-
 private:
 
     // Private Member Functions
@@ -122,18 +98,6 @@ public:
             (decompositionDict)
         );
 
-        declareRunTimeSelectionTable
-        (
-            autoPtr,
-            decompositionMethod,
-            dictionaryMesh,
-            (
-                const dictionary& decompositionDict,
-                const polyMesh& mesh
-            ),
-            (decompositionDict, mesh)
-        );
-
 
     // Selectors
 
@@ -143,13 +107,6 @@ public:
             const dictionary& decompositionDict
         );
 
-        //- Return a reference to the selected decomposition method
-        static autoPtr<decompositionMethod> New
-        (
-            const dictionary& decompositionDict,
-            const polyMesh& mesh
-        );
-
 
     // Constructors
 
@@ -171,63 +128,105 @@ public:
 
     // Member Functions
 
+        label nDomains() const
+        {
+            return nProcessors_;
+        }
+
         //- Is method parallel aware (i.e. does it synchronize domains across
         //  proc boundaries)
         virtual bool parallelAware() const = 0;
 
-        //- Return for every coordinate the wanted processor number. Use the
-        //  mesh connectivity (if needed)
-        virtual labelList decompose
-        (
-            const pointField& points,
-            const scalarField& pointWeights
-        ) = 0;
-
-        //- Like decompose but with uniform weights on the points
-        virtual labelList decompose(const pointField&);
-
-
-        //- Return for every coordinate the wanted processor number. Gets
-        //  passed agglomeration map (from fine to coarse cells) and coarse cell
-        //  location. Can be overridden by decomposers that provide this
-        //  functionality natively. Coarse cells are local to the processor
-        //  (if in parallel). If you want to have coarse cells spanning
-        //  processors use the globalCellCells instead.
-        virtual labelList decompose
-        (
-            const labelList& cellToRegion,
-            const pointField& regionPoints,
-            const scalarField& regionWeights
-        );
-
-        //- Like decompose but with uniform weights on the regions
-        virtual labelList decompose
-        (
-            const labelList& cellToRegion,
-            const pointField& regionPoints
-        );
 
+        // No topology (implemented by geometric decomposers)
 
-        //- Return for every coordinate the wanted processor number. Explicitly
-        //  provided connectivity - does not use mesh_.
-        //  The connectivity is equal to mesh.cellCells() except for
-        //  - in parallel the cell numbers are global cell numbers (starting
-        //    from 0 at processor0 and then incrementing all through the
-        //    processors)
-        //  - the connections are across coupled patches
-        virtual labelList decompose
-        (
-            const labelListList& globalCellCells,
-            const pointField& cc,
-            const scalarField& cWeights
-        ) = 0;
+            //- Return for every coordinate the wanted processor number.
+            virtual labelList decompose
+            (
+                const pointField& points,
+                const scalarField& pointWeights
+            )
+            {
+                notImplemented
+                (
+                    "decompositionMethod:decompose(const pointField&"
+                    ", const scalarField&)"
+                );
+                return labelList(0);
+            }
+
+            //- Like decompose but with uniform weights on the points
+            virtual labelList decompose(const pointField&)
+            {
+                notImplemented
+                (
+                    "decompositionMethod:decompose(const pointField&)"
+                );
+                return labelList(0);
+            }
+
+
+        // Topology provided by mesh
+
+            //- Return for every coordinate the wanted processor number. Use the
+            //  mesh connectivity (if needed)
+            virtual labelList decompose
+            (
+                const polyMesh& mesh,
+                const pointField& points,
+                const scalarField& pointWeights
+            ) = 0;
+
+            //- Like decompose but with uniform weights on the points
+            virtual labelList decompose(const polyMesh&, const pointField&);
+
+
+            //- Return for every coordinate the wanted processor number. Gets
+            //  passed agglomeration map (from fine to coarse cells) and coarse
+            //  cell
+            //  location. Can be overridden by decomposers that provide this
+            //  functionality natively. Coarse cells are local to the processor
+            //  (if in parallel). If you want to have coarse cells spanning
+            //  processors use the globalCellCells instead.
+            virtual labelList decompose
+            (
+                const polyMesh& mesh,
+                const labelList& cellToRegion,
+                const pointField& regionPoints,
+                const scalarField& regionWeights
+            );
+
+            //- Like decompose but with uniform weights on the regions
+            virtual labelList decompose
+            (
+                const polyMesh& mesh,
+                const labelList& cellToRegion,
+                const pointField& regionPoints
+            );
+
+
+        // Topology provided explicitly addressing
+
+            //- Return for every coordinate the wanted processor number.
+            //  The connectivity is equal to mesh.cellCells() except for
+            //  - in parallel the cell numbers are global cell numbers
+            //    (starting
+            //    from 0 at processor0 and then incrementing all through the
+            //    processors)
+            //  - the connections are across coupled patches
+            virtual labelList decompose
+            (
+                const labelListList& globalCellCells,
+                const pointField& cc,
+                const scalarField& cWeights
+            ) = 0;
 
-        //- Like decompose but with uniform weights on the cells
-        virtual labelList decompose
-        (
-            const labelListList& globalCellCells,
-            const pointField& cc
-        );
+            //- Like decompose but with uniform weights on the cells
+            virtual labelList decompose
+            (
+                const labelListList& globalCellCells,
+                const pointField& cc
+            );
 
 };
 
diff --git a/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.H b/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.H
index 14dfc5a1c126b4aa08bdcb2720440b7f42d59ed1..f10b5f7c6e6e1e0e9f53d397987d54bba9844a88 100644
--- a/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.H
+++ b/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.H
@@ -71,6 +71,17 @@ public:
             const dictionary& decompositionDict,
             const word& derivedType
         );
+
+        //- Return for every coordinate the wanted processor number.
+        virtual labelList decompose
+        (
+            const pointField& points,
+            const scalarField& pointWeights
+        ) = 0;
+
+        //- Like decompose but with uniform weights on the points
+        virtual labelList decompose(const pointField&) = 0;
+
 };
 
 
diff --git a/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C b/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C
index 98f808160808942eee21db696fe018f2ff4cdcd4..3761d11b7fc286023d277b48dff45a038264cf71 100644
--- a/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C
+++ b/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C
@@ -40,13 +40,6 @@ namespace Foam
         hierarchGeomDecomp,
         dictionary
     );
-
-    addToRunTimeSelectionTable
-    (
-        decompositionMethod,
-        hierarchGeomDecomp,
-        dictionaryMesh
-    );
 }
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@@ -685,35 +678,6 @@ void Foam::hierarchGeomDecomp::sortComponent
 }
 
 
-// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
-
-Foam::hierarchGeomDecomp::hierarchGeomDecomp
-(
-    const dictionary& decompositionDict
-)
-:
-    geomDecomp(decompositionDict, typeName),
-    decompOrder_()
-{
-    setDecompOrder();
-}
-
-
-Foam::hierarchGeomDecomp::hierarchGeomDecomp
-(
-    const dictionary& decompositionDict,
-    const polyMesh&
-)
-:
-    geomDecomp(decompositionDict, hierarchGeomDecomp::typeName),
-    decompOrder_()
-{
-    setDecompOrder();
-}
-
-
-// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
-
 Foam::labelList Foam::hierarchGeomDecomp::decompose
 (
     const pointField& points
@@ -797,4 +761,20 @@ Foam::labelList Foam::hierarchGeomDecomp::decompose
 }
 
 
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::hierarchGeomDecomp::hierarchGeomDecomp
+(
+    const dictionary& decompositionDict
+)
+:
+    geomDecomp(decompositionDict, typeName),
+    decompOrder_()
+{
+    setDecompOrder();
+}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
 // ************************************************************************* //
diff --git a/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H b/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H
index 62eef72ae3242457acc9d4cff76a2d8d2dbd8250..b82b9890da76c037bc0400f8f42222343f4445d1 100644
--- a/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H
+++ b/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H
@@ -154,7 +154,6 @@ class hierarchGeomDecomp
             labelList& finalDecomp          // overall decomposition
         );
 
-
         //- Disallow default bitwise copy construct and assignment
         void operator=(const hierarchGeomDecomp&);
         hierarchGeomDecomp(const hierarchGeomDecomp&);
@@ -171,13 +170,6 @@ public:
         //- Construct given the decomposition dictionary
         hierarchGeomDecomp(const dictionary& decompositionDict);
 
-        //- Construct given the decomposition dictionary and mesh
-        hierarchGeomDecomp
-        (
-            const dictionary& decompositionDict,
-            const polyMesh& mesh
-        );
-
 
     //- Destructor
     virtual ~hierarchGeomDecomp()
@@ -192,8 +184,7 @@ public:
             return true;
         }
 
-        //- Return for every coordinate the wanted processor number. Use the
-        //  mesh connectivity (if needed)
+        //- Return for every coordinate the wanted processor number.
         virtual labelList decompose
         (
             const pointField&,
@@ -204,6 +195,26 @@ public:
         //  so kept separate for now.
         virtual labelList decompose(const pointField&);
 
+
+        //- Return for every coordinate the wanted processor number. Use the
+        //  mesh connectivity (if needed)
+        virtual labelList decompose
+        (
+            const polyMesh& mesh,
+            const pointField& cc,
+            const scalarField& cWeights
+        )
+        {
+            return decompose(cc, cWeights);
+        }
+
+        //- Without weights. Code for weighted decomposition is a bit complex
+        //  so kept separate for now.
+        virtual labelList decompose(const polyMesh& mesh, const pointField& cc)
+        {
+            return decompose(cc);
+        }
+
         //- Return for every coordinate the wanted processor number. Explicitly
         //  provided connectivity - does not use mesh_.
         //  The connectivity is equal to mesh.cellCells() except for
diff --git a/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.C b/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.C
index 4c51c2a5914b5ab5922dcc00bc7f946e0d195a1d..b0a1377e444b8738b2d62ae5c1752fd09653a973 100644
--- a/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.C
+++ b/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.C
@@ -43,34 +43,14 @@ namespace Foam
         manualDecomp,
         dictionary
     );
-
-    addToRunTimeSelectionTable
-    (
-        decompositionMethod,
-        manualDecomp,
-        dictionaryMesh
-    );
 }
 
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
 Foam::manualDecomp::manualDecomp(const dictionary& decompositionDict)
-:
-    decompositionMethod(decompositionDict)
-{
-    notImplemented("manualDecomp(const dictionary&)");
-}
-
-
-Foam::manualDecomp::manualDecomp
-(
-    const dictionary& decompositionDict,
-    const polyMesh& mesh
-)
 :
     decompositionMethod(decompositionDict),
-    meshPtr_(&mesh),
     decompDataFile_
     (
         decompositionDict.subDict(word(decompositionDict.lookup("method"))
@@ -83,12 +63,11 @@ Foam::manualDecomp::manualDecomp
 
 Foam::labelList Foam::manualDecomp::decompose
 (
+    const polyMesh& mesh,
     const pointField& points,
     const scalarField& pointWeights
 )
 {
-    const polyMesh& mesh = *meshPtr_;
-
     labelIOList finalDecomp
     (
         IOobject
diff --git a/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.H b/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.H
index e3da10ccacf815d369e221a4f3da764a7d436c9e..9976b9c08d06e49f0993a33b30c92e6c95c0e674 100644
--- a/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.H
+++ b/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.H
@@ -50,8 +50,6 @@ class manualDecomp
 {
     // Private data
 
-        const polyMesh* meshPtr_;
-
         fileName decompDataFile_;
 
 
@@ -73,14 +71,6 @@ public:
         //- Construct given the decomposition dictionary
         manualDecomp(const dictionary& decompositionDict);
 
-        //- Construct given the decomposition dictionary and mesh
-        manualDecomp
-        (
-            const dictionary& decompositionDict,
-            const polyMesh& mesh
-        );
-
-
     //- Destructor
     virtual ~manualDecomp()
     {}
@@ -99,8 +89,9 @@ public:
         //  mesh connectivity (if needed)
         virtual labelList decompose
         (
-            const pointField& points,
-            const scalarField& pointWeights
+            const polyMesh& mesh,
+            const pointField& cc,
+            const scalarField& cWeights
         );
 
         //- Return for every coordinate the wanted processor number. Explicitly
@@ -117,8 +108,14 @@ public:
             const scalarField& cWeights
         )
         {
-            return decompose(cc, cWeights);
+            notImplemented
+            (
+                "decompose(const labelListList&, const pointField&"
+                ", const scalarField)"
+            );
+            return labelList(0);
         }
+
 };
 
 
diff --git a/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.C b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.C
new file mode 100644
index 0000000000000000000000000000000000000000..5822d6a6710e63a652843acda29334db6dafe5b0
--- /dev/null
+++ b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.C
@@ -0,0 +1,415 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "multiLevelDecomp.H"
+#include "addToRunTimeSelectionTable.H"
+#include "IFstream.H"
+#include "globalIndex.H"
+#include "mapDistribute.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTypeNameAndDebug(multiLevelDecomp, 0);
+
+    addToRunTimeSelectionTable
+    (
+        decompositionMethod,
+        multiLevelDecomp,
+        dictionary
+    );
+}
+
+
+// * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
+
+// Given a subset of cells determine the new global indices. The problem
+// is in the cells from neighbouring processors which need to be renumbered.
+void Foam::multiLevelDecomp::subsetGlobalCellCells
+(
+    const label nDomains,
+    const label domainI,
+    const labelList& dist,
+
+    const labelListList& cellCells,
+    const labelList& set,
+    labelListList& subCellCells,
+    labelList& cutConnections
+) const
+{
+    // Determine new index for cells by inverting subset
+    labelList oldToNew(invert(cellCells.size(), set));
+
+    globalIndex globalCells(cellCells.size());
+
+    // Subset locally the elements for which I have data
+    subCellCells = UIndirectList<labelList>(cellCells, set);
+
+    // Get new indices for neighbouring processors
+    List<Map<label> > compactMap;
+    mapDistribute map(globalCells, subCellCells, compactMap);
+    map.distribute(oldToNew);
+    labelList allDist(dist);
+    map.distribute(allDist);
+
+
+    // Now subCellCells contains indices into oldToNew which are the
+    // new locations of the neighbouring cells.
+
+    cutConnections.setSize(nDomains);
+    cutConnections = 0;
+
+    forAll(subCellCells, subCellI)
+    {
+        labelList& cCells = subCellCells[subCellI];
+
+        // Keep the connections to valid mapped cells
+        label newI = 0;
+        forAll(cCells, i)
+        {
+            label subCellI = oldToNew[cCells[i]];
+            if (subCellI == -1)
+            {
+                cutConnections[allDist[cCells[i]]]++;
+            }
+            else
+            {
+                cCells[newI++] = subCellI;
+            }
+        }
+        cCells.setSize(newI);
+    }
+}
+
+
+void Foam::multiLevelDecomp::decompose
+(
+    const labelListList& pointPoints,
+    const pointField& points,
+    const scalarField& pointWeights,
+    const labelList& pointMap,      // map back to original points
+    const label levelI,
+
+    labelField& finalDecomp
+)
+{
+    labelList dist
+    (
+        methods_[levelI].decompose
+        (
+            pointPoints,
+            points,
+            pointWeights
+        )
+    );
+
+    forAll(pointMap, i)
+    {
+        label orig = pointMap[i];
+        finalDecomp[orig] += dist[i];
+    }
+
+    if (levelI != methods_.size()-1)
+    {
+        // Recurse
+
+        // Determine points per domain
+        label n = methods_[levelI].nDomains();
+        labelListList domainToPoints(invertOneToMany(n, dist));
+
+        // 'Make space' for new levels of decomposition
+        finalDecomp *= methods_[levelI+1].nDomains();
+
+        // Extract processor+local index from point-point addressing
+        if (debug && Pstream::master())
+        {
+            Pout<< "Decomposition at level " << levelI << " :" << endl;
+        }
+
+        for (label domainI = 0; domainI < n; domainI++)
+        {
+            // Extract elements for current domain
+            const labelList domainPoints(findIndices(dist, domainI));
+
+            // Subset point-wise data.
+            pointField subPoints(points, domainPoints);
+            scalarField subWeights(pointWeights, domainPoints);
+            labelList subPointMap(UIndirectList<label>(pointMap, domainPoints));
+            // Subset point-point addressing (adapt global numbering)
+            labelListList subPointPoints;
+            labelList nOutsideConnections;
+            subsetGlobalCellCells
+            (
+                n,
+                domainI,
+                dist,
+
+                pointPoints,
+                domainPoints,
+
+                subPointPoints,
+                nOutsideConnections
+            );
+
+            label nPoints = returnReduce(domainPoints.size(), plusOp<label>());
+            Pstream::listCombineGather(nOutsideConnections, plusEqOp<label>());
+            Pstream::listCombineScatter(nOutsideConnections);
+            label nPatches = 0;
+            label nFaces = 0;
+            forAll(nOutsideConnections, i)
+            {
+                if (nOutsideConnections[i] > 0)
+                {
+                    nPatches++;
+                    nFaces += nOutsideConnections[i];
+                }
+            }
+
+            string oldPrefix;
+            if (debug && Pstream::master())
+            {
+                Pout<< "    Domain " << domainI << nl
+                    << "        Number of cells = " << nPoints << nl
+                    << "        Number of inter-domain patches = " << nPatches
+                    << nl
+                    << "        Number of inter-domain faces = " << nFaces << nl
+                    << endl;
+                oldPrefix = Pout.prefix();
+                Pout.prefix() = "  " + oldPrefix;
+            }
+
+            decompose
+            (
+                subPointPoints,
+                subPoints,
+                subWeights,
+                subPointMap,
+                levelI+1,
+
+                finalDecomp
+            );
+            if (debug && Pstream::master())
+            {
+                Pout.prefix() = oldPrefix;
+            }
+        }
+
+
+        if (debug)
+        {
+            // Do straight decompose of two levels
+            label nNext = methods_[levelI+1].nDomains();
+            label nTotal = n*nNext;
+
+            // Retrieve original level0 dictionary and modify number of domains
+            dictionary::const_iterator iter =
+                decompositionDict_.subDict(typeName + "Coeffs").begin();
+            dictionary myDict = iter().dict();
+            myDict.set("numberOfSubdomains", nTotal);
+
+            if (debug && Pstream::master())
+            {
+                Pout<< "Reference decomposition with " << myDict << " :"
+                    << endl;
+            }
+
+            autoPtr<decompositionMethod> method0 = decompositionMethod::New
+            (
+                myDict
+            );
+            labelList dist
+            (
+                method0().decompose
+                (
+                    pointPoints,
+                    points,
+                    pointWeights
+                )
+            );
+
+            for (label blockI = 0; blockI < n; blockI++)
+            {
+                // Count the number inbetween blocks of nNext size
+
+                label nPoints = 0;
+                labelList nOutsideConnections(n, 0);
+                forAll(pointPoints, pointI)
+                {
+                    if ((dist[pointI] / nNext) == blockI)
+                    {
+                        nPoints++;
+
+                        const labelList& pPoints = pointPoints[pointI];
+
+                        forAll(pPoints, i)
+                        {
+                            label distBlockI = dist[pPoints[i]] / nNext;
+                            if (distBlockI != blockI)
+                            {
+                                nOutsideConnections[distBlockI]++;
+                            }
+                        }
+                    }
+                }
+
+                reduce(nPoints, plusOp<label>());
+                Pstream::listCombineGather
+                (
+                    nOutsideConnections,
+                    plusEqOp<label>()
+                );
+                Pstream::listCombineScatter(nOutsideConnections);
+                label nPatches = 0;
+                label nFaces = 0;
+                forAll(nOutsideConnections, i)
+                {
+                    if (nOutsideConnections[i] > 0)
+                    {
+                        nPatches++;
+                        nFaces += nOutsideConnections[i];
+                    }
+                }
+
+                if (debug && Pstream::master())
+                {
+                    Pout<< "    Domain " << blockI << nl
+                        << "        Number of cells = " << nPoints << nl
+                        << "        Number of inter-domain patches = "
+                        << nPatches << nl
+                        << "        Number of inter-domain faces = " << nFaces
+                        << nl << endl;
+                }
+            }
+        }
+    }
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::multiLevelDecomp::multiLevelDecomp(const dictionary& decompositionDict)
+:
+    decompositionMethod(decompositionDict)
+{
+    const dictionary& myDict = decompositionDict_.subDict(typeName + "Coeffs");
+
+    methods_.setSize(myDict.size());
+    label i = 0;
+    forAllConstIter(dictionary, myDict, iter)
+    {
+        methods_.set(i++, decompositionMethod::New(iter().dict()));
+    }
+
+    label n = 1;
+    Info<< "decompositionMethod " << type() << " :" << endl;
+    forAll(methods_, i)
+    {
+        Info<< "    level " << i << " decomposing with " << methods_[i].type()
+            << " into " << methods_[i].nDomains() << " subdomains." << endl;
+
+        n *= methods_[i].nDomains();
+    }
+
+    if (n != nDomains())
+    {
+        FatalErrorIn("multiLevelDecomp::multiLevelDecomp(const dictionary&)")
+            << "Top level decomposition specifies " << nDomains()
+            << " domains which is not equal to the product of"
+            << " all sub domains " << n
+            << exit(FatalError);
+    }
+}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+bool Foam::multiLevelDecomp::parallelAware() const
+{
+    forAll(methods_, i)
+    {
+        if (!methods_[i].parallelAware())
+        {
+            return false;
+        }
+    }
+    return true;
+}
+
+
+Foam::labelList Foam::multiLevelDecomp::decompose
+(
+    const polyMesh& mesh,
+    const pointField& cc,
+    const scalarField& cWeights
+)
+{
+    CompactListList<label> cellCells;
+    calcCellCells(mesh, identity(cc.size()), cc.size(), cellCells);
+
+    labelField finalDecomp(cc.size(), 0);
+    labelList cellMap(identity(cc.size()));
+
+    decompose
+    (
+        cellCells(),
+        cc,
+        cWeights,
+        cellMap,      // map back to original cells
+        0,
+
+        finalDecomp
+    );
+
+    return finalDecomp;
+}
+
+
+Foam::labelList Foam::multiLevelDecomp::decompose
+(
+    const labelListList& globalPointPoints,
+    const pointField& points,
+    const scalarField& pointWeights
+)
+{
+    labelField finalDecomp(points.size(), 0);
+    labelList pointMap(identity(points.size()));
+
+    decompose
+    (
+        globalPointPoints,
+        points,
+        pointWeights,
+        pointMap,       // map back to original points
+        0,
+
+        finalDecomp
+    );
+
+    return finalDecomp;
+}
+
+
+// ************************************************************************* //
diff --git a/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.H b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.H
new file mode 100644
index 0000000000000000000000000000000000000000..7a41da06fb822626f041bdb3f5460f34c62ab83d
--- /dev/null
+++ b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.H
@@ -0,0 +1,140 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::multiLevelDecomp
+
+Description
+    Decomposition given using consecutive application of decomposers.
+
+SourceFiles
+    multiLevelDecomp.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef multiLevelDecomp_H
+#define multiLevelDecomp_H
+
+#include "decompositionMethod.H"
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                           Class multiLevelDecomp Declaration
+\*---------------------------------------------------------------------------*/
+
+class multiLevelDecomp
+:
+    public decompositionMethod
+{
+    // Private data
+
+        PtrList<decompositionMethod> methods_;
+
+
+    // Private Member Functions
+
+        //- Given connectivity across processors work out connectivity
+        //  for a (consistent) subset
+        void subsetGlobalCellCells
+        (
+            const label nDomains,
+            const label domainI,
+            const labelList& dist,
+
+            const labelListList& cellCells,
+            const labelList& set,
+            labelListList& subCellCells,
+            labelList& cutConnections
+        ) const;
+
+        //- Decompose level methodI without addressing
+        void decompose
+        (
+            const labelListList& pointPoints,
+            const pointField& points,
+            const scalarField& pointWeights,
+            const labelList& pointMap,  // map back to original points
+            const label levelI,
+
+            labelField& finalDecomp
+        );
+
+        //- Disallow default bitwise copy construct and assignment
+        void operator=(const multiLevelDecomp&);
+        multiLevelDecomp(const multiLevelDecomp&);
+
+
+public:
+
+    //- Runtime type information
+    TypeName("multiLevel");
+
+
+    // Constructors
+
+        //- Construct given the decomposition dictionary
+        multiLevelDecomp(const dictionary& decompositionDict);
+
+
+    //- Destructor
+    virtual ~multiLevelDecomp()
+    {}
+
+
+    // Member Functions
+
+        //- Is method parallel aware (i.e. does it synchronize domains across
+        //  proc boundaries)
+        virtual bool parallelAware() const;
+
+        //- Return for every coordinate the wanted processor number. Use the
+        //  mesh connectivity (if needed)
+        virtual labelList decompose
+        (
+            const polyMesh& mesh,
+            const pointField& points,
+            const scalarField& pointWeights
+        );
+
+        //- Return for every coordinate the wanted processor number. Explicitly
+        //  provided connectivity - does not use mesh_.
+        virtual labelList decompose
+        (
+            const labelListList& globalCellCells,
+            const pointField& cc,
+            const scalarField& cWeights
+        );
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C b/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C
index 6447c4fa74fe300f324992a9a7137f6a8352402b..f4963e2e5adf68c4b45f1f32b218cd9173909bba 100644
--- a/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C
+++ b/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C
@@ -39,13 +39,6 @@ namespace Foam
         simpleGeomDecomp,
         dictionary
     );
-
-    addToRunTimeSelectionTable
-    (
-        decompositionMethod,
-        simpleGeomDecomp,
-        dictionaryMesh
-    );
 }
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@@ -133,26 +126,6 @@ void Foam::simpleGeomDecomp::assignToProcessorGroup
 }
 
 
-// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
-
-Foam::simpleGeomDecomp::simpleGeomDecomp(const dictionary& decompositionDict)
-:
-    geomDecomp(decompositionDict, typeName)
-{}
-
-
-Foam::simpleGeomDecomp::simpleGeomDecomp
-(
-    const dictionary& decompositionDict,
-    const polyMesh&
-)
-:
-    geomDecomp(decompositionDict, typeName)
-{}
-
-
-// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
-
 Foam::labelList Foam::simpleGeomDecomp::decompose(const pointField& points)
 {
     // construct a list for the final result
@@ -315,4 +288,16 @@ Foam::labelList Foam::simpleGeomDecomp::decompose
 
     return finalDecomp;
 }
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::simpleGeomDecomp::simpleGeomDecomp(const dictionary& decompositionDict)
+:
+    geomDecomp(decompositionDict, typeName)
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
 // ************************************************************************* //
diff --git a/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H b/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H
index 714916f62d6893814f48d4239d736d04620d7064..7336b3b85d1140c853b74b1cd309ed310c7bf6bd 100644
--- a/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H
+++ b/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H
@@ -76,13 +76,6 @@ public:
         //- Construct given the decomposition dictionary
         simpleGeomDecomp(const dictionary& decompositionDict);
 
-        //- Construct given the decomposition dictionary and mesh
-        simpleGeomDecomp
-        (
-            const dictionary& decompositionDict,
-            const polyMesh& mesh
-        );
-
 
     //- Destructor
     virtual ~simpleGeomDecomp()
@@ -98,16 +91,24 @@ public:
             return false;
         }
 
-        virtual labelList decompose
-        (
-            const pointField& points
-        );
+        virtual labelList decompose(const pointField&);
+
+        virtual labelList decompose(const pointField&, const scalarField&);
+
+        virtual labelList decompose(const polyMesh&, const pointField& points)
+        {
+            return decompose(points);
+        }
 
         virtual labelList decompose
         (
+            const polyMesh&,
             const pointField& points,
             const scalarField& pointWeights
-        );
+        )
+        {
+            return decompose(points, pointWeights);
+        }
 
         //- Explicitly provided connectivity
         virtual labelList decompose
diff --git a/src/parallel/decompose/metisDecomp/metisDecomp.C b/src/parallel/decompose/metisDecomp/metisDecomp.C
index b198c88415eaffd677580334c962483e2e62dcf6..0c24fc6ac794db62d655c7890a98876a766e98cd 100644
--- a/src/parallel/decompose/metisDecomp/metisDecomp.C
+++ b/src/parallel/decompose/metisDecomp/metisDecomp.C
@@ -41,12 +41,7 @@ namespace Foam
 {
     defineTypeNameAndDebug(metisDecomp, 0);
 
-    addToRunTimeSelectionTable
-    (
-        decompositionMethod,
-        metisDecomp,
-        dictionaryMesh
-    );
+    addToRunTimeSelectionTable(decompositionMethod, metisDecomp, dictionary);
 }
 
 
@@ -170,31 +165,31 @@ Foam::label Foam::metisDecomp::decompose
             }
         }
 
-        if (metisCoeffs.readIfPresent("cellWeightsFile", weightsFile))
-        {
-            Info<< "metisDecomp : Using cell-based weights." << endl;
-
-            IOList<int> cellIOWeights
-            (
-                IOobject
-                (
-                    weightsFile,
-                    mesh_.time().timeName(),
-                    mesh_,
-                    IOobject::MUST_READ,
-                    IOobject::AUTO_WRITE
-                )
-            );
-            cellWeights.transfer(cellIOWeights);
-
-            if (cellWeights.size() != xadj.size()-1)
-            {
-                FatalErrorIn("metisDecomp::decompose(const pointField&)")
-                    << "Number of cell weights " << cellWeights.size()
-                    << " does not equal number of cells " << xadj.size()-1
-                    << exit(FatalError);
-            }
-        }
+        //if (metisCoeffs.readIfPresent("cellWeightsFile", weightsFile))
+        //{
+        //    Info<< "metisDecomp : Using cell-based weights." << endl;
+        //
+        //    IOList<int> cellIOWeights
+        //    (
+        //        IOobject
+        //        (
+        //            weightsFile,
+        //            mesh_.time().timeName(),
+        //            mesh_,
+        //            IOobject::MUST_READ,
+        //            IOobject::AUTO_WRITE
+        //        )
+        //    );
+        //    cellWeights.transfer(cellIOWeights);
+        //
+        //    if (cellWeights.size() != xadj.size()-1)
+        //    {
+        //        FatalErrorIn("metisDecomp::decompose(const pointField&)")
+        //            << "Number of cell weights " << cellWeights.size()
+        //            << " does not equal number of cells " << xadj.size()-1
+        //            << exit(FatalError);
+        //    }
+        //}
     }
 
     int nProcs = nProcessors_;
@@ -304,14 +299,9 @@ Foam::label Foam::metisDecomp::decompose
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
-Foam::metisDecomp::metisDecomp
-(
-    const dictionary& decompositionDict,
-    const polyMesh& mesh
-)
+Foam::metisDecomp::metisDecomp(const dictionary& decompositionDict)
 :
-    decompositionMethod(decompositionDict),
-    mesh_(mesh)
+    decompositionMethod(decompositionDict)
 {}
 
 
@@ -319,11 +309,12 @@ Foam::metisDecomp::metisDecomp
 
 Foam::labelList Foam::metisDecomp::decompose
 (
+    const polyMesh& mesh,
     const pointField& points,
     const scalarField& pointWeights
 )
 {
-    if (points.size() != mesh_.nCells())
+    if (points.size() != mesh.nCells())
     {
         FatalErrorIn
         (
@@ -332,71 +323,53 @@ Foam::labelList Foam::metisDecomp::decompose
             << endl
             << "and supply one coordinate (cellCentre) for every cell." << endl
             << "The number of coordinates " << points.size() << endl
-            << "The number of cells in the mesh " << mesh_.nCells()
+            << "The number of cells in the mesh " << mesh.nCells()
             << exit(FatalError);
     }
 
-    List<int> adjncy;
-    List<int> xadj;
-    calcCSR(mesh_, adjncy, xadj);
+    CompactListList<label> cellCells;
+    calcCellCells(mesh, identity(mesh.nCells()), mesh.nCells(), cellCells);
 
     // Decompose using default weights
-    List<int> finalDecomp;
-    decompose(adjncy, xadj, pointWeights, finalDecomp);
+    labelList decomp;
+    decompose(cellCells.m(), cellCells.offsets(), pointWeights, decomp);
 
-    // Copy back to labelList
-    labelList decomp(finalDecomp.size());
-    forAll(decomp, i)
-    {
-        decomp[i] = finalDecomp[i];
-    }
     return decomp;
 }
 
 
 Foam::labelList Foam::metisDecomp::decompose
 (
+    const polyMesh& mesh,
     const labelList& agglom,
     const pointField& agglomPoints,
     const scalarField& agglomWeights
 )
 {
-    if (agglom.size() != mesh_.nCells())
+    if (agglom.size() != mesh.nCells())
     {
         FatalErrorIn
         (
             "metisDecomp::decompose"
             "(const labelList&, const pointField&, const scalarField&)"
         )   << "Size of cell-to-coarse map " << agglom.size()
-            << " differs from number of cells in mesh " << mesh_.nCells()
+            << " differs from number of cells in mesh " << mesh.nCells()
             << exit(FatalError);
     }
 
     // Make Metis CSR (Compressed Storage Format) storage
     //   adjncy      : contains neighbours (= edges in graph)
     //   xadj(celli) : start of information in adjncy for celli
-    List<int> adjncy;
-    List<int> xadj;
-    {
-        // Get cellCells on coarse mesh.
-        labelListList cellCells;
-        calcCellCells
-        (
-            mesh_,
-            agglom,
-            agglomPoints.size(),
-            cellCells
-        );
 
-        calcCSR(cellCells, adjncy, xadj);
-    }
+    CompactListList<label> cellCells;
+    calcCellCells(mesh, agglom, agglomPoints.size(), cellCells);
 
     // Decompose using default weights
-    List<int> finalDecomp;
-    decompose(adjncy, xadj, agglomWeights, finalDecomp);
+    labelList finalDecomp;
+    decompose(cellCells.m(), cellCells.offsets(), agglomWeights, finalDecomp);
 
 
-    // Rework back into decomposition for original mesh_
+    // Rework back into decomposition for original mesh
     labelList fineDistribution(agglom.size());
 
     forAll(fineDistribution, i)
@@ -404,7 +377,7 @@ Foam::labelList Foam::metisDecomp::decompose
         fineDistribution[i] = finalDecomp[agglom[i]];
     }
 
-    return fineDistribution;
+    return finalDecomp;
 }
 
 
@@ -431,21 +404,12 @@ Foam::labelList Foam::metisDecomp::decompose
     //   adjncy      : contains neighbours (= edges in graph)
     //   xadj(celli) : start of information in adjncy for celli
 
-    List<int> adjncy;
-    List<int> xadj;
-    calcCSR(globalCellCells, adjncy, xadj);
-
+    CompactListList<label> cellCells(globalCellCells);
 
     // Decompose using default weights
-    List<int> finalDecomp;
-    decompose(adjncy, xadj, cellWeights, finalDecomp);
+    labelList decomp;
+    decompose(cellCells.m(), cellCells.offsets(), cellWeights, decomp);
 
-    // Copy back to labelList
-    labelList decomp(finalDecomp.size());
-    forAll(decomp, i)
-    {
-        decomp[i] = finalDecomp[i];
-    }
     return decomp;
 }
 
diff --git a/src/parallel/decompose/metisDecomp/metisDecomp.H b/src/parallel/decompose/metisDecomp/metisDecomp.H
index f18ba8bd0f0731634a22eae4bab72e027517e8ec..d6c7e26e41139ca28a37f649e0df80086b68d8ad 100644
--- a/src/parallel/decompose/metisDecomp/metisDecomp.H
+++ b/src/parallel/decompose/metisDecomp/metisDecomp.H
@@ -48,10 +48,6 @@ class metisDecomp
 :
     public decompositionMethod
 {
-    // Private data
-
-        const polyMesh& mesh_;
-
 
     // Private Member Functions
 
@@ -76,12 +72,8 @@ public:
 
     // Constructors
 
-        //- Construct given the decomposition dictionary and mesh
-        metisDecomp
-        (
-            const dictionary& decompositionDict,
-            const polyMesh& mesh
-        );
+        //- Construct given the decomposition dictionary
+        metisDecomp(const dictionary&);
 
 
     //- Destructor
@@ -104,6 +96,7 @@ public:
         //  value. The overall sum of weights might otherwise overflow.
         virtual labelList decompose
         (
+            const polyMesh& mesh,
             const pointField& points,
             const scalarField& pointWeights
         );
@@ -115,6 +108,7 @@ public:
         //  See note on weights above.
         virtual labelList decompose
         (
+            const polyMesh& mesh,
             const labelList& agglom,
             const pointField& regionPoints,
             const scalarField& regionWeights
diff --git a/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C b/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C
index cded55bcd7a48f1d88c84e6e8e93d0cbf7d5fe4a..ce6882f0f5fe41d38c0af45f5702469cedcd469e 100644
--- a/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C
+++ b/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C
@@ -22,8 +22,8 @@ License
     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
 
     From scotch forum:
- 	
-    By: Francois PELLEGRINI RE: Graph mapping 'strategy' string [ reply ]  
+
+    By: Francois PELLEGRINI RE: Graph mapping 'strategy' string [ reply ]
     2008-08-22 10:09 Strategy handling in Scotch is a bit tricky. In order
     not to be confused, you must have a clear view of how they are built.
     Here are some rules:
@@ -141,12 +141,7 @@ namespace Foam
 {
     defineTypeNameAndDebug(ptscotchDecomp, 0);
 
-    addToRunTimeSelectionTable
-    (
-        decompositionMethod,
-        ptscotchDecomp,
-        dictionaryMesh
-    );
+    addToRunTimeSelectionTable(decompositionMethod, ptscotchDecomp, dictionary);
 }
 
 // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
@@ -178,45 +173,39 @@ Foam::label Foam::ptscotchDecomp::decompose
 //        const dictionary& scotchCoeffs =
 //            decompositionDict_.subDict("ptscotchCoeffs");
 //
-//        if (scotchCoeffs.found("writeGraph"))
+//        if (scotchCoeffs.lookupOrDefault("writeGraph", false))
 //        {
-//            Switch writeGraph(scotchCoeffs.lookup("writeGraph"));
+//            OFstream str(mesh_.time().path() / mesh_.name() + ".grf");
 //
-//            if (writeGraph)
-//            {
-//                OFstream str(mesh_.time().path() / mesh_.name() + ".grf");
+//            Info<< "Dumping Scotch graph file to " << str.name() << endl
+//                << "Use this in combination with gpart." << endl;
 //
-//                Info<< "Dumping Scotch graph file to " << str.name() << endl
-//                    << "Use this in combination with gpart." << endl;
+//            label version = 0;
+//            str << version << nl;
+//            // Numer of vertices
+//            str << xadj.size()-1 << ' ' << adjncy.size() << nl;
+//            // Numbering starts from 0
+//            label baseval = 0;
+//            // Has weights?
+//            label hasEdgeWeights = 0;
+//            label hasVertexWeights = 0;
+//            label numericflag = 10*hasEdgeWeights+hasVertexWeights;
+//            str << baseval << ' ' << numericflag << nl;
+//            for (label cellI = 0; cellI < xadj.size()-1; cellI++)
+//            {
+//                label start = xadj[cellI];
+//                label end = xadj[cellI+1];
+//                str << end-start;
 //
-//                label version = 0;
-//                str << version << nl;
-//                // Numer of vertices
-//                str << xadj.size()-1 << ' ' << adjncy.size() << nl;
-//                // Numbering starts from 0
-//                label baseval = 0;
-//                // Has weights?
-//                label hasEdgeWeights = 0;
-//                label hasVertexWeights = 0;
-//                label numericflag = 10*hasEdgeWeights+hasVertexWeights;
-//                str << baseval << ' ' << numericflag << nl;
-//                for (label cellI = 0; cellI < xadj.size()-1; cellI++)
+//                for (label i = start; i < end; i++)
 //                {
-//                    label start = xadj[cellI];
-//                    label end = xadj[cellI+1];
-//                    str << end-start;
-//
-//                    for (label i = start; i < end; i++)
-//                    {
-//                        str << ' ' << adjncy[i];
-//                    }
-//                    str << nl;
+//                    str << ' ' << adjncy[i];
 //                }
+//                str << nl;
 //            }
 //        }
 //    }
 
-
     // Strategy
     // ~~~~~~~~
 
@@ -414,14 +403,9 @@ Foam::label Foam::ptscotchDecomp::decompose
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
-Foam::ptscotchDecomp::ptscotchDecomp
-(
-    const dictionary& decompositionDict,
-    const polyMesh& mesh
-)
+Foam::ptscotchDecomp::ptscotchDecomp(const dictionary& decompositionDict)
 :
-    decompositionMethod(decompositionDict),
-    mesh_(mesh)
+    decompositionMethod(decompositionDict)
 {}
 
 
@@ -429,11 +413,12 @@ Foam::ptscotchDecomp::ptscotchDecomp
 
 Foam::labelList Foam::ptscotchDecomp::decompose
 (
+    const polyMesh& mesh,
     const pointField& points,
     const scalarField& pointWeights
 )
 {
-    if (points.size() != mesh_.nCells())
+    if (points.size() != mesh.nCells())
     {
         FatalErrorIn
         (
@@ -443,7 +428,7 @@ Foam::labelList Foam::ptscotchDecomp::decompose
             << endl
             << "and supply one coordinate (cellCentre) for every cell." << endl
             << "The number of coordinates " << points.size() << endl
-            << "The number of cells in the mesh " << mesh_.nCells()
+            << "The number of cells in the mesh " << mesh.nCells()
             << exit(FatalError);
     }
 
@@ -457,20 +442,14 @@ Foam::labelList Foam::ptscotchDecomp::decompose
     // Make Metis CSR (Compressed Storage Format) storage
     //   adjncy      : contains neighbours (= edges in graph)
     //   xadj(celli) : start of information in adjncy for celli
-    // Connections
-    Field<int> adjncy;
-    // Offsets into adjncy
-    Field<int> xadj;
-    calcDistributedCSR
-    (
-        mesh_,
-        adjncy,
-        xadj
-    );
+
+
+    CompactListList<label> cellCells;
+    calcCellCells(mesh, identity(mesh.nCells()), mesh.nCells(), cellCells);
 
     // Decompose using default weights
     List<int> finalDecomp;
-    decompose(adjncy, xadj, pointWeights, finalDecomp);
+    decompose(cellCells.m(), cellCells.offsets(), pointWeights, finalDecomp);
 
     // Copy back to labelList
     labelList decomp(finalDecomp.size());
@@ -484,52 +463,40 @@ Foam::labelList Foam::ptscotchDecomp::decompose
 
 Foam::labelList Foam::ptscotchDecomp::decompose
 (
+    const polyMesh& mesh,
     const labelList& agglom,
     const pointField& agglomPoints,
     const scalarField& pointWeights
 )
 {
-    if (agglom.size() != mesh_.nCells())
+    if (agglom.size() != mesh.nCells())
     {
         FatalErrorIn
         (
             "ptscotchDecomp::decompose(const labelList&, const pointField&)"
         )   << "Size of cell-to-coarse map " << agglom.size()
-            << " differs from number of cells in mesh " << mesh_.nCells()
+            << " differs from number of cells in mesh " << mesh.nCells()
             << exit(FatalError);
     }
 
 //    // For running sequential ...
 //    if (Pstream::nProcs() <= 1)
 //    {
-//        return scotchDecomp(decompositionDict_, mesh_)
+//        return scotchDecomp(decompositionDict_, mesh)
 //            .decompose(agglom, agglomPoints, pointWeights);
 //    }
 
     // Make Metis CSR (Compressed Storage Format) storage
     //   adjncy      : contains neighbours (= edges in graph)
     //   xadj(celli) : start of information in adjncy for celli
-    List<int> adjncy;
-    List<int> xadj;
-    {
-        // Get cellCells on coarse mesh.
-        labelListList cellCells;
-        calcCellCells
-        (
-            mesh_,
-            agglom,
-            agglomPoints.size(),
-            cellCells
-        );
-
-        calcCSR(cellCells, adjncy, xadj);
-    }
+    CompactListList<label> cellCells;
+    calcCellCells(mesh, agglom, agglomPoints.size(), cellCells);
 
     // Decompose using weights
     List<int> finalDecomp;
-    decompose(adjncy, xadj, pointWeights, finalDecomp);
+    decompose(cellCells.m(), cellCells.offsets(), pointWeights, finalDecomp);
 
-    // Rework back into decomposition for original mesh_
+    // Rework back into decomposition for original mesh
     labelList fineDistribution(agglom.size());
 
     forAll(fineDistribution, i)
@@ -561,7 +528,7 @@ Foam::labelList Foam::ptscotchDecomp::decompose
 //    // For running sequential ...
 //    if (Pstream::nProcs() <= 1)
 //    {
-//        return scotchDecomp(decompositionDict_, mesh_)
+//        return scotchDecomp(decompositionDict_, mesh)
 //            .decompose(globalCellCells, cellCentres, cWeights);
 //    }
 
@@ -570,13 +537,11 @@ Foam::labelList Foam::ptscotchDecomp::decompose
     //   adjncy      : contains neighbours (= edges in graph)
     //   xadj(celli) : start of information in adjncy for celli
 
-    List<int> adjncy;
-    List<int> xadj;
-    calcCSR(globalCellCells, adjncy, xadj);
+    CompactListList<label> cellCells(globalCellCells);
 
     // Decompose using weights
     List<int> finalDecomp;
-    decompose(adjncy, xadj, cWeights, finalDecomp);
+    decompose(cellCells.m(), cellCells.offsets(), cWeights, finalDecomp);
 
     // Copy back to labelList
     labelList decomp(finalDecomp.size());
diff --git a/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.H b/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.H
index 45649a0b818d28ce46cca95c2a835aac4605fb78..d276137d4f4cde495aee356b9eff0734c946da2e 100644
--- a/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.H
+++ b/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.H
@@ -48,11 +48,6 @@ class ptscotchDecomp
 :
     public decompositionMethod
 {
-    // Private data
-
-        const polyMesh& mesh_;
-
-
     // Private Member Functions
 
         //- Check and print error message
@@ -80,11 +75,7 @@ public:
     // Constructors
 
         //- Construct given the decomposition dictionary and mesh
-        ptscotchDecomp
-        (
-            const dictionary& decompositionDict,
-            const polyMesh& mesh
-        );
+        ptscotchDecomp(const dictionary& decompositionDict);
 
 
     //- Destructor
@@ -104,6 +95,7 @@ public:
         //  mesh connectivity (if needed)
         virtual labelList decompose
         (
+            const polyMesh& mesh,
             const pointField& points,
             const scalarField& pointWeights
         );
@@ -114,6 +106,7 @@ public:
         //  functionality natively.
         virtual labelList decompose
         (
+            const polyMesh& mesh,
             const labelList& agglom,
             const pointField& regionPoints,
             const scalarField& regionWeights
diff --git a/src/parallel/decompose/scotchDecomp/scotchDecomp.C b/src/parallel/decompose/scotchDecomp/scotchDecomp.C
index 534044646f0271cc2d5f65086cf8c020d04044aa..02ef29254bee9cb1c5de19c2a929bee8c038f707 100644
--- a/src/parallel/decompose/scotchDecomp/scotchDecomp.C
+++ b/src/parallel/decompose/scotchDecomp/scotchDecomp.C
@@ -22,8 +22,8 @@ License
     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
 
     From scotch forum:
- 	
-    By: Francois PELLEGRINI RE: Graph mapping 'strategy' string [ reply ]  
+
+    By: Francois PELLEGRINI RE: Graph mapping 'strategy' string [ reply ]
     2008-08-22 10:09 Strategy handling in Scotch is a bit tricky. In order
     not to be confused, you must have a clear view of how they are built.
     Here are some rules:
@@ -145,7 +145,7 @@ namespace Foam
     (
         decompositionMethod,
         scotchDecomp,
-        dictionaryMesh
+        dictionary
     );
 }
 
@@ -165,6 +165,7 @@ void Foam::scotchDecomp::check(const int retVal, const char* str)
 // Call scotch with options from dictionary.
 Foam::label Foam::scotchDecomp::decompose
 (
+    const fileName& meshPath,
     const List<int>& adjncy,
     const List<int>& xadj,
     const scalarField& cWeights,
@@ -178,40 +179,35 @@ Foam::label Foam::scotchDecomp::decompose
         const dictionary& scotchCoeffs =
             decompositionDict_.subDict("scotchCoeffs");
 
-        if (scotchCoeffs.found("writeGraph"))
+        if (scotchCoeffs.lookupOrDefault("writeGraph", false))
         {
-            Switch writeGraph(scotchCoeffs.lookup("writeGraph"));
-
-            if (writeGraph)
+            OFstream str(meshPath + ".grf");
+
+            Info<< "Dumping Scotch graph file to " << str.name() << endl
+                << "Use this in combination with gpart." << endl;
+
+            label version = 0;
+            str << version << nl;
+            // Numer of vertices
+            str << xadj.size()-1 << ' ' << adjncy.size() << nl;
+            // Numbering starts from 0
+            label baseval = 0;
+            // Has weights?
+            label hasEdgeWeights = 0;
+            label hasVertexWeights = 0;
+            label numericflag = 10*hasEdgeWeights+hasVertexWeights;
+            str << baseval << ' ' << numericflag << nl;
+            for (label cellI = 0; cellI < xadj.size()-1; cellI++)
             {
-                OFstream str(mesh_.time().path() / mesh_.name() + ".grf");
-
-                Info<< "Dumping Scotch graph file to " << str.name() << endl
-                    << "Use this in combination with gpart." << endl;
-
-                label version = 0;
-                str << version << nl;
-                // Numer of vertices
-                str << xadj.size()-1 << ' ' << adjncy.size() << nl;
-                // Numbering starts from 0
-                label baseval = 0;
-                // Has weights?
-                label hasEdgeWeights = 0;
-                label hasVertexWeights = 0;
-                label numericflag = 10*hasEdgeWeights+hasVertexWeights;
-                str << baseval << ' ' << numericflag << nl;
-                for (label cellI = 0; cellI < xadj.size()-1; cellI++)
+                label start = xadj[cellI];
+                label end = xadj[cellI+1];
+                str << end-start;
+
+                for (label i = start; i < end; i++)
                 {
-                    label start = xadj[cellI];
-                    label end = xadj[cellI+1];
-                    str << end-start;
-
-                    for (label i = start; i < end; i++)
-                    {
-                        str << ' ' << adjncy[i];
-                    }
-                    str << nl;
+                    str << ' ' << adjncy[i];
                 }
+                str << nl;
             }
         }
     }
@@ -229,7 +225,6 @@ Foam::label Foam::scotchDecomp::decompose
         const dictionary& scotchCoeffs =
             decompositionDict_.subDict("scotchCoeffs");
 
-
         string strategy;
         if (scotchCoeffs.readIfPresent("strategy", strategy))
         {
@@ -408,14 +403,9 @@ Foam::label Foam::scotchDecomp::decompose
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
-Foam::scotchDecomp::scotchDecomp
-(
-    const dictionary& decompositionDict,
-    const polyMesh& mesh
-)
+Foam::scotchDecomp::scotchDecomp(const dictionary& decompositionDict)
 :
-    decompositionMethod(decompositionDict),
-    mesh_(mesh)
+    decompositionMethod(decompositionDict)
 {}
 
 
@@ -423,11 +413,12 @@ Foam::scotchDecomp::scotchDecomp
 
 Foam::labelList Foam::scotchDecomp::decompose
 (
+    const polyMesh& mesh,
     const pointField& points,
     const scalarField& pointWeights
 )
 {
-    if (points.size() != mesh_.nCells())
+    if (points.size() != mesh.nCells())
     {
         FatalErrorIn
         (
@@ -437,20 +428,24 @@ Foam::labelList Foam::scotchDecomp::decompose
             << endl
             << "and supply one coordinate (cellCentre) for every cell." << endl
             << "The number of coordinates " << points.size() << endl
-            << "The number of cells in the mesh " << mesh_.nCells()
+            << "The number of cells in the mesh " << mesh.nCells()
             << exit(FatalError);
     }
 
-    // Make Metis CSR (Compressed Storage Format) storage
-    //   adjncy      : contains neighbours (= edges in graph)
-    //   xadj(celli) : start of information in adjncy for celli
-    List<int> adjncy;
-    List<int> xadj;
-    calcCSR(mesh_, adjncy, xadj);
+
+    CompactListList<label> cellCells;
+    calcCellCells(mesh, identity(mesh.nCells()), mesh.nCells(), cellCells);
 
     // Decompose using default weights
     List<int> finalDecomp;
-    decompose(adjncy, xadj, pointWeights, finalDecomp);
+    decompose
+    (
+        mesh.time().path()/mesh.name(),
+        cellCells.m(),
+        cellCells.offsets(),
+        pointWeights,
+        finalDecomp
+    );
 
     // Copy back to labelList
     labelList decomp(finalDecomp.size());
@@ -464,43 +459,35 @@ Foam::labelList Foam::scotchDecomp::decompose
 
 Foam::labelList Foam::scotchDecomp::decompose
 (
+    const polyMesh& mesh,
     const labelList& agglom,
     const pointField& agglomPoints,
     const scalarField& pointWeights
 )
 {
-    if (agglom.size() != mesh_.nCells())
+    if (agglom.size() != mesh.nCells())
     {
         FatalErrorIn
         (
             "scotchDecomp::decompose(const labelList&, const pointField&)"
         )   << "Size of cell-to-coarse map " << agglom.size()
-            << " differs from number of cells in mesh " << mesh_.nCells()
+            << " differs from number of cells in mesh " << mesh.nCells()
             << exit(FatalError);
     }
 
-    // Make Metis CSR (Compressed Storage Format) storage
-    //   adjncy      : contains neighbours (= edges in graph)
-    //   xadj(celli) : start of information in adjncy for celli
-    List<int> adjncy;
-    List<int> xadj;
-    {
-        // Get cellCells on coarse mesh.
-        labelListList cellCells;
-        calcCellCells
-        (
-            mesh_,
-            agglom,
-            agglomPoints.size(),
-            cellCells
-        );
-
-        calcCSR(cellCells, adjncy, xadj);
-    }
+    CompactListList<label> cellCells;
+    calcCellCells(mesh, agglom, agglomPoints.size(), cellCells);
 
     // Decompose using weights
     List<int> finalDecomp;
-    decompose(adjncy, xadj, pointWeights, finalDecomp);
+    decompose
+    (
+        mesh.time().path()/mesh.name(),
+        cellCells.m(),
+        cellCells.offsets(),
+        pointWeights,
+        finalDecomp
+    );
 
     // Rework back into decomposition for original mesh_
     labelList fineDistribution(agglom.size());
@@ -537,13 +524,11 @@ Foam::labelList Foam::scotchDecomp::decompose
     //   adjncy      : contains neighbours (= edges in graph)
     //   xadj(celli) : start of information in adjncy for celli
 
-    List<int> adjncy;
-    List<int> xadj;
-    calcCSR(globalCellCells, adjncy, xadj);
+    CompactListList<label> cellCells(globalCellCells);
 
     // Decompose using weights
     List<int> finalDecomp;
-    decompose(adjncy, xadj, cWeights, finalDecomp);
+    decompose(".", cellCells.m(), cellCells.offsets(), cWeights, finalDecomp);
 
     // Copy back to labelList
     labelList decomp(finalDecomp.size());
diff --git a/src/parallel/decompose/scotchDecomp/scotchDecomp.H b/src/parallel/decompose/scotchDecomp/scotchDecomp.H
index 249b191f6c90de9d32dbd5f632dec4dd0655648d..2cd376074ccf857ab3aee98fbab9dbbfbf841f8f 100644
--- a/src/parallel/decompose/scotchDecomp/scotchDecomp.H
+++ b/src/parallel/decompose/scotchDecomp/scotchDecomp.H
@@ -48,11 +48,6 @@ class scotchDecomp
 :
     public decompositionMethod
 {
-    // Private data
-
-        const polyMesh& mesh_;
-
-
     // Private Member Functions
 
         //- Check and print error message
@@ -60,6 +55,7 @@ class scotchDecomp
 
         label decompose
         (
+            const fileName& meshPath,
             const List<int>& adjncy,
             const List<int>& xadj,
             const scalarField& cWeights,
@@ -80,11 +76,7 @@ public:
     // Constructors
 
         //- Construct given the decomposition dictionary and mesh
-        scotchDecomp
-        (
-            const dictionary& decompositionDict,
-            const polyMesh& mesh
-        );
+        scotchDecomp(const dictionary& decompositionDict);
 
 
     //- Destructor
@@ -107,6 +99,7 @@ public:
         //  might otherwise overflow.
         virtual labelList decompose
         (
+            const polyMesh& mesh,
             const pointField& points,
             const scalarField& pointWeights
         );
@@ -118,6 +111,7 @@ public:
         //  See note on weights above.
         virtual labelList decompose
         (
+            const polyMesh& mesh,
             const labelList& agglom,
             const pointField& regionPoints,
             const scalarField& regionWeights
diff --git a/src/parallel/reconstruct/reconstruct/reconstructLagrangian.H b/src/parallel/reconstruct/reconstruct/reconstructLagrangian.H
index 297cd76767d4387d9f1bbea39765cfc13b08af7b..56ad97ae4aa0e185ecd43e06752ae6fcf3921d39 100644
--- a/src/parallel/reconstruct/reconstruct/reconstructLagrangian.H
+++ b/src/parallel/reconstruct/reconstruct/reconstructLagrangian.H
@@ -38,6 +38,7 @@ SourceFiles
 #include "cloud.H"
 #include "polyMesh.H"
 #include "IOobjectList.H"
+#include "IOFieldField.H"
 #include "fvMesh.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@@ -67,6 +68,16 @@ tmp<IOField<Type> > reconstructLagrangianField
 );
 
 
+template<class Type>
+tmp<IOFieldField<Field<Type>, Type> > reconstructLagrangianFieldField
+(
+    const word& cloudName,
+    const polyMesh& mesh,
+    const PtrList<fvMesh>& meshes,
+    const word& fieldName
+);
+
+
 template<class Type>
 void reconstructLagrangianFields
 (
@@ -77,6 +88,16 @@ void reconstructLagrangianFields
 );
 
 
+template<class Type>
+void reconstructLagrangianFieldFields
+(
+    const word& cloudName,
+    const polyMesh& mesh,
+    const PtrList<fvMesh>& meshes,
+    const IOobjectList& objects
+);
+
+
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
 } // End namespace Foam
diff --git a/src/parallel/reconstruct/reconstruct/reconstructLagrangianFields.C b/src/parallel/reconstruct/reconstruct/reconstructLagrangianFields.C
index 70ac1ee3edd6fb85e44d9ce44c6cd67224cef447..753a21ccbe9a320e137c750d875e59f71a6606db 100644
--- a/src/parallel/reconstruct/reconstruct/reconstructLagrangianFields.C
+++ b/src/parallel/reconstruct/reconstruct/reconstructLagrangianFields.C
@@ -24,6 +24,7 @@ License
 \*---------------------------------------------------------------------------*/
 
 #include "IOField.H"
+#include "IOFieldField.H"
 #include "Time.H"
 
 // * * * * * * * * * * * * * * * Global Functions  * * * * * * * * * * * * * //
@@ -87,6 +88,67 @@ Foam::tmp<Foam::IOField<Type> > Foam::reconstructLagrangianField
 }
 
 
+template<class Type>
+Foam::tmp<Foam::IOFieldField<Foam::Field<Type>, Type> >
+Foam::reconstructLagrangianFieldField
+(
+    const word& cloudName,
+    const polyMesh& mesh,
+    const PtrList<fvMesh>& meshes,
+    const word& fieldName
+)
+{
+    // Construct empty field on mesh
+    tmp<IOFieldField<Field<Type>, Type > > tfield
+    (
+        new IOFieldField<Field<Type>, Type>
+        (
+            IOobject
+            (
+                fieldName,
+                mesh.time().timeName(),
+                cloud::prefix/cloudName,
+                mesh,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            Field<Field<Type> >(0)
+        )
+    );
+    Field<Field<Type> >& field = tfield();
+
+    forAll(meshes, i)
+    {
+        // Check object on local mesh
+        IOobject localIOobject
+        (
+            fieldName,
+            meshes[i].time().timeName(),
+            cloud::prefix/cloudName,
+            meshes[i],
+            IOobject::MUST_READ,
+            IOobject::NO_WRITE
+        );
+
+        if (localIOobject.headerOk())
+        {
+            IOFieldField<Field<Type>, Type> fieldi(localIOobject);
+
+            label offset = field.size();
+            field.setSize(offset + fieldi.size());
+
+            forAll(fieldi, j)
+            {
+                field[offset + j] = fieldi[j];
+            }
+        }
+    }
+
+    return tfield;
+}
+
+
+
 template<class Type>
 void Foam::reconstructLagrangianFields
 (
@@ -122,4 +184,67 @@ void Foam::reconstructLagrangianFields
 }
 
 
+template<class Type>
+void Foam::reconstructLagrangianFieldFields
+(
+    const word& cloudName,
+    const polyMesh& mesh,
+    const PtrList<fvMesh>& meshes,
+    const IOobjectList& objects
+)
+{
+    {
+        const word fieldClassName(IOFieldField<Field<Type>, Type>::typeName);
+
+        IOobjectList fields = objects.lookupClass(fieldClassName);
+
+        if (fields.size())
+        {
+            Info<< "    Reconstructing lagrangian "
+                << fieldClassName << "s\n" << endl;
+
+            forAllConstIter(IOobjectList, fields, fieldIter)
+            {
+                Info<< "        " << fieldIter()->name() << endl;
+                reconstructLagrangianFieldField<Type>
+                (
+                    cloudName,
+                    mesh,
+                    meshes,
+                    fieldIter()->name()
+                )().write();
+            }
+
+            Info<< endl;
+        }
+    }
+
+    {
+        const word fieldClassName(IOField<Field<Type> >::typeName);
+
+        IOobjectList fields = objects.lookupClass(fieldClassName);
+
+        if (fields.size())
+        {
+            Info<< "    Reconstructing lagrangian "
+                << fieldClassName << "s\n" << endl;
+
+            forAllConstIter(IOobjectList, fields, fieldIter)
+            {
+                Info<< "        " << fieldIter()->name() << endl;
+                reconstructLagrangianFieldField<Type>
+                (
+                    cloudName,
+                    mesh,
+                    meshes,
+                    fieldIter()->name()
+                )().write();
+            }
+
+            Info<< endl;
+        }
+    }
+}
+
+
 // ************************************************************************* //
diff --git a/src/postProcessing/functionObjects/field/fieldAverage/controlDict b/src/postProcessing/functionObjects/field/fieldAverage/controlDict
index 70187fad00c76f1e87465ed9677acaca6b3be2ba..fe04eaf8bd5423eb0378de652245409f00854241 100644
--- a/src/postProcessing/functionObjects/field/fieldAverage/controlDict
+++ b/src/postProcessing/functionObjects/field/fieldAverage/controlDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/src/postProcessing/functionObjects/field/fieldAverage/fieldAverage/fieldAverage.C b/src/postProcessing/functionObjects/field/fieldAverage/fieldAverage/fieldAverage.C
index a47a8b83cc0a7994551e0937fc1724e1ff31d909..f27a3f8f4903da5e80af134001adccb569d0e806 100644
--- a/src/postProcessing/functionObjects/field/fieldAverage/fieldAverage/fieldAverage.C
+++ b/src/postProcessing/functionObjects/field/fieldAverage/fieldAverage/fieldAverage.C
@@ -258,7 +258,7 @@ void Foam::fieldAverage::readAveragingProperties()
             obr_.time().timeName(),
             "uniform",
             obr_,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         );
diff --git a/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSource.C b/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSource.C
index 97cd9393bd68ceada6b39b409b2a347de3566597..51f08c461e0114947d017dd504c66161cac06d44 100644
--- a/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSource.C
+++ b/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSource.C
@@ -32,13 +32,10 @@ License
 defineTypeNameAndDebug(Foam::fieldValues::cellSource, 0);
 
 template<>
-const char* Foam::NamedEnum<Foam::fieldValues::cellSource::sourceType, 1>::
-names[] =
-{
-    "cellZone"
-};
+const char* Foam::NamedEnum<Foam::fieldValues::cellSource::sourceType, 2>::
+names[] = {"cellZone", "all"};
 
-const Foam::NamedEnum<Foam::fieldValues::cellSource::sourceType, 1>
+const Foam::NamedEnum<Foam::fieldValues::cellSource::sourceType, 2>
     Foam::fieldValues::cellSource::sourceTypeNames_;
 
 template<>
@@ -57,35 +54,43 @@ const Foam::NamedEnum<Foam::fieldValues::cellSource::operationType, 7>
 
 void Foam::fieldValues::cellSource::setCellZoneCells()
 {
-    label zoneId = mesh().cellZones().findZoneID(sourceName_);
-
-    if (zoneId < 0)
+    switch (source_)
     {
-        FatalErrorIn("cellSource::cellSource::setCellZoneCells()")
-            << "Unknown cell zone name: " << sourceName_
-            << ". Valid cell zones are: " << mesh().cellZones().names()
-            << nl << exit(FatalError);
-    }
-
-    const cellZone& cZone = mesh().cellZones()[zoneId];
+        case stCellZone:
+        {
+            label zoneId = mesh().cellZones().findZoneID(sourceName_);
+
+            if (zoneId < 0)
+            {
+                FatalErrorIn("cellSource::cellSource::setCellZoneCells()")
+                    << "Unknown cell zone name: " << sourceName_
+                    << ". Valid cell zones are: " << mesh().cellZones().names()
+                    << nl << exit(FatalError);
+            }
+
+            cellId_ = mesh().cellZones()[zoneId];
+            nCells_ = returnReduce(cellId_.size(), sumOp<label>());
+            break;
+        }
 
-    cellId_.setSize(cZone.size());
+        case stAll:
+        {
+            cellId_ = identity(mesh().nCells());
+            nCells_ = returnReduce(cellId_.size(), sumOp<label>());
+            break;
+        }
 
-    label count = 0;
-    forAll(cZone, i)
-    {
-        label cellI = cZone[i];
-        cellId_[count] = cellI;
-        count++;
+        default:
+        {
+            FatalErrorIn("cellSource::setCellZoneCells()")
+               << "Unknown source type. Valid source types are:"
+                << sourceTypeNames_ << nl << exit(FatalError);
+        }
     }
 
-    cellId_.setSize(count);
-    nCells_ = returnReduce(cellId_.size(), sumOp<label>());
-
     if (debug)
     {
-        Pout<< "Original cell zone size = " << cZone.size()
-            << ", new size = " << count << endl;
+        Pout<< "Selected source size = " << cellId_.size() << endl;
     }
 }
 
@@ -94,20 +99,7 @@ void Foam::fieldValues::cellSource::setCellZoneCells()
 
 void Foam::fieldValues::cellSource::initialise(const dictionary& dict)
 {
-    switch (source_)
-    {
-        case stCellZone:
-        {
-            setCellZoneCells();
-            break;
-        }
-        default:
-        {
-            FatalErrorIn("cellSource::initialise()")
-                << "Unknown source type. Valid source types are:"
-                << sourceTypeNames_ << nl << exit(FatalError);
-        }
-    }
+    setCellZoneCells();
 
     Info<< type() << " " << name_ << ":" << nl
         << "    total cells  = " << nCells_ << nl
diff --git a/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSource.H b/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSource.H
index c271a1c997a0e9958b930ecc9a149abbcdc5971d..c3a033f64420afdb874e9d35a0d2aee7eda29356 100644
--- a/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSource.H
+++ b/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSource.H
@@ -89,11 +89,12 @@ public:
         //- Source type enumeration
         enum sourceType
         {
-            stCellZone
+            stCellZone,
+            stAll
         };
 
         //- Source type names
-        static const NamedEnum<sourceType, 1> sourceTypeNames_;
+        static const NamedEnum<sourceType, 2> sourceTypeNames_;
 
 
         //- Operation type enumeration
diff --git a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C
index ea9696ff59c878ba278ef70c10ffbeaa629845c5..3fa910222724269e60f76c5d2a62569086e2f542 100644
--- a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C
+++ b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C
@@ -76,11 +76,9 @@ sixDoFRigidBodyDisplacementPointPatchVectorField
         rhoInf_ = readScalar(dict.lookup("rhoInf"));
     }
 
-    if (dict.found("g"))
+    if (dict.readIfPresent("g", g_))
     {
         lookupGravity_ = -2;
-
-        g_ = dict.lookup("g");
     }
 
     if (!dict.found("value"))
diff --git a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionConstraint/fixedAxis/fixedAxis.H b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionConstraint/fixedAxis/fixedAxis.H
index 6a17da99c928816c57220ea569b02452c144b590..c068bea3005ecd05a4724e3e164b43ce3f349d9d 100644
--- a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionConstraint/fixedAxis/fixedAxis.H
+++ b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionConstraint/fixedAxis/fixedAxis.H
@@ -25,8 +25,8 @@ Class
     Foam::sixDoFRigidBodyMotionConstraints::fixedAxis
 
 Description
-    sixDoFRigidBodyMotionConstraint.  Axis of body fixed global
-    space.
+    sixDoFRigidBodyMotionConstraint.  Body may only rotate around
+    an axis fixed in global space.
 
 SourceFiles
     fixedAxis.C
diff --git a/src/postProcessing/functionObjects/jobControl/abortCalculation/abortCalculation.C b/src/postProcessing/functionObjects/jobControl/abortCalculation/abortCalculation.C
index 9cd6a2af07aa5279c5e9980920f0bdfa014e1a2b..49ae674ef6f2d4012804e7a122665728ed9c4247 100644
--- a/src/postProcessing/functionObjects/jobControl/abortCalculation/abortCalculation.C
+++ b/src/postProcessing/functionObjects/jobControl/abortCalculation/abortCalculation.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2009-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 2009-2010 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,6 +28,7 @@ License
 #include "error.H"
 #include "Time.H"
 #include "OSspecific.H"
+#include "PstreamReduceOps.H"
 
 // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
 
@@ -52,8 +53,12 @@ const Foam::NamedEnum<Foam::abortCalculation::actionType, 3>
 
 void Foam::abortCalculation::removeFile() const
 {
-    if (isFile(abortFile_))
+    bool hasAbort = isFile(abortFile_);
+    reduce(hasAbort, orOp<bool>());
+
+    if (hasAbort && Pstream::master())
     {
+        // cleanup ABORT file (on master only)
         rm(abortFile_);
     }
 }
@@ -92,14 +97,9 @@ Foam::abortCalculation::~abortCalculation()
 
 void Foam::abortCalculation::read(const dictionary& dict)
 {
-    word actionName;
-
     if (dict.found("action"))
     {
-        action_ = actionTypeNames_.read
-        (
-            dict.lookup("action")
-        );
+        action_ = actionTypeNames_.read(dict.lookup("action"));
     }
     else
     {
@@ -115,27 +115,48 @@ void Foam::abortCalculation::read(const dictionary& dict)
 
 void Foam::abortCalculation::execute()
 {
-    if (isFile(abortFile_))
+    bool hasAbort = isFile(abortFile_);
+    reduce(hasAbort, orOp<bool>());
+
+    if (hasAbort)
     {
         switch (action_)
         {
             case noWriteNow :
-                obr_.time().stopAt(Time::saNoWriteNow);
-                Info<< "user requested abort - "
-                       "stop immediately without writing data" << endl;
+            {
+                if (obr_.time().stopAt(Time::saNoWriteNow))
+                {
+                    Info<< "USER REQUESTED ABORT (timeIndex="
+                        << obr_.time().timeIndex()
+                        << "): stop without writing data"
+                        << endl;
+                }
                 break;
+            }
 
             case writeNow :
-                obr_.time().stopAt(Time::saWriteNow);
-                Info<< "user requested abort - "
-                       "stop immediately with writing data" << endl;
+            {
+                if (obr_.time().stopAt(Time::saWriteNow))
+                {
+                    Info<< "USER REQUESTED ABORT (timeIndex="
+                        << obr_.time().timeIndex()
+                        << "): stop+write data"
+                        << endl;
+                }
                 break;
+            }
 
             case nextWrite :
-                obr_.time().stopAt(Time::saNextWrite);
-                Info<< "user requested abort - "
-                       "stop after next data write" << endl;
+            {
+                if (obr_.time().stopAt(Time::saNextWrite))
+                {
+                    Info<< "USER REQUESTED ABORT (timeIndex="
+                        << obr_.time().timeIndex()
+                        << "): stop after next data write"
+                        << endl;
+                }
                 break;
+            }
         }
     }
 }
@@ -149,7 +170,7 @@ void Foam::abortCalculation::end()
 
 void Foam::abortCalculation::write()
 {
-    execute();
+    // Do nothing - only valid on execute
 }
 
 
diff --git a/src/postProcessing/functionObjects/jobControl/residualControl/residualControl.C b/src/postProcessing/functionObjects/jobControl/residualControl/residualControl.C
index a7ad2233cfc947920f07d424a4682f0660fec689..b8205f86243407fb781910ab844e5e8d48d219aa 100644
--- a/src/postProcessing/functionObjects/jobControl/residualControl/residualControl.C
+++ b/src/postProcessing/functionObjects/jobControl/residualControl/residualControl.C
@@ -47,8 +47,12 @@ bool Foam::residualControl::checkCriteria(const bool verbose) const
 
         if (maxResiduals_.readIfPresent(variableName, maxResidual))
         {
+            // use the residual from the first solution
             const scalar eqnResidual =
-                lduMatrix::solverPerformance(iter().stream()).initialResidual();
+                List<lduMatrix::solverPerformance>
+                (
+                    iter().stream()
+                ).first().initialResidual();
 
             achieved = achieved && (eqnResidual < maxResidual);
 
diff --git a/src/sampling/include/buildPatch.H b/src/sampling/include/buildPatch.H
index 0d6338ebb0321d98b6a60c5cd44f470734dba8dd..e355d794905e9934b93e7b68230e075f2233d7b2 100644
--- a/src/sampling/include/buildPatch.H
+++ b/src/sampling/include/buildPatch.H
@@ -6,7 +6,7 @@ IOdictionary planeToPatchDict
         "planeToPatchDict",
         runTime.system(),
         runTime,
-        IOobject::MUST_READ,
+        IOobject::MUST_READ_IF_MODIFIED,
         IOobject::NO_WRITE
     )
 );
diff --git a/src/sampling/probes/probesDict b/src/sampling/probes/probesDict
index 83da4ce91a74c56f4e7243769c7a3506d070cf96..90c0fe96de22780a38981b35bded61e10de7dee2 100644
--- a/src/sampling/probes/probesDict
+++ b/src/sampling/probes/probesDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/src/sampling/sampledSurface/sampledPlane/sampledPlane.H b/src/sampling/sampledSurface/sampledPlane/sampledPlane.H
index b5dc66508e6c35689f326db88d175726cb9396bb..5142c63143965e4308ffb5cc557b8bc8b27e6689 100644
--- a/src/sampling/sampledSurface/sampledPlane/sampledPlane.H
+++ b/src/sampling/sampledSurface/sampledPlane/sampledPlane.H
@@ -27,6 +27,8 @@ Class
 Description
     A sampledSurface defined by a cuttingPlane. Always triangulated.
 
+    Note: does not actually cut until update() called.
+
 SourceFiles
     sampledPlane.C
 
diff --git a/src/surfMesh/MeshedSurface/MeshedSurface.C b/src/surfMesh/MeshedSurface/MeshedSurface.C
index 91094607b49bd6bc7d855881a72b013ae853c948..5cc6a1260d83ed26b8a065be6dfe6f537cbbe68d 100644
--- a/src/surfMesh/MeshedSurface/MeshedSurface.C
+++ b/src/surfMesh/MeshedSurface/MeshedSurface.C
@@ -374,7 +374,7 @@ Foam::MeshedSurface<Face>::MeshedSurface
             "dummyName",
             t.timeName(),
             t,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         ),
diff --git a/src/surfMesh/surfZone/surfZone/surfZoneIOList.C b/src/surfMesh/surfZone/surfZone/surfZoneIOList.C
index 430b1d200688d2a5b3e54d3941dea138fbe49b3a..c5619801dc67010675827cb88b583f14855e039f 100644
--- a/src/surfMesh/surfZone/surfZone/surfZoneIOList.C
+++ b/src/surfMesh/surfZone/surfZone/surfZoneIOList.C
@@ -45,7 +45,11 @@ Foam::surfZoneIOList::surfZoneIOList
         "(const IOobject& io)";
 
 
-    if (readOpt() == IOobject::MUST_READ)
+    if
+    (
+        readOpt() == IOobject::MUST_READ
+     || readOpt() == IOobject::MUST_READ_IF_MODIFIED
+    )
     {
         surfZoneList& zones = *this;
 
diff --git a/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C b/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C
index 090b1091aeecdc4a041333c495c6fa489008fc3a..1846f579714a82f66354b80beeb5c1ef37d5d758 100644
--- a/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C
+++ b/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C
@@ -587,7 +587,7 @@ Foam::surfaceFilmModels::kinematicSingleLayer::kinematicSingleLayer
             filmRegionName_,
             time_.timeName(),
             time_,
-            IOobject::MUST_READ
+            IOobject::MUST_READ_IF_MODIFIED
         )
     ),
     nHat_
diff --git a/src/surfaceFilmModels/surfaceFilmModel/surfaceFilmModel/surfaceFilmModel.C b/src/surfaceFilmModels/surfaceFilmModel/surfaceFilmModel/surfaceFilmModel.C
index 6eeb1398fe0e9ccec110681d60381d1b51798f8c..5dfb27e1a0f00fc970c4751607c252c2426d3efe 100644
--- a/src/surfaceFilmModels/surfaceFilmModel/surfaceFilmModel/surfaceFilmModel.C
+++ b/src/surfaceFilmModels/surfaceFilmModel/surfaceFilmModel/surfaceFilmModel.C
@@ -74,7 +74,7 @@ Foam::surfaceFilmModels::surfaceFilmModel::surfaceFilmModel
             "surfaceFilmProperties",
             mesh.time().constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -101,7 +101,7 @@ Foam::surfaceFilmModels::surfaceFilmModel::surfaceFilmModel
             "surfaceFilmProperties",
             mesh.time().constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/src/surfaceFilmModels/surfaceFilmModel/surfaceFilmModel/surfaceFilmModelNew.C b/src/surfaceFilmModels/surfaceFilmModel/surfaceFilmModel/surfaceFilmModelNew.C
index 78ac50b30f2d5a0ea79f848a85b0d377468c387f..57347f91325eeeb6df90ef40191d1a649e91cd33 100644
--- a/src/surfaceFilmModels/surfaceFilmModel/surfaceFilmModel/surfaceFilmModelNew.C
+++ b/src/surfaceFilmModels/surfaceFilmModel/surfaceFilmModel/surfaceFilmModelNew.C
@@ -46,7 +46,7 @@ Foam::surfaceFilmModels::surfaceFilmModel::New
                 "surfaceFilmProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/thermophysicalModels/Allwmake b/src/thermophysicalModels/Allwmake
index 38f4d54b4767c2475ea80c205aa84b824ae0c098..a12ce3ea1979f11f1300be29f4774602d7bef68c 100755
--- a/src/thermophysicalModels/Allwmake
+++ b/src/thermophysicalModels/Allwmake
@@ -18,4 +18,8 @@ wmake libso radiation
 wmake libso barotropicCompressibilityModel
 wmake libso thermalPorousZone
 
+# Should be combined with solids&solidMixture
+wmake libso basicSolidThermo
+
+
 # ----------------------------------------------------------------- end-of-file
diff --git a/src/thermophysicalModels/basic/basicThermo/basicThermo.C b/src/thermophysicalModels/basic/basicThermo/basicThermo.C
index eed0b677d3a3ede7689a87fd0d3de064aab85d4c..91c6be60fc7533e2c152e15ea50f3ebe9b4ff3fc 100644
--- a/src/thermophysicalModels/basic/basicThermo/basicThermo.C
+++ b/src/thermophysicalModels/basic/basicThermo/basicThermo.C
@@ -153,7 +153,7 @@ Foam::basicThermo::basicThermo(const fvMesh& mesh)
             "thermophysicalProperties",
             mesh.time().constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/src/thermophysicalModels/basic/psiThermo/basicPsiThermo/basicPsiThermoNew.C b/src/thermophysicalModels/basic/psiThermo/basicPsiThermo/basicPsiThermoNew.C
index e6f2d195f0306e011a9e0c9e529632ff9c2142d2..93b88ad4c47270c3ee91ed80fdb745808d5501ec 100644
--- a/src/thermophysicalModels/basic/psiThermo/basicPsiThermo/basicPsiThermoNew.C
+++ b/src/thermophysicalModels/basic/psiThermo/basicPsiThermo/basicPsiThermoNew.C
@@ -43,7 +43,7 @@ Foam::autoPtr<Foam::basicPsiThermo> Foam::basicPsiThermo::New
                 "thermophysicalProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/thermophysicalModels/basic/rhoThermo/basicRhoThermo/basicRhoThermoNew.C b/src/thermophysicalModels/basic/rhoThermo/basicRhoThermo/basicRhoThermoNew.C
index b5f8c88073ce5c2f9169f474e4013c31c3dcf2d5..78423b0234a981ca9a41d5d2086c618bc98d4c74 100644
--- a/src/thermophysicalModels/basic/rhoThermo/basicRhoThermo/basicRhoThermoNew.C
+++ b/src/thermophysicalModels/basic/rhoThermo/basicRhoThermo/basicRhoThermoNew.C
@@ -43,7 +43,7 @@ Foam::autoPtr<Foam::basicRhoThermo> Foam::basicRhoThermo::New
                 "thermophysicalProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/thermophysicalModels/basicSolidThermo/Make/files b/src/thermophysicalModels/basicSolidThermo/Make/files
new file mode 100644
index 0000000000000000000000000000000000000000..f7f64d01d21c1bd4184502453288301f27abbfd0
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/Make/files
@@ -0,0 +1,7 @@
+constSolidThermo/constSolidThermo.C
+directionalSolidThermo/directionalSolidThermo.C
+basicSolidThermo/basicSolidThermo.C
+basicSolidThermo/newBasicSolidThermo.C
+interpolatedSolidThermo/interpolatedSolidThermo.C
+
+LIB = $(FOAM_LIBBIN)/libbasicSolidThermo
diff --git a/src/thermophysicalModels/basicSolidThermo/Make/options b/src/thermophysicalModels/basicSolidThermo/Make/options
new file mode 100644
index 0000000000000000000000000000000000000000..f3070a731e46532261f92d0a3e815cf03a1ff2bc
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/Make/options
@@ -0,0 +1,7 @@
+EXE_INC = \
+    -I$(LIB_SRC)/meshTools/lnInclude \
+    -I$(LIB_SRC)/finiteVolume/lnInclude
+
+LIB_LIBS = \
+    -lmeshTools \
+    -lfiniteVolume
diff --git a/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/basicSolidThermo.C b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/basicSolidThermo.C
new file mode 100644
index 0000000000000000000000000000000000000000..e0c65a91d7fead871e8a2de935597f2ab25e7f3b
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/basicSolidThermo.C
@@ -0,0 +1,91 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+
+#include "basicSolidThermo.H"
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTypeNameAndDebug(basicSolidThermo, 0);
+    defineRunTimeSelectionTable(basicSolidThermo, mesh);
+}
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::basicSolidThermo::basicSolidThermo(const fvMesh& mesh)
+:
+    IOdictionary
+    (
+        IOobject
+        (
+            "solidThermophysicalProperties",
+            mesh.time().constant(),
+            mesh,
+            IOobject::MUST_READ_IF_MODIFIED,
+            IOobject::NO_WRITE
+        )
+    ),
+    mesh_(mesh),
+    T_
+    (
+        IOobject
+        (
+            "T",
+            mesh.time().timeName(),
+            mesh,
+            IOobject::MUST_READ,
+            IOobject::AUTO_WRITE
+        ),
+        mesh
+    )
+{}
+
+
+// * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
+
+Foam::basicSolidThermo::~basicSolidThermo()
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+bool Foam::basicSolidThermo::writeData(Ostream& os) const
+{
+    return true;
+}
+
+
+// * * * * * * * * * * * * * * IOStream operators  * * * * * * * * * * * * * //
+
+Foam::Ostream& Foam::operator<<(Ostream& os, const basicSolidThermo& s)
+{
+    s.writeData(os);
+    return os;
+}
+
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/basicSolidThermo.H b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/basicSolidThermo.H
new file mode 100644
index 0000000000000000000000000000000000000000..4b62582519364fd7e6f592a331d232f3e25c1a58
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/basicSolidThermo.H
@@ -0,0 +1,196 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::basicSolidThermo
+
+Description
+    The thermophysical properties of a basicSolidThermo
+
+SourceFiles
+    basicSolidThermo.C
+    newBasicSolidThermo.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef basicSolidThermo_H
+#define basicSolidThermo_H
+
+#include "runTimeSelectionTables.H"
+#include "volFields.H"
+#include "fvMesh.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                            Class basicSolidThermo Declaration
+\*---------------------------------------------------------------------------*/
+
+class basicSolidThermo
+:
+    public IOdictionary
+{
+protected:
+
+    // Protected data
+
+        const fvMesh& mesh_;
+
+        //- Temperature [K]
+        volScalarField T_;
+
+
+public:
+
+    //- Runtime type information
+    TypeName("basicSolidThermo");
+
+
+    // Declare run-time constructor selection tables
+
+    declareRunTimeSelectionTable
+    (
+        autoPtr,
+        basicSolidThermo,
+        mesh,
+        (const fvMesh& mesh),
+        (mesh)
+    );
+
+
+    // Constructors
+
+        //- Construct from mesh
+        basicSolidThermo(const fvMesh&);
+
+        //- Return a pointer to a new basicSolidThermo created from
+        //  the solidThermophysicalProperties dictionary
+        static autoPtr<basicSolidThermo> New(const fvMesh&);
+
+
+    // Destructor
+
+        virtual ~basicSolidThermo();
+
+
+    // Member Functions
+
+        //- Update properties
+        virtual void correct() = 0;
+
+
+        // Physical constants which define the basicSolidThermo
+
+            //- Temperature [K]
+            inline const volScalarField& T() const;
+
+            //- Temperature [K]
+            inline volScalarField& T();
+
+            //- Density [kg/m3]
+            virtual tmp<volScalarField> rho() const = 0;
+
+            //- Specific heat capacity [J/(kg.K)]
+            virtual tmp<volScalarField> cp() const = 0;
+
+            //- Thermal conductivity [W/(m.K)]
+            virtual tmp<volScalarField> K() const = 0;
+
+            //- Thermal conductivity [W/(m.K)]
+            virtual tmp<volSymmTensorField> directionalK() const = 0;
+
+            //- Heat of formation [J/kg]
+            virtual tmp<volScalarField> Hf() const = 0;
+
+            //- Emissivity []
+            virtual tmp<volScalarField> emissivity() const = 0;
+
+
+            // Per patch calculation
+
+                //- Density [kg/m3]
+                virtual tmp<scalarField> rho(const label patchI) const = 0;
+
+                //- Specific heat capacity [J/(kg.K)]
+                virtual tmp<scalarField> cp(const label patchI) const = 0;
+
+                //- Thermal conductivity [W/(m.K)]
+                virtual tmp<scalarField> K(const label patchI) const = 0;
+
+                //- Thermal conductivity [W/(m.K)]
+                virtual tmp<symmTensorField> directionalK(const label) const =0;
+
+                //- Heat of formation [J/kg]
+                virtual tmp<scalarField> Hf(const label patchI) const = 0;
+
+                //- Emissivity []
+                virtual tmp<scalarField> emissivity(const label) const = 0;
+
+//        // Point wise properties
+//
+//            //- Density [kg/m3]
+//            virtual scalar rho(const scalar T) const = 0;
+//
+//            //- Specific heat capacity [J/(kg.K)]
+//            virtual scalar cp(const scalar T) const = 0;
+//
+//            //- Thermal conductivity [W/(m.K)]
+//            virtual scalar K(const scalar T) const = 0;
+//
+//            //- Heat of formation [J/kg]
+//            virtual scalar Hf(const scalar T) const = 0;
+//
+//            //- Emissivity []
+//            virtual scalar emissivity(const scalar T) const = 0;
+
+        // I-O
+
+            //- Write the basicSolidThermo properties
+            virtual bool writeData(Ostream& os) const = 0;
+
+            //- Read solidThermophysicalProperties dictionary
+            virtual bool read() = 0;
+
+
+        // Ostream Operator
+
+        friend Ostream& operator<<(Ostream& os, const basicSolidThermo& s);
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#include "basicSolidThermoI.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/dynamicMesh/polyMeshAdder/polyMeshAdderTemplates.C b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/basicSolidThermoI.H
similarity index 79%
rename from src/dynamicMesh/polyMeshAdder/polyMeshAdderTemplates.C
rename to src/thermophysicalModels/basicSolidThermo/basicSolidThermo/basicSolidThermoI.H
index a5a4ff4e80d2cc21706eeece91332b96f71aa819..2b919b7e534138737a5401ce443bd013fcfd5181 100644
--- a/src/dynamicMesh/polyMeshAdder/polyMeshAdderTemplates.C
+++ b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/basicSolidThermoI.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -23,19 +23,20 @@ License
 
 \*---------------------------------------------------------------------------*/
 
+#include "basicSolidThermo.H"
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-//- Append all elements of a list to a DynamicList
-template<class T>
-void Foam::polyMeshAdder::append(const List<T>& lst, DynamicList<T>& dynLst)
+const Foam::volScalarField& Foam::basicSolidThermo::T() const
 {
-    dynLst.setCapacity(dynLst.size() + lst.size());
+    return T_;
+}
+
 
-    forAll(lst, i)
-    {
-        dynLst.append(lst[i]);
-    }
+Foam::volScalarField& Foam::basicSolidThermo::T()
+{
+    return T_;
 }
 
+
 // ************************************************************************* //
diff --git a/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/newBasicSolidThermo.C b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/newBasicSolidThermo.C
new file mode 100644
index 0000000000000000000000000000000000000000..34d3400a03bcd077629d2c29ec9eeeddddabf65e
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/newBasicSolidThermo.C
@@ -0,0 +1,77 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "basicSolidThermo.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+Foam::autoPtr<Foam::basicSolidThermo> Foam::basicSolidThermo::New
+(
+    const fvMesh& mesh
+)
+{
+    if (debug)
+    {
+        Info<< "basicSolidThermo::New(const fvMesh&): "
+            << "constructing basicSolidThermo"
+            << endl;
+    }
+
+    const word thermoType
+    (
+        IOdictionary
+        (
+            IOobject
+            (
+                "solidThermophysicalProperties",
+                mesh.time().constant(),
+                mesh,
+                IOobject::MUST_READ_IF_MODIFIED,
+                IOobject::NO_WRITE,
+                false
+            )
+        ).lookup("thermoType")
+    );
+
+    meshConstructorTable::iterator cstrIter =
+        meshConstructorTablePtr_->find(thermoType);
+
+    if (cstrIter == meshConstructorTablePtr_->end())
+    {
+        FatalErrorIn
+        (
+            "basicSolidThermo::New(const fvMesh&, const word&)"
+        )   << "Unknown solidThermo type " << thermoType
+            << endl << endl
+            << "Valid solidThermo types are :" << endl
+            << meshConstructorTablePtr_->toc()
+            << exit(FatalError);
+    }
+
+    return autoPtr<basicSolidThermo>(cstrIter()(mesh));
+}
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/nonCSinterpolateSolidThermo.C b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/nonCSinterpolateSolidThermo.C
new file mode 100644
index 0000000000000000000000000000000000000000..fb0301397cc683babdcb7a2696e532c57ae475ff
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/nonCSinterpolateSolidThermo.C
@@ -0,0 +1,232 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "interpolateSolidThermo.H"
+#include "addToRunTimeSelectionTable.H"
+#include "interpolateXY.H"
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTypeNameAndDebug(interpolateSolidThermo, 0);
+    addToRunTimeSelectionTable
+    (
+        basicSolidThermo,
+        interpolateSolidThermo,
+        dictionary
+    );
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::interpolateSolidThermo::interpolateSolidThermo
+(
+    const fvMesh& mesh,
+    const dictionary& dict
+)
+:
+    basicSolidThermo(mesh, dict, typeName),
+    TValues_(dict_.lookup("TValues")),
+    rhoValues_(dict_.lookup("rhoValues")),
+    cpValues_(dict_.lookup("cpValues")),
+    KValues_(dict_.lookup("KValues")),
+    HfValues_(dict_.lookup("HfValues")),
+    emissivityValues_(dict_.lookup("emissivityValues"))
+{
+    if
+    (
+        (TValues_.size() != rhoValues_.size())
+     && (TValues_.size() != cpValues_.size())
+     && (TValues_.size() != rhoValues_.size())
+     && (TValues_.size() != KValues_.size())
+     && (TValues_.size() != HfValues_.size())
+     && (TValues_.size() != emissivityValues_.size())
+    )
+    {
+        FatalIOErrorIn
+        (
+            "interpolateSolidThermo::interpolateSolidThermo\n"
+            "(\n"
+            "    const fvMesh& mesh,\n"
+            "    const dictionary& dict\n"
+            ")\n",
+            dict_
+        )   << "Size of property tables should be equal to size of Temperature"
+            << " values " << TValues_.size()
+            << exit(FatalIOError);
+    }
+
+    for (label i = 1; i < TValues_.size(); i++)
+    {
+        if (TValues_[i] <= TValues_[i-1])
+        {
+            FatalIOErrorIn
+            (
+                "interpolateSolidThermo::interpolateSolidThermo\n"
+                "(\n"
+                "    const fvMesh& mesh,\n"
+                "    const dictionary& dict\n"
+                ")\n",
+                dict_
+            )   << "Temperature values are not in increasing order "
+                << TValues_ << exit(FatalIOError);
+        }
+    }
+
+    correct();
+}
+
+
+// * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
+
+Foam::interpolateSolidThermo::~interpolateSolidThermo()
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+void Foam::interpolateSolidThermo::correct()
+{
+    // rho
+    rho_.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        rhoValues_
+    );
+
+    forAll(rho_.boundaryField(), patchI)
+    {
+        rho_.boundaryField()[patchI] == interpolateXY
+        (
+            T_.boundaryField()[patchI],
+            TValues_,
+            rhoValues_
+        );
+    }
+
+
+    // cp
+    cp_.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        cpValues_
+    );
+
+    forAll(cp_.boundaryField(), patchI)
+    {
+        cp_.boundaryField()[patchI] == interpolateXY
+        (
+            T_.boundaryField()[patchI],
+            TValues_,
+            cpValues_
+        );
+    }
+
+
+    // K
+    K_.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        KValues_
+    );
+
+    forAll(K_.boundaryField(), patchI)
+    {
+        K_.boundaryField()[patchI] == interpolateXY
+        (
+            T_.boundaryField()[patchI],
+            TValues_,
+            KValues_
+        );
+    }
+
+
+    // Hf
+    Hf_.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        HfValues_
+    );
+
+    forAll(Hf_.boundaryField(), patchI)
+    {
+        Hf_.boundaryField()[patchI] == interpolateXY
+        (
+            T_.boundaryField()[patchI],
+            TValues_,
+            HfValues_
+        );
+    }
+
+
+    // emissivity
+    emissivity_.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        emissivityValues_
+    );
+
+    forAll(emissivity_.boundaryField(), patchI)
+    {
+        emissivity_.boundaryField()[patchI] == interpolateXY
+        (
+            T_.boundaryField()[patchI],
+            TValues_,
+            emissivityValues_
+        );
+    }
+}
+
+
+void Foam::interpolateSolidThermo::write(Ostream& os) const
+{
+    basicSolidThermo::write(os);
+    os.writeKeyword("TValues") << TValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("rhoValues") << rhoValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("cpValues") << cpValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("KValues") << KValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("HfValues") << HfValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("emissivityValues") << emissivityValues_
+        << token::END_STATEMENT << nl;
+}
+
+
+// * * * * * * * * * * * * * * IOStream operators  * * * * * * * * * * * * * //
+
+Foam::Ostream& Foam::operator<<(Ostream& os, const interpolateSolidThermo& s)
+{
+    s.write(os);
+    return os;
+}
+
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/nonCSinterpolateSolidThermo.H b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/nonCSinterpolateSolidThermo.H
new file mode 100644
index 0000000000000000000000000000000000000000..1394f1fdaeb17adc41237e550b260675ea8aa4d2
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/basicSolidThermo/nonCSinterpolateSolidThermo.H
@@ -0,0 +1,124 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::interpolateSolidThermo
+
+Description
+    The thermophysical properties of a interpolateSolidThermo
+
+SourceFiles
+    interpolateSolidThermo.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef interpolateSolidThermo_H
+#define interpolateSolidThermo_H
+
+#include "basicSolidThermo.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+class basicSolidThermo;
+
+Ostream& operator<<
+(
+     Ostream&,
+     const basicSolidThermo&
+);
+
+
+/*---------------------------------------------------------------------------*\
+                            Class interpolateSolidThermo Declaration
+\*---------------------------------------------------------------------------*/
+
+class interpolateSolidThermo
+:
+    public basicSolidThermo
+{
+    // Private data
+
+        //- Temperature points for which there are values
+        const Field<scalar> TValues_;
+
+        //- Density at given temperatures
+        const Field<scalar> rhoValues_;
+
+        const Field<scalar> cpValues_;
+
+        const Field<symmTensor> KValues_;
+
+        const Field<scalar> HfValues_;
+
+        const Field<scalar> emissivityValues_;
+
+public:
+
+    //- Runtime type information
+    TypeName("interpolateSolidThermo");
+
+
+    // Constructors
+
+        //- Construct from mesh
+        interpolateSolidThermo(const fvMesh& mesh, const dictionary& dict);
+
+    // Destructor
+
+        virtual ~interpolateSolidThermo();
+
+
+    // Member Functions
+
+        //- Update properties
+        virtual void correct();
+
+
+        // I-O
+
+            //- Write the interpolateSolidThermo properties
+            virtual void write(Ostream& os) const;
+
+
+        // Ostream Operator
+
+        friend Ostream& operator<<
+        (
+            Ostream& os,
+            const interpolateSolidThermo& s
+        );
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/basicSolidThermo/constSolidThermo/constSolidThermo.C b/src/thermophysicalModels/basicSolidThermo/constSolidThermo/constSolidThermo.C
new file mode 100644
index 0000000000000000000000000000000000000000..0f9f65d2b0be6a66351c78355d022cb64ab7db00
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/constSolidThermo/constSolidThermo.C
@@ -0,0 +1,410 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "constSolidThermo.H"
+#include "addToRunTimeSelectionTable.H"
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTypeNameAndDebug(constSolidThermo, 0);
+    addToRunTimeSelectionTable(basicSolidThermo, constSolidThermo, mesh);
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::constSolidThermo::constSolidThermo(const fvMesh& mesh)
+:
+    basicSolidThermo(mesh),
+    constRho_("zero", dimDensity, 0.0),
+    constCp_("zero", dimEnergy/(dimMass*dimTemperature), 0.0),
+    constK_("zero", dimEnergy/dimTime/(dimLength*dimTemperature), 0.0),
+    constHf_("zero", dimEnergy/dimMass, 0.0),
+    constEmissivity_("zero", dimless, 0.0)
+{
+    read();
+    correct();
+}
+
+
+// * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
+
+Foam::constSolidThermo::~constSolidThermo()
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+void Foam::constSolidThermo::correct()
+{}
+
+
+Foam::tmp<Foam::volScalarField> Foam::constSolidThermo::rho() const
+{
+    return tmp<volScalarField>
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "rho",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            constRho_
+        )
+    );
+}
+
+
+Foam::tmp<Foam::volScalarField> Foam::constSolidThermo::cp() const
+{
+    return tmp<volScalarField>
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "cp",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            constCp_
+        )
+    );
+}
+
+
+//Foam::tmp<Foam::volScalarField> Foam::constSolidThermo::K() const
+//{
+//    vector v(eigenValues(constK_.value()));
+//
+//    if (mag(v.x() - v.z()) > SMALL)
+//    {
+//        FatalErrorIn("directionalSolidThermo::K() const")
+//            << "Supplied K " << constK_
+//            << " are not isotropic. Eigenvalues are "
+//            << v << exit(FatalError);
+//    }
+//
+//    return tmp<volScalarField>
+//    (
+//        new volScalarField
+//        (
+//            IOobject
+//            (
+//                "K",
+//                mesh_.time().timeName(),
+//                mesh_,
+//                IOobject::NO_READ,
+//                IOobject::NO_WRITE
+//            ),
+//            mesh_,
+//            v.x()
+//        )
+//    );
+//}
+
+
+Foam::tmp<Foam::volScalarField> Foam::constSolidThermo::K() const
+{
+    return tmp<volScalarField>
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "K",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            constK_
+        )
+    );
+}
+
+
+//Foam::tmp<Foam::volSymmTensorField> Foam::constSolidThermo::directionalK()
+//const
+//{
+//    return tmp<volSymmTensorField>
+//    (
+//        new volSymmTensorField
+//        (
+//            IOobject
+//            (
+//                "K",
+//                mesh_.time().timeName(),
+//                mesh_,
+//                IOobject::NO_READ,
+//                IOobject::NO_WRITE
+//            ),
+//            mesh_,
+//            constK_
+//        )
+//    );
+//}
+Foam::tmp<Foam::volSymmTensorField> Foam::constSolidThermo::directionalK() const
+{
+    dimensionedSymmTensor t
+    (
+        constK_.name(),
+        constK_.dimensions(),
+        symmTensor
+        (
+            constK_.value(),
+            0.0,
+            0.0,
+            constK_.value(),
+            0.0,
+            constK_.value()
+        )
+    );
+    return tmp<volSymmTensorField>
+    (
+        new volSymmTensorField
+        (
+            IOobject
+            (
+                "K",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            t
+        )
+    );
+}
+
+
+Foam::tmp<Foam::volScalarField> Foam::constSolidThermo::Hf() const
+{
+    return tmp<volScalarField>
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "Hf",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            constHf_
+        )
+    );
+}
+
+
+Foam::tmp<Foam::volScalarField> Foam::constSolidThermo::emissivity() const
+{
+    return tmp<volScalarField>
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "emissivity",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            constEmissivity_
+        )
+    );
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::constSolidThermo::rho
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            T_.boundaryField()[patchI].size(),
+            constRho_.value()
+        )
+    );
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::constSolidThermo::cp
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            T_.boundaryField()[patchI].size(),
+            constCp_.value()
+        )
+    );
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::constSolidThermo::K
+(
+    const label patchI
+) const
+{
+     return tmp<scalarField>
+    (
+        new scalarField
+        (
+            T_.boundaryField()[patchI].size(),
+            constK_.value()
+        )
+    );
+}
+
+
+Foam::tmp<Foam::symmTensorField> Foam::constSolidThermo::directionalK
+(
+    const label patchI
+) const
+{
+    symmTensor t
+    (
+        constK_.value(),
+        0.0,
+        0.0,
+        constK_.value(),
+        0.0,
+        constK_.value()
+    );
+    return tmp<symmTensorField>
+    (
+        new symmTensorField
+        (
+            T_.boundaryField()[patchI].size(),
+            t
+        )
+    );
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::constSolidThermo::Hf
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            T_.boundaryField()[patchI].size(),
+            constHf_.value()
+        )
+    );
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::constSolidThermo::emissivity
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            T_.boundaryField()[patchI].size(),
+            constEmissivity_.value()
+        )
+    );
+}
+
+
+bool Foam::constSolidThermo::read()
+{
+    return read(subDict(typeName + "Coeffs"));
+}
+
+
+bool Foam::constSolidThermo::read(const dictionary& dict)
+{
+    constRho_ = dimensionedScalar(dict.lookup("rho"));
+    constCp_ = dimensionedScalar(dict.lookup("cp"));
+    constK_ = dimensionedScalar(dict.lookup("K"));
+    constHf_ = dimensionedScalar(dict.lookup("Hf"));
+    constEmissivity_ = dimensionedScalar(dict.lookup("emissivity"));
+
+    Info<< "Constructed constSolidThermo with" << nl
+        << "    rho        : " << constRho_ << nl
+        << "    cp         : " << constCp_ << nl
+        << "    K          : " << constK_ << nl
+        << "    Hf         : " << constHf_ << nl
+        << "    emissivity : " << constEmissivity_ << nl
+        << endl;
+
+    return true;
+}
+
+
+bool Foam::constSolidThermo::writeData(Ostream& os) const
+{
+    bool ok = basicSolidThermo::writeData(os);
+    os.writeKeyword("rho") << constRho_ << token::END_STATEMENT << nl;
+    os.writeKeyword("cp") << constCp_ << token::END_STATEMENT << nl;
+    os.writeKeyword("K") << constK_ << token::END_STATEMENT << nl;
+    os.writeKeyword("Hf") << constHf_ << token::END_STATEMENT << nl;
+    os.writeKeyword("emissivity") << constEmissivity_ << token::END_STATEMENT
+        << nl;
+    return ok && os.good();
+}
+
+
+// * * * * * * * * * * * * * * IOStream operators  * * * * * * * * * * * * * //
+
+Foam::Ostream& Foam::operator<<(Ostream& os, const constSolidThermo& s)
+{
+    s.writeData(os);
+    return os;
+}
+
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/basicSolidThermo/constSolidThermo/constSolidThermo.H b/src/thermophysicalModels/basicSolidThermo/constSolidThermo/constSolidThermo.H
new file mode 100644
index 0000000000000000000000000000000000000000..41b92bd18d200dca4c66fbae2b10faeb8ef93c69
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/constSolidThermo/constSolidThermo.H
@@ -0,0 +1,158 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::constSolidThermo
+
+Description
+    The thermophysical properties of a constSolidThermo
+
+SourceFiles
+    constSolidThermo.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef constSolidThermo_H
+#define constSolidThermo_H
+
+#include "basicSolidThermo.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                            Class constSolidThermo Declaration
+\*---------------------------------------------------------------------------*/
+
+class constSolidThermo
+:
+    public basicSolidThermo
+{
+        //- Density [kg/m3]
+        dimensionedScalar constRho_;
+
+        //- Specific heat capacity [J/(kg.K)]
+        dimensionedScalar constCp_;
+
+        //- Thermal conductivity [W/(m.K)]
+        //dimensionedSymmTensor constK_;
+        dimensionedScalar constK_;
+
+        //- Heat of formation [J/kg]
+        dimensionedScalar constHf_;
+
+        //- Emissivity
+        dimensionedScalar constEmissivity_;
+
+public:
+
+    //- Runtime type information
+    TypeName("constSolidThermo");
+
+
+    // Constructors
+
+        //- Construct from mesh
+        constSolidThermo(const fvMesh& mesh);
+
+    // Destructor
+
+        virtual ~constSolidThermo();
+
+
+    // Member Functions
+
+        //- Update properties
+        virtual void correct();
+
+        //- Density [kg/m3]
+        virtual tmp<volScalarField> rho() const;
+
+        //- Specific heat capacity [J/(kg.K)]
+        virtual tmp<volScalarField> cp() const;
+
+        //- Thermal conductivity [W/(m.K)]
+        //  Note: needs supplied K to be isotropic
+        virtual tmp<volScalarField> K() const;
+
+        //- Thermal conductivity [W/(m.K)]
+        virtual tmp<volSymmTensorField> directionalK() const;
+
+        //- Heat of formation [J/kg]
+        virtual tmp<volScalarField> Hf() const;
+
+        //- Emissivity []
+        virtual tmp<volScalarField> emissivity() const;
+
+
+        // Per patch calculation
+
+            //- Density [kg/m3]
+            virtual tmp<scalarField> rho(const label patchI) const;
+
+            //- Specific heat capacity [J/(kg.K)]
+            virtual tmp<scalarField> cp(const label patchI) const;
+
+            //- Thermal conductivity [W/(m.K)]
+            virtual tmp<scalarField> K(const label patchI) const;
+
+            //- Thermal conductivity [W/(m.K)]
+            virtual tmp<symmTensorField> directionalK(const label patchI) const;
+
+            //- Heat of formation [J/kg]
+            virtual tmp<scalarField> Hf(const label patchI) const;
+
+            //- Emissivity []
+            virtual tmp<scalarField> emissivity(const label) const;
+
+
+        // I-O
+
+            //- Write the constSolidThermo properties
+            virtual bool writeData(Ostream& os) const;
+
+            //- Read solidThermophysicalProperties dictionary
+            virtual bool read();
+
+            //- Read solidThermophysicalProperties dictionary
+            bool read(const dictionary&);
+
+
+
+        // Ostream Operator
+
+        friend Ostream& operator<<(Ostream& os, const constSolidThermo& s);
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/basicSolidThermo/directionalSolidThermo/directionalSolidThermo.C b/src/thermophysicalModels/basicSolidThermo/directionalSolidThermo/directionalSolidThermo.C
new file mode 100644
index 0000000000000000000000000000000000000000..e7caf0d847440b4129c657e88e6003e2392237f5
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/directionalSolidThermo/directionalSolidThermo.C
@@ -0,0 +1,765 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "directionalSolidThermo.H"
+#include "addToRunTimeSelectionTable.H"
+#include "interpolateXY.H"
+#include "transform.H"
+#include "transformField.H"
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTypeNameAndDebug(directionalSolidThermo, 0);
+    addToRunTimeSelectionTable
+    (
+        basicSolidThermo,
+        directionalSolidThermo,
+        mesh
+    );
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::directionalSolidThermo::directionalSolidThermo(const fvMesh& mesh)
+:
+    basicSolidThermo(mesh),
+    ccTransforms_
+    (
+        IOobject
+        (
+            "ccTransforms",
+            mesh.time().timeName(),
+            mesh,
+            IOobject::NO_READ,
+            IOobject::NO_WRITE
+        ),
+        mesh,
+        dimLength
+    )
+{
+    read();
+
+    // Determine transforms for cell centres
+    forAll(mesh.C(), cellI)
+    {
+        vector dir = mesh.C()[cellI] - coordSys_.origin();
+        dir /= mag(dir);
+
+        // Define local coordinate system with
+        // - e1 : axis from cc to centre
+        // - e3 : rotation axis
+        coordinateSystem cs
+        (
+            "cc",
+            coordSys_.origin(),
+            coordSys_.e3(),     //z',e3
+            dir                 //x',e1
+        );
+
+        ccTransforms_[cellI] = cs.R();
+    }
+
+    forAll(mesh.C().boundaryField(), patchI)
+    {
+        const fvPatchVectorField& patchC = mesh.C().boundaryField()[patchI];
+        fvPatchTensorField& patchT = ccTransforms_.boundaryField()[patchI];
+
+        tensorField tc(patchT.size());
+        forAll(tc, i)
+        {
+            vector dir = patchC[i] - coordSys_.origin();
+            dir /= mag(dir);
+
+            coordinateSystem cs
+            (
+                "cc",
+                coordSys_.origin(),
+                coordSys_.e3(),     //z',e3
+                dir                 //x',e1
+            );
+
+            tc[i] = cs.R();
+        }
+        patchT = tc;
+    }
+
+    if (debug)
+    {
+        Info<< "directionalSolidThermo : dumping converted Kxx, Kyy, Kzz"
+            << endl;
+        {
+            volVectorField Kxx
+            (
+                IOobject
+                (
+                    "Kxx",
+                    mesh.time().timeName(),
+                    mesh,
+                    IOobject::NO_READ,
+                    IOobject::AUTO_WRITE,
+                    false
+                ),
+                mesh,
+                dimless
+            );
+            Kxx.internalField() = transform
+            (
+                ccTransforms_.internalField(),
+                vectorField
+                (
+                    ccTransforms_.internalField().size(),
+                    point(1, 0, 0)
+                )
+            );
+            forAll(Kxx.boundaryField(), patchI)
+            {
+                Kxx.boundaryField()[patchI] = transform
+                (
+                    ccTransforms_.boundaryField()[patchI],
+                    vectorField
+                    (
+                        ccTransforms_.boundaryField()[patchI].size(),
+                        point(1, 0, 0)
+                    )
+                );
+            }
+            Kxx.write();
+        }
+        {
+            volVectorField Kyy
+            (
+                IOobject
+                (
+                    "Kyy",
+                    mesh.time().timeName(),
+                    mesh,
+                    IOobject::NO_READ,
+                    IOobject::AUTO_WRITE,
+                    false
+                ),
+                mesh,
+                dimless
+            );
+            Kyy.internalField() = transform
+            (
+                ccTransforms_.internalField(),
+                vectorField
+                (
+                    ccTransforms_.internalField().size(),
+                    point(0, 1, 0)
+                )
+            );
+            forAll(Kyy.boundaryField(), patchI)
+            {
+                Kyy.boundaryField()[patchI] = transform
+                (
+                    ccTransforms_.boundaryField()[patchI],
+                    vectorField
+                    (
+                        ccTransforms_.boundaryField()[patchI].size(),
+                        point(0, 1, 0)
+                    )
+                );
+            }
+            Kyy.write();
+        }
+        {
+            volVectorField Kzz
+            (
+                IOobject
+                (
+                    "Kzz",
+                    mesh.time().timeName(),
+                    mesh,
+                    IOobject::NO_READ,
+                    IOobject::AUTO_WRITE,
+                    false
+                ),
+                mesh,
+                dimless
+            );
+            Kzz.internalField() = transform
+            (
+                ccTransforms_.internalField(),
+                vectorField
+                (
+                    ccTransforms_.internalField().size(),
+                    point(0, 0, 1)
+                )
+            );
+            forAll(Kzz.boundaryField(), patchI)
+            {
+                Kzz.boundaryField()[patchI] = transform
+                (
+                    ccTransforms_.boundaryField()[patchI],
+                    vectorField
+                    (
+                        ccTransforms_.boundaryField()[patchI].size(),
+                        point(0, 0, 1)
+                    )
+                );
+            }
+            Kzz.write();
+        }
+    }
+
+
+
+    correct();
+}
+
+
+// * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
+
+Foam::directionalSolidThermo::~directionalSolidThermo()
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+Foam::symmTensor Foam::directionalSolidThermo::transformPrincipal
+(
+    const tensor& tt,
+    const vector& st
+) const
+{
+    return symmTensor
+    (
+        tt.xx()*st.x()*tt.xx()
+      + tt.xy()*st.y()*tt.xy()
+      + tt.xz()*st.z()*tt.xz(),
+
+        tt.xx()*st.x()*tt.yx()
+      + tt.xy()*st.y()*tt.yy()
+      + tt.xz()*st.z()*tt.yz(),
+
+        tt.xx()*st.x()*tt.zx()
+      + tt.xy()*st.y()*tt.zy()
+      + tt.xz()*st.z()*tt.zz(),
+
+        tt.yx()*st.x()*tt.yx()
+      + tt.yy()*st.y()*tt.yy()
+      + tt.yz()*st.z()*tt.yz(),
+
+        tt.yx()*st.x()*tt.zx()
+      + tt.yy()*st.y()*tt.zy()
+      + tt.yz()*st.z()*tt.zz(),
+        
+        tt.zx()*st.x()*tt.zx()
+      + tt.zy()*st.y()*tt.zy()
+      + tt.zz()*st.z()*tt.zz()
+    );
+}
+
+
+void Foam::directionalSolidThermo::transformField
+(
+    symmTensorField& fld,
+    const tensorField& tt,
+    const vectorField& st
+) const
+{
+    fld.setSize(tt.size());
+    forAll(fld, i)
+    {
+        fld[i] = transformPrincipal(tt[i], st[i]);
+    }
+}
+
+
+void Foam::directionalSolidThermo::correct()
+{}
+
+
+Foam::tmp<Foam::volScalarField> Foam::directionalSolidThermo::rho() const
+{
+    tmp<volScalarField> trho
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "rho",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimDensity
+        )
+    );
+    volScalarField& rho = trho();
+
+    rho.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        rhoValues_
+    );
+
+    forAll(rho.boundaryField(), patchI)
+    {
+        rho.boundaryField()[patchI] == this->rho(patchI)();
+    }
+
+    return trho;
+}
+
+
+Foam::tmp<Foam::volScalarField> Foam::directionalSolidThermo::cp() const
+{
+    tmp<volScalarField> tcp
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "cp",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimEnergy/(dimMass*dimTemperature)
+        )
+    );
+    volScalarField& cp = tcp();
+
+    cp.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        cpValues_
+    );
+
+    forAll(cp.boundaryField(), patchI)
+    {
+        cp.boundaryField()[patchI] == this->cp(patchI)();
+    }
+
+    return tcp;
+}
+
+
+Foam::tmp<Foam::volSymmTensorField> Foam::directionalSolidThermo::directionalK()
+const
+{
+    tmp<volSymmTensorField> tK
+    (
+        new volSymmTensorField
+        (
+            IOobject
+            (
+                "K",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimEnergy/dimTime/(dimLength*dimTemperature)
+        )
+    );
+    volSymmTensorField& K = tK();
+
+    // Get temperature interpolated properties (principal directions)
+    Field<vector> localK
+    (
+        interpolateXY
+        (
+            T_.internalField(),
+            TValues_,
+            KValues_
+        )
+    );
+
+    // Transform into global coordinate system
+    transformField(K.internalField(), ccTransforms_.internalField(), localK);
+
+    forAll(K.boundaryField(), patchI)
+    {
+        K.boundaryField()[patchI] == this->directionalK(patchI)();
+    }
+
+    return tK;
+}
+
+
+Foam::tmp<Foam::volScalarField> Foam::directionalSolidThermo::K() const
+{
+    forAll(KValues_, i)
+    {
+        const vector& v = KValues_[i];
+        if
+        (
+            v.x() != v.y() 
+         || v.x() != v.z() 
+         || v.y() != v.z() 
+        )
+        {
+            FatalErrorIn("directionalSolidThermo::K() const")
+                << "Supplied K values " << KValues_
+                << " are not isotropic." << exit(FatalError);
+        }
+    }
+
+    // Get temperature interpolated properties (principal directions)
+    Field<vector> localK
+    (
+        interpolateXY
+        (
+            T_.internalField(),
+            TValues_,
+            KValues_
+        )
+    );
+
+    tmp<volScalarField> tK
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "K",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimEnergy/dimTime/(dimLength*dimTemperature)
+        )
+    );
+    volScalarField& K = tK();
+
+    K.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        KValues_.component(0)()
+    );
+
+    forAll(K.boundaryField(), patchI)
+    {
+        K.boundaryField()[patchI] == this->K(patchI)();
+    }
+
+    return tK;
+}
+
+
+Foam::tmp<Foam::volScalarField> Foam::directionalSolidThermo::Hf() const
+{
+    tmp<volScalarField> tHf
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "Hf",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimEnergy/dimMass
+        )
+    );
+    volScalarField& Hf = tHf();
+
+    Hf.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        HfValues_
+    );
+
+    forAll(Hf.boundaryField(), patchI)
+    {
+        Hf.boundaryField()[patchI] == this->Hf(patchI)();
+    }
+
+    return tHf;
+}
+
+
+Foam::tmp<Foam::volScalarField> Foam::directionalSolidThermo::emissivity() const
+{
+    tmp<volScalarField> temissivity
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "emissivity",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimless
+        )
+    );
+    volScalarField& emissivity = temissivity();
+
+    emissivity.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        emissivityValues_
+    );
+
+    forAll(emissivity.boundaryField(), patchI)
+    {
+        emissivity.boundaryField()[patchI] == this->emissivity(patchI)();
+    }
+
+    return temissivity;
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::directionalSolidThermo::rho
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            interpolateXY
+            (
+                T_.boundaryField()[patchI],
+                TValues_,
+                rhoValues_
+            )
+        )
+    );
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::directionalSolidThermo::cp
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            interpolateXY
+            (
+                T_.boundaryField()[patchI],
+                TValues_,
+                cpValues_
+            )
+        )
+    );
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::directionalSolidThermo::K
+(
+    const label patchI
+) const
+{
+    forAll(KValues_, i)
+    {
+        const vector& v = KValues_[i];
+        if
+        (
+            v.x() != v.y() 
+         || v.x() != v.z() 
+         || v.y() != v.z() 
+        )
+        {
+            FatalErrorIn("directionalSolidThermo::K() const")
+                << "Supplied K values " << KValues_
+                << " are not isotropic." << exit(FatalError);
+        }
+    }
+
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            interpolateXY
+            (
+                T_.boundaryField()[patchI],
+                TValues_,
+                KValues_.component(0)()
+            )
+        )
+    );
+}
+
+
+Foam::tmp<Foam::symmTensorField> Foam::directionalSolidThermo::directionalK
+(
+    const label patchI
+) const
+{
+    const fvPatchScalarField& patchT = T_.boundaryField()[patchI];
+
+    Field<vector> localK(interpolateXY(patchT, TValues_, KValues_));
+
+    tmp<symmTensorField> tglobalK(new symmTensorField(localK.size()));
+    transformField(tglobalK(), ccTransforms_.boundaryField()[patchI], localK);
+    
+    return tglobalK;
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::directionalSolidThermo::Hf
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            interpolateXY
+            (
+                T_.boundaryField()[patchI],
+                TValues_,
+                HfValues_
+            )
+        )
+    );
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::directionalSolidThermo::emissivity
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            interpolateXY
+            (
+                T_.boundaryField()[patchI],
+                TValues_,
+                emissivityValues_
+            )
+        )
+    );
+}
+
+
+bool Foam::directionalSolidThermo::read()
+{
+    return read(subDict(typeName + "Coeffs"));
+}
+
+
+bool Foam::directionalSolidThermo::read(const dictionary& dict)
+{
+    TValues_ = Field<scalar>(dict.lookup("TValues"));
+    rhoValues_ = Field<scalar>(dict.lookup("rhoValues"));
+    cpValues_ = Field<scalar>(dict.lookup("cpValues"));
+    KValues_ = Field<vector>(dict.lookup("KValues"));
+    HfValues_ = Field<scalar>(dict.lookup("HfValues"));
+    emissivityValues_ = Field<scalar>(dict.lookup("emissivityValues"));
+    coordSys_ = coordinateSystem(dict, mesh_);
+
+    Info<< "Constructed directionalSolidThermo with samples" << nl
+        << "    T          : " << TValues_ << nl
+        << "    rho        : " << rhoValues_ << nl
+        << "    cp         : " << cpValues_ << nl
+        << "    K          : " << KValues_ << nl
+        << "    in coordinates system" << nl
+        << "        type   : " << coordSys_.type() << nl
+        << "        e3     : " << coordSys_.e3() << nl
+        << "        e1     : " << coordSys_.e1() << nl
+        << "    Hf         : " << HfValues_ << nl
+        << "    emissivity : " << emissivityValues_ << nl
+        << endl;
+
+
+    if
+    (
+        (TValues_.size() != rhoValues_.size())
+     && (TValues_.size() != cpValues_.size())
+     && (TValues_.size() != rhoValues_.size())
+     && (TValues_.size() != KValues_.size())
+     && (TValues_.size() != HfValues_.size())
+     && (TValues_.size() != emissivityValues_.size())
+    )
+    {
+        FatalIOErrorIn("directionalSolidThermo::read()", dict)
+            << "Size of property tables should be equal to size of Temperature"
+            << " values " << TValues_.size()
+            << exit(FatalIOError);
+    }
+
+    for (label i = 1; i < TValues_.size(); i++)
+    {
+        if (TValues_[i] <= TValues_[i-1])
+        {
+            FatalIOErrorIn("directionalSolidThermo::read()", dict)
+                << "Temperature values are not in increasing order "
+                << TValues_ << exit(FatalIOError);
+        }
+    }
+    return true;
+}
+
+
+bool Foam::directionalSolidThermo::writeData(Ostream& os) const
+{
+    bool ok = basicSolidThermo::writeData(os);
+    os.writeKeyword("TValues") << TValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("rhoValues") << rhoValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("cpValues") << cpValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("KValues") << KValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("HfValues") << HfValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("emissivityValues") << emissivityValues_
+        << token::END_STATEMENT << nl;
+
+    return ok && os.good();
+}
+
+
+// * * * * * * * * * * * * * * IOStream operators  * * * * * * * * * * * * * //
+
+Foam::Ostream& Foam::operator<<(Ostream& os, const directionalSolidThermo& s)
+{
+    s.writeData(os);
+    return os;
+}
+
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/basicSolidThermo/directionalSolidThermo/directionalSolidThermo.H b/src/thermophysicalModels/basicSolidThermo/directionalSolidThermo/directionalSolidThermo.H
new file mode 100644
index 0000000000000000000000000000000000000000..7cc9648744a263cc0f66518d584fa991506cbea0
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/directionalSolidThermo/directionalSolidThermo.H
@@ -0,0 +1,183 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::directionalSolidThermo
+
+Description
+    Directional conductivity + table interpolation.
+
+SourceFiles
+    directionalSolidThermo.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef directionalSolidThermo_H
+#define directionalSolidThermo_H
+
+#include "basicSolidThermo.H"
+#include "coordinateSystem.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                            Class directionalSolidThermo Declaration
+\*---------------------------------------------------------------------------*/
+
+class directionalSolidThermo
+:
+    public basicSolidThermo
+{
+    // Private data
+
+        //- Temperature samples
+        Field<scalar> TValues_;
+
+        //- Density at given temperatures
+        Field<scalar> rhoValues_;
+
+        Field<scalar> cpValues_;
+
+        Field<vector> KValues_;
+
+        Field<scalar> HfValues_;
+
+        Field<scalar> emissivityValues_;
+
+        //- Coordinate system used for the directional properties
+        coordinateSystem coordSys_;
+
+        //- Transformation for cell centres
+        volTensorField ccTransforms_;
+
+
+    // Private Member Functions
+
+        //- Transform principal values of symmTensor
+        symmTensor transformPrincipal(const tensor& tt, const vector& st) const;
+
+        //- Transform principal values of symmTensor
+        void transformField
+        (
+            symmTensorField& fld,
+            const tensorField& tt,
+            const vectorField& st
+        ) const;
+
+
+public:
+
+    //- Runtime type information
+    TypeName("directionalSolidThermo");
+
+
+    // Constructors
+
+        //- Construct from mesh
+        directionalSolidThermo(const fvMesh& mesh);
+
+    // Destructor
+
+        virtual ~directionalSolidThermo();
+
+
+    // Member Functions
+
+        //- Update properties
+        virtual void correct();
+
+        //- Density [kg/m3]
+        virtual tmp<volScalarField> rho() const;
+
+        //- Specific heat capacity [J/(kg.K)]
+        virtual tmp<volScalarField> cp() const;
+
+        //- Thermal conductivity [W/(m.K)]
+        virtual tmp<volScalarField> K() const;
+
+        //- Thermal conductivity [W/(m.K)]
+        virtual tmp<volSymmTensorField> directionalK() const;
+
+        //- Heat of formation [J/kg]
+        virtual tmp<volScalarField> Hf() const;
+
+        //- Emissivity []
+        virtual tmp<volScalarField> emissivity() const;
+
+
+        // Per patch calculation
+
+            //- Density [kg/m3]
+            virtual tmp<scalarField> rho(const label patchI) const;
+
+            //- Specific heat capacity [J/(kg.K)]
+            virtual tmp<scalarField> cp(const label patchI) const;
+
+            //- Thermal conductivity [W/(m.K)]
+            //  Note: needs Kvalues to be isotropic
+            virtual tmp<scalarField> K(const label patchI) const;
+
+            //- Thermal conductivity [W/(m.K)]
+            virtual tmp<symmTensorField> directionalK(const label patchI) const;
+
+            //- Heat of formation [J/kg]
+            virtual tmp<scalarField> Hf(const label patchI) const;
+
+            //- Emissivity []
+            virtual tmp<scalarField> emissivity(const label) const;
+
+
+        // I-O
+
+            //- Write the directionalSolidThermo properties
+            virtual bool writeData(Ostream& os) const;
+
+            //- Read the directionalSolidThermo properties
+            virtual bool read();
+
+            //- Read the directionalSolidThermo properties
+            bool read(const dictionary& dict);
+
+
+        // Ostream Operator
+
+        friend Ostream& operator<<
+        (
+            Ostream& os,
+            const directionalSolidThermo& s
+        );
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/basicSolidThermo/interpolatedSolidThermo/interpolatedSolidThermo.C b/src/thermophysicalModels/basicSolidThermo/interpolatedSolidThermo/interpolatedSolidThermo.C
new file mode 100644
index 0000000000000000000000000000000000000000..c82f431a65fd178d195352e624b864673f0ec936
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/interpolatedSolidThermo/interpolatedSolidThermo.C
@@ -0,0 +1,501 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "interpolatedSolidThermo.H"
+#include "addToRunTimeSelectionTable.H"
+#include "interpolateXY.H"
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTypeNameAndDebug(interpolatedSolidThermo, 0);
+    addToRunTimeSelectionTable
+    (
+        basicSolidThermo,
+        interpolatedSolidThermo,
+        mesh
+    );
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::interpolatedSolidThermo::interpolatedSolidThermo(const fvMesh& mesh)
+:
+    basicSolidThermo(mesh)
+{
+    read();
+    correct();
+}
+
+
+// * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
+
+Foam::interpolatedSolidThermo::~interpolatedSolidThermo()
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+void Foam::interpolatedSolidThermo::correct()
+{}
+
+
+Foam::tmp<Foam::volScalarField> Foam::interpolatedSolidThermo::rho() const
+{
+    tmp<volScalarField> trho
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "rho",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimDensity
+        )
+    );
+    volScalarField& rho = trho();
+
+    rho.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        rhoValues_
+    );
+
+    forAll(rho.boundaryField(), patchI)
+    {
+        rho.boundaryField()[patchI] == this->rho(patchI)();
+    }
+
+    return trho;
+}
+
+
+Foam::tmp<Foam::volScalarField> Foam::interpolatedSolidThermo::cp() const
+{
+    tmp<volScalarField> tcp
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "cp",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimEnergy/(dimMass*dimTemperature)
+        )
+    );
+    volScalarField& cp = tcp();
+
+    cp.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        cpValues_
+    );
+
+    forAll(cp.boundaryField(), patchI)
+    {
+        cp.boundaryField()[patchI] == this->cp(patchI)();
+    }
+
+    return tcp;
+}
+
+
+Foam::tmp<Foam::volScalarField> Foam::interpolatedSolidThermo::K() const
+{
+    tmp<volScalarField> tK
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "K",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimEnergy/dimTime/(dimLength*dimTemperature)
+        )
+    );
+    volScalarField& K = tK();
+
+    K.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        KValues_
+    );
+
+    forAll(K.boundaryField(), patchI)
+    {
+        K.boundaryField()[patchI] == this->K(patchI)();
+    }
+
+    return tK;
+}
+
+
+Foam::tmp<Foam::volSymmTensorField>
+Foam::interpolatedSolidThermo::directionalK()
+const
+{
+    tmp<volSymmTensorField> tK
+    (
+        new volSymmTensorField
+        (
+            IOobject
+            (
+                "K",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimensionedSymmTensor
+            (
+                "zero",
+                dimEnergy/dimTime/(dimLength*dimTemperature),
+                symmTensor::zero
+            )
+        )
+    );
+    volSymmTensorField& K = tK();
+
+    Field<scalar> scalarK
+    (
+        interpolateXY
+        (
+            T_.internalField(),
+            TValues_,
+            KValues_
+        )
+    );
+
+    K.internalField().replace(symmTensor::XX, scalarK);
+    K.internalField().replace(symmTensor::YY, scalarK);
+    K.internalField().replace(symmTensor::ZZ, scalarK);
+
+    forAll(K.boundaryField(), patchI)
+    {
+        K.boundaryField()[patchI] == this->directionalK(patchI)();
+    }
+
+    return tK;
+}
+
+
+Foam::tmp<Foam::volScalarField> Foam::interpolatedSolidThermo::Hf() const
+{
+    tmp<volScalarField> tHf
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "Hf",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimEnergy/dimMass
+        )
+    );
+    volScalarField& Hf = tHf();
+
+    Hf.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        HfValues_
+    );
+
+    forAll(Hf.boundaryField(), patchI)
+    {
+        Hf.boundaryField()[patchI] == this->Hf(patchI)();
+    }
+
+    return tHf;
+}
+
+
+Foam::tmp<Foam::volScalarField> Foam::interpolatedSolidThermo::emissivity() const
+{
+    tmp<volScalarField> temissivity
+    (
+        new volScalarField
+        (
+            IOobject
+            (
+                "emissivity",
+                mesh_.time().timeName(),
+                mesh_,
+                IOobject::NO_READ,
+                IOobject::NO_WRITE
+            ),
+            mesh_,
+            dimless
+        )
+    );
+    volScalarField& emissivity = temissivity();
+
+    emissivity.internalField() = interpolateXY
+    (
+        T_.internalField(),
+        TValues_,
+        emissivityValues_
+    );
+
+    forAll(emissivity.boundaryField(), patchI)
+    {
+        emissivity.boundaryField()[patchI] == this->emissivity(patchI)();
+    }
+
+    return temissivity;
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::interpolatedSolidThermo::rho
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            interpolateXY
+            (
+                T_.boundaryField()[patchI],
+                TValues_,
+                rhoValues_
+            )
+        )
+    );
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::interpolatedSolidThermo::cp
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            interpolateXY
+            (
+                T_.boundaryField()[patchI],
+                TValues_,
+                cpValues_
+            )
+        )
+    );
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::interpolatedSolidThermo::K
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            interpolateXY
+            (
+                T_.boundaryField()[patchI],
+                TValues_,
+                KValues_
+            )
+        )
+    );
+}
+
+
+Foam::tmp<Foam::symmTensorField> Foam::interpolatedSolidThermo::directionalK
+(
+    const label patchI
+) const
+{
+    const fvPatchScalarField& patchT = T_.boundaryField()[patchI];
+
+    Field<scalar> scalarK(interpolateXY(patchT, TValues_, KValues_));
+
+    tmp<symmTensorField> tfld
+    (
+        new symmTensorField
+        (
+            scalarK.size(),
+            symmTensor::zero
+        )
+    );
+    symmTensorField& fld = tfld();
+
+    fld.replace(symmTensor::XX, scalarK);
+    fld.replace(symmTensor::YY, scalarK);
+    fld.replace(symmTensor::ZZ, scalarK);
+
+    return tfld;
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::interpolatedSolidThermo::Hf
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            interpolateXY
+            (
+                T_.boundaryField()[patchI],
+                TValues_,
+                HfValues_
+            )
+        )
+    );
+}
+
+
+Foam::tmp<Foam::scalarField> Foam::interpolatedSolidThermo::emissivity
+(
+    const label patchI
+) const
+{
+    return tmp<scalarField>
+    (
+        new scalarField
+        (
+            interpolateXY
+            (
+                T_.boundaryField()[patchI],
+                TValues_,
+                emissivityValues_
+            )
+        )
+    );
+}
+
+
+bool Foam::interpolatedSolidThermo::read()
+{
+    return read(subDict(typeName + "Coeffs"));
+}
+
+
+bool Foam::interpolatedSolidThermo::read(const dictionary& dict)
+{
+    TValues_ = Field<scalar>(dict.lookup("TValues"));
+    rhoValues_ = Field<scalar>(dict.lookup("rhoValues"));
+    cpValues_ = Field<scalar>(dict.lookup("cpValues"));
+    KValues_ = Field<scalar>(dict.lookup("KValues"));
+    HfValues_ = Field<scalar>(dict.lookup("HfValues"));
+    emissivityValues_ = Field<scalar>(dict.lookup("emissivityValues"));
+
+    Info<< "Constructed interpolatedSolidThermo with samples" << nl
+        << "    T          : " << TValues_ << nl
+        << "    rho        : " << rhoValues_ << nl
+        << "    cp         : " << cpValues_ << nl
+        << "    K          : " << KValues_ << nl
+        << "    Hf         : " << HfValues_ << nl
+        << "    emissivity : " << emissivityValues_ << nl
+        << endl;
+
+    if
+    (
+        (TValues_.size() != rhoValues_.size())
+     && (TValues_.size() != cpValues_.size())
+     && (TValues_.size() != rhoValues_.size())
+     && (TValues_.size() != KValues_.size())
+     && (TValues_.size() != HfValues_.size())
+     && (TValues_.size() != emissivityValues_.size())
+    )
+    {
+        FatalIOErrorIn("interpolatedSolidThermo::read()", dict)
+            << "Size of property tables should be equal to size of Temperature"
+            << " values " << TValues_.size()
+            << exit(FatalIOError);
+    }
+
+    for (label i = 1; i < TValues_.size(); i++)
+    {
+        if (TValues_[i] <= TValues_[i-1])
+        {
+            FatalIOErrorIn("interpolatedSolidThermo::read()", dict)
+                << "Temperature values are not in increasing order "
+                << TValues_ << exit(FatalIOError);
+        }
+    }
+    return true;
+}
+
+
+bool Foam::interpolatedSolidThermo::writeData(Ostream& os) const
+{
+    bool ok = basicSolidThermo::writeData(os);
+    os.writeKeyword("TValues") << TValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("rhoValues") << rhoValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("cpValues") << cpValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("KValues") << KValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("HfValues") << HfValues_ << token::END_STATEMENT << nl;
+    os.writeKeyword("emissivityValues") << emissivityValues_
+        << token::END_STATEMENT << nl;
+
+    return ok && os.good();
+}
+
+
+// * * * * * * * * * * * * * * IOStream operators  * * * * * * * * * * * * * //
+
+Foam::Ostream& Foam::operator<<(Ostream& os, const interpolatedSolidThermo& s)
+{
+    s.writeData(os);
+    return os;
+}
+
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/basicSolidThermo/interpolatedSolidThermo/interpolatedSolidThermo.H b/src/thermophysicalModels/basicSolidThermo/interpolatedSolidThermo/interpolatedSolidThermo.H
new file mode 100644
index 0000000000000000000000000000000000000000..571138e0231192393e92e635a649b2afa1c77c9b
--- /dev/null
+++ b/src/thermophysicalModels/basicSolidThermo/interpolatedSolidThermo/interpolatedSolidThermo.H
@@ -0,0 +1,161 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::interpolatedSolidThermo
+
+Description
+    Table interpolated solid thermo.
+
+SourceFiles
+    interpolatedSolidThermo.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef interpolatedSolidThermo_H
+#define interpolatedSolidThermo_H
+
+#include "basicSolidThermo.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                            Class interpolatedSolidThermo Declaration
+\*---------------------------------------------------------------------------*/
+
+class interpolatedSolidThermo
+:
+    public basicSolidThermo
+{
+    // Private data
+
+        //- Temperature samples
+        Field<scalar> TValues_;
+
+        //- Density at given temperatures
+        Field<scalar> rhoValues_;
+
+        Field<scalar> cpValues_;
+
+        Field<scalar> KValues_;
+
+        Field<scalar> HfValues_;
+
+        Field<scalar> emissivityValues_;
+
+public:
+
+    //- Runtime type information
+    TypeName("interpolatedSolidThermo");
+
+
+    // Constructors
+
+        //- Construct from mesh
+        interpolatedSolidThermo(const fvMesh& mesh);
+
+    // Destructor
+
+        virtual ~interpolatedSolidThermo();
+
+
+    // Member Functions
+
+        //- Update properties
+        virtual void correct();
+
+        //- Density [kg/m3]
+        virtual tmp<volScalarField> rho() const;
+
+        //- Specific heat capacity [J/(kg.K)]
+        virtual tmp<volScalarField> cp() const;
+
+        //- Thermal conductivity [W/(m.K)]
+        virtual tmp<volScalarField> K() const;
+
+        //- Thermal conductivity [W/(m.K)]
+        virtual tmp<volSymmTensorField> directionalK() const;
+
+        //- Heat of formation [J/kg]
+        virtual tmp<volScalarField> Hf() const;
+
+        //- Emissivity []
+        virtual tmp<volScalarField> emissivity() const;
+
+
+        // Per patch calculation
+
+            //- Density [kg/m3]
+            virtual tmp<scalarField> rho(const label patchI) const;
+
+            //- Specific heat capacity [J/(kg.K)]
+            virtual tmp<scalarField> cp(const label patchI) const;
+
+            //- Thermal conductivity [W/(m.K)]
+            //  Note: needs Kvalues to be isotropic
+            virtual tmp<scalarField> K(const label patchI) const;
+
+            //- Thermal conductivity [W/(m.K)]
+            virtual tmp<symmTensorField> directionalK(const label patchI) const;
+
+            //- Heat of formation [J/kg]
+            virtual tmp<scalarField> Hf(const label patchI) const;
+
+            //- Emissivity []
+            virtual tmp<scalarField> emissivity(const label) const;
+
+
+        // I-O
+
+            //- Write the interpolatedSolidThermo properties
+            virtual bool writeData(Ostream& os) const;
+
+            //- Read the interpolatedSolidThermo properties
+            virtual bool read();
+
+            //- Read the interpolatedSolidThermo properties
+            bool read(const dictionary& dict);
+
+
+        // Ostream Operator
+
+        friend Ostream& operator<<
+        (
+            Ostream& os,
+            const interpolatedSolidThermo& s
+        );
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/chemistryModel/chemistryModel/basicChemistryModel/basicChemistryModel.C b/src/thermophysicalModels/chemistryModel/chemistryModel/basicChemistryModel/basicChemistryModel.C
index 5d8e0285e9d7920daaa3480b4eb9efe4b565ecec..7aa4c2613e3454dd8f8bce7a9adf7275bbaa4f28 100644
--- a/src/thermophysicalModels/chemistryModel/chemistryModel/basicChemistryModel/basicChemistryModel.C
+++ b/src/thermophysicalModels/chemistryModel/chemistryModel/basicChemistryModel/basicChemistryModel.C
@@ -45,7 +45,7 @@ Foam::basicChemistryModel::basicChemistryModel(const fvMesh& mesh)
             "chemistryProperties",
             mesh.time().constant(),
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/src/thermophysicalModels/chemistryModel/chemistryModel/psiChemistryModel/psiChemistryModelNew.C b/src/thermophysicalModels/chemistryModel/chemistryModel/psiChemistryModel/psiChemistryModelNew.C
index 38d88071f1fb692bda43be6a0711227cc4267bc6..59addc69aab378a81bdc8bbe930901b2ce1d808e 100644
--- a/src/thermophysicalModels/chemistryModel/chemistryModel/psiChemistryModel/psiChemistryModelNew.C
+++ b/src/thermophysicalModels/chemistryModel/chemistryModel/psiChemistryModel/psiChemistryModelNew.C
@@ -43,7 +43,7 @@ Foam::autoPtr<Foam::psiChemistryModel> Foam::psiChemistryModel::New
                 "chemistryProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/thermophysicalModels/chemistryModel/chemistryModel/rhoChemistryModel/rhoChemistryModelNew.C b/src/thermophysicalModels/chemistryModel/chemistryModel/rhoChemistryModel/rhoChemistryModelNew.C
index 95a6100de511466e455348cfddfd94cd2820af75..89439028c939d7052915fd6daf304f95fb33b302 100644
--- a/src/thermophysicalModels/chemistryModel/chemistryModel/rhoChemistryModel/rhoChemistryModelNew.C
+++ b/src/thermophysicalModels/chemistryModel/chemistryModel/rhoChemistryModel/rhoChemistryModelNew.C
@@ -43,7 +43,7 @@ Foam::autoPtr<Foam::rhoChemistryModel> Foam::rhoChemistryModel::New
                 "chemistryProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/thermophysicalModels/laminarFlameSpeed/laminarFlameSpeed/laminarFlameSpeedNew.C b/src/thermophysicalModels/laminarFlameSpeed/laminarFlameSpeed/laminarFlameSpeedNew.C
index f3e7e6ccc1ab190d2cd607128e13e9f14c8bb8c6..ca85cac0da72bc50d1e22a80f86ccc2bef42fda6 100644
--- a/src/thermophysicalModels/laminarFlameSpeed/laminarFlameSpeed/laminarFlameSpeedNew.C
+++ b/src/thermophysicalModels/laminarFlameSpeed/laminarFlameSpeed/laminarFlameSpeedNew.C
@@ -40,7 +40,7 @@ Foam::autoPtr<Foam::laminarFlameSpeed> Foam::laminarFlameSpeed::New
             "combustionProperties",
             ct.T().time().constant(),
             ct.T().db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         )
diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.C b/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.C
index 6bec827a50946bb2e08ba0c79755ae13e84dd9df..8f4e9b8725911054742ab6b1c132b2689e78708f 100644
--- a/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.C
+++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/greyDiffusiveRadiation/greyDiffusiveRadiationMixedFvPatchScalarField.C
@@ -172,7 +172,7 @@ updateCoeffs()
     radiativeIntensityRay& ray =
         const_cast<radiativeIntensityRay&>(dom.IRay(rayId));
 
-    ray.Qr().boundaryField()[patchI] += Iw*(-n & ray.dAve());
+    ray.Qr().boundaryField()[patchI] += Iw*(n & ray.dAve());
 
     forAll(Iw, faceI)
     {
diff --git a/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.C b/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.C
index 6dfffad991beb131b1ae5774b1aead76d426d276..d97689cb21e35856ea3026bff881f57d5c5b4c64 100644
--- a/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.C
+++ b/src/thermophysicalModels/radiation/derivedFvPatchFields/wideBandDiffusiveRadiation/wideBandDiffusiveRadiationMixedFvPatchScalarField.C
@@ -167,7 +167,7 @@ updateCoeffs()
     radiativeIntensityRay& ray =
         const_cast<radiativeIntensityRay&>(dom.IRay(rayId));
 
-    ray.Qr().boundaryField()[patchI] += Iw*(-n & ray.dAve());
+    ray.Qr().boundaryField()[patchI] += Iw*(n & ray.dAve());
 
     const scalarField Eb =
         dom.blackBody().bLambda(lambdaId).boundaryField()[patchI];
diff --git a/src/thermophysicalModels/radiation/radiationModel/P1/P1.C b/src/thermophysicalModels/radiation/radiationModel/P1/P1.C
index b9fc90f74c08d836aa0573927614589389901dc6..74cf2165360c5702c563246f0db3b8a93d23feff 100644
--- a/src/thermophysicalModels/radiation/radiationModel/P1/P1.C
+++ b/src/thermophysicalModels/radiation/radiationModel/P1/P1.C
@@ -68,6 +68,19 @@ Foam::radiation::P1::P1(const volScalarField& T)
         ),
         mesh_
     ),
+    Qr_
+    (
+        IOobject
+        (
+            "Qr",
+            mesh_.time().timeName(),
+            mesh_,
+            IOobject::NO_READ,
+            IOobject::AUTO_WRITE
+        ),
+        mesh_,
+        dimensionedScalar("Qr", dimMass/pow3(dimTime), 0.0)
+    ),
     a_
     (
         IOobject
@@ -162,6 +175,13 @@ void Foam::radiation::P1::calculate()
      ==
       - 4.0*(e_*physicoChemical::sigma*pow4(T_) + E_)
     );
+
+    // Calculate radiative heat flux on boundaries.
+    forAll(mesh_.boundaryMesh(), patchI)
+    {
+        Qr_.boundaryField()[patchI] =
+            -gamma.boundaryField()[patchI]*G_.boundaryField()[patchI].snGrad();
+    }
 }
 
 
diff --git a/src/thermophysicalModels/radiation/radiationModel/P1/P1.H b/src/thermophysicalModels/radiation/radiationModel/P1/P1.H
index 5300d3718ce94bdf88e19109b2ce060d6cc5d1b3..7c03d5313e0d1d07977944d253fd856be0e1bf0a 100644
--- a/src/thermophysicalModels/radiation/radiationModel/P1/P1.H
+++ b/src/thermophysicalModels/radiation/radiationModel/P1/P1.H
@@ -63,6 +63,9 @@ class P1
         //- Incident radiation / [W/m2]
         volScalarField G_;
 
+        //- Total radiative heat flux [W/m2]
+        volScalarField Qr_;
+
         //- Absorption coefficient
         volScalarField a_;
 
diff --git a/src/thermophysicalModels/radiation/radiationModel/fvDOM/interpolationLookUpTable/interpolationLookUpTable.C b/src/thermophysicalModels/radiation/radiationModel/fvDOM/interpolationLookUpTable/interpolationLookUpTable.C
index 47377598827c3ff369d37b25f7bf65526278a056..90f6c8e54de60b76b4fe892c61bcda610bcfa997 100644
--- a/src/thermophysicalModels/radiation/radiationModel/fvDOM/interpolationLookUpTable/interpolationLookUpTable.C
+++ b/src/thermophysicalModels/radiation/radiationModel/fvDOM/interpolationLookUpTable/interpolationLookUpTable.C
@@ -203,7 +203,7 @@ void Foam::interpolationLookUpTable<Type>::readTable
             fileName_,
             instance,
             mesh,
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     );
diff --git a/src/thermophysicalModels/radiation/radiationModel/radiationModel/radiationModel.C b/src/thermophysicalModels/radiation/radiationModel/radiationModel/radiationModel.C
index fd17fe5fd97c00a4096868e16f6fb80707bc9aa9..d82e1ffe3e67beab2119f097978e8091332bb6a1 100644
--- a/src/thermophysicalModels/radiation/radiationModel/radiationModel/radiationModel.C
+++ b/src/thermophysicalModels/radiation/radiationModel/radiationModel/radiationModel.C
@@ -51,7 +51,7 @@ Foam::radiation::radiationModel::radiationModel(const volScalarField& T)
             "radiationProperties",
             T.time().constant(),
             T.mesh(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -79,7 +79,7 @@ Foam::radiation::radiationModel::radiationModel
             "radiationProperties",
             T.time().constant(),
             T.mesh(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/src/thermophysicalModels/radiation/radiationModel/radiationModel/radiationModelNew.C b/src/thermophysicalModels/radiation/radiationModel/radiationModel/radiationModelNew.C
index 1437b9195d5c21d7e60ab47294ec0dcd35503f97..861708ebecb9a4bbd1e7beb4c08c299f7f38a873 100644
--- a/src/thermophysicalModels/radiation/radiationModel/radiationModel/radiationModelNew.C
+++ b/src/thermophysicalModels/radiation/radiationModel/radiationModel/radiationModelNew.C
@@ -44,7 +44,7 @@ Foam::radiation::radiationModel::New
                 "radiationProperties",
                 T.time().constant(),
                 T.mesh(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/thermophysicalModels/reactionThermo/combustionThermo/hCombustionThermo/hCombustionThermoNew.C b/src/thermophysicalModels/reactionThermo/combustionThermo/hCombustionThermo/hCombustionThermoNew.C
index 7065df6d07aa1e2bb8766e0a0810a68f31839c63..aa1d03316d28f2ddd1e02b4fea81bfc31e430c3a 100644
--- a/src/thermophysicalModels/reactionThermo/combustionThermo/hCombustionThermo/hCombustionThermoNew.C
+++ b/src/thermophysicalModels/reactionThermo/combustionThermo/hCombustionThermo/hCombustionThermoNew.C
@@ -44,7 +44,7 @@ Foam::autoPtr<Foam::hCombustionThermo> Foam::hCombustionThermo::New
                 "thermophysicalProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -87,7 +87,7 @@ Foam::autoPtr<Foam::hCombustionThermo> Foam::hCombustionThermo::NewType
                 "thermophysicalProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/thermophysicalModels/reactionThermo/combustionThermo/hhuCombustionThermo/hhuCombustionThermoNew.C b/src/thermophysicalModels/reactionThermo/combustionThermo/hhuCombustionThermo/hhuCombustionThermoNew.C
index 5fb31430e725f865897d00912f0c686481a6efb8..20117977aaa5f9576889a7e7cee7f25f660fc76c 100644
--- a/src/thermophysicalModels/reactionThermo/combustionThermo/hhuCombustionThermo/hhuCombustionThermoNew.C
+++ b/src/thermophysicalModels/reactionThermo/combustionThermo/hhuCombustionThermo/hhuCombustionThermoNew.C
@@ -44,7 +44,7 @@ Foam::autoPtr<Foam::hhuCombustionThermo> Foam::hhuCombustionThermo::New
                 "thermophysicalProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/thermophysicalModels/reactionThermo/combustionThermo/hsCombustionThermo/hsCombustionThermoNew.C b/src/thermophysicalModels/reactionThermo/combustionThermo/hsCombustionThermo/hsCombustionThermoNew.C
index 4e4aecb6c78e5d2ef3f48eccb87d4dfb8f337d70..9edb9111c2930d32b289fea0c94bf2c25c31c844 100644
--- a/src/thermophysicalModels/reactionThermo/combustionThermo/hsCombustionThermo/hsCombustionThermoNew.C
+++ b/src/thermophysicalModels/reactionThermo/combustionThermo/hsCombustionThermo/hsCombustionThermoNew.C
@@ -44,7 +44,7 @@ Foam::autoPtr<Foam::hsCombustionThermo> Foam::hsCombustionThermo::New
                 "thermophysicalProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -87,7 +87,7 @@ Foam::autoPtr<Foam::hsCombustionThermo> Foam::hsCombustionThermo::NewType
                 "thermophysicalProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/thermophysicalModels/reactionThermo/reactionThermo/hReactionThermo/hReactionThermoNew.C b/src/thermophysicalModels/reactionThermo/reactionThermo/hReactionThermo/hReactionThermoNew.C
index 3a186ec5ee924beffb703a3b934ff94fb9b99ace..df17d001f0a1b4f624a8086ee2221d9ff8096184 100644
--- a/src/thermophysicalModels/reactionThermo/reactionThermo/hReactionThermo/hReactionThermoNew.C
+++ b/src/thermophysicalModels/reactionThermo/reactionThermo/hReactionThermo/hReactionThermoNew.C
@@ -44,7 +44,7 @@ Foam::autoPtr<Foam::hReactionThermo> Foam::hReactionThermo::New
                 "thermophysicalProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -87,7 +87,7 @@ Foam::autoPtr<Foam::hReactionThermo> Foam::hReactionThermo::NewType
                 "thermophysicalProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/thermophysicalModels/reactionThermo/reactionThermo/hsReactionThermo/hsReactionThermoNew.C b/src/thermophysicalModels/reactionThermo/reactionThermo/hsReactionThermo/hsReactionThermoNew.C
index 3607d3458b64505dfe838728d403b0303536ae57..0520bb7289246f68e87c96e2848f1dd2c8b6d542 100644
--- a/src/thermophysicalModels/reactionThermo/reactionThermo/hsReactionThermo/hsReactionThermoNew.C
+++ b/src/thermophysicalModels/reactionThermo/reactionThermo/hsReactionThermo/hsReactionThermoNew.C
@@ -44,7 +44,7 @@ Foam::autoPtr<Foam::hsReactionThermo> Foam::hsReactionThermo::New
                 "thermophysicalProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -87,7 +87,7 @@ Foam::autoPtr<Foam::hsReactionThermo> Foam::hsReactionThermo::NewType
                 "thermophysicalProperties",
                 mesh.time().constant(),
                 mesh,
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
diff --git a/src/thermophysicalModels/solids/solid/solid.H b/src/thermophysicalModels/solids/solid/solid.H
index 189feba08b30d4c46c020a72200df67c3f766cbe..bacdae17e44f1d086ef55837b19f6ae44ebffbbf 100644
--- a/src/thermophysicalModels/solids/solid/solid.H
+++ b/src/thermophysicalModels/solids/solid/solid.H
@@ -131,7 +131,7 @@ public:
 
     // Member Functions
 
-        // Phisical constants which define the solid
+        // Physical constants which define the solid
 
             //- Density [kg/m3]
             inline scalar rho() const;
diff --git a/src/topoChangerFvMesh/linearValveFvMesh/linearValveFvMesh.C b/src/topoChangerFvMesh/linearValveFvMesh/linearValveFvMesh.C
index 44d22a111534bc5e0ce9b720934326af858d55f1..88ce5782ad34aa8537383623efe63cd2fb88ccd3 100644
--- a/src/topoChangerFvMesh/linearValveFvMesh/linearValveFvMesh.C
+++ b/src/topoChangerFvMesh/linearValveFvMesh/linearValveFvMesh.C
@@ -272,8 +272,9 @@ Foam::linearValveFvMesh::linearValveFvMesh(const IOobject& io)
                 "dynamicMeshDict",
                 time().constant(),
                 *this,
-                IOobject::MUST_READ,
-                IOobject::NO_WRITE
+                IOobject::MUST_READ_IF_MODIFIED,
+                IOobject::NO_WRITE,
+                false
             )
         ).subDict(typeName + "Coeffs")
     ),
diff --git a/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C b/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C
index 636e440b31e8f1da04b7b698f55d51de4f8c9cf4..f82895bf3bd00201462082282893b21886df3539 100644
--- a/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C
+++ b/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C
@@ -347,8 +347,9 @@ Foam::linearValveLayersFvMesh::linearValveLayersFvMesh(const IOobject& io)
                 "dynamicMeshDict",
                 time().constant(),
                 *this,
-                IOobject::MUST_READ,
-                IOobject::NO_WRITE
+                IOobject::MUST_READ_IF_MODIFIED,
+                IOobject::NO_WRITE,
+                false
             )
         ).subDict(typeName + "Coeffs")
     )
diff --git a/src/topoChangerFvMesh/mixerFvMesh/mixerFvMesh.C b/src/topoChangerFvMesh/mixerFvMesh/mixerFvMesh.C
index 6a050e1c701b66b84a5c961f3a3a35c233682e85..e4049f988abf002a924a9c1eca5264628027942a 100644
--- a/src/topoChangerFvMesh/mixerFvMesh/mixerFvMesh.C
+++ b/src/topoChangerFvMesh/mixerFvMesh/mixerFvMesh.C
@@ -289,8 +289,9 @@ Foam::mixerFvMesh::mixerFvMesh
                 "dynamicMeshDict",
                 time().constant(),
                 *this,
-                IOobject::MUST_READ,
-                IOobject::NO_WRITE
+                IOobject::MUST_READ_IF_MODIFIED,
+                IOobject::NO_WRITE,
+                false
             )
         ).subDict(typeName + "Coeffs")
     ),
diff --git a/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C b/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C
index 7de4dcce20f1f38f784852f51d2ad6ac06cb353a..b319e1807ae4d0812cb2616db8878594a4b11d55 100644
--- a/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C
+++ b/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C
@@ -257,8 +257,9 @@ Foam::movingConeTopoFvMesh::movingConeTopoFvMesh(const IOobject& io)
                 "dynamicMeshDict",
                 time().constant(),
                 *this,
-                IOobject::MUST_READ,
-                IOobject::NO_WRITE
+                IOobject::MUST_READ_IF_MODIFIED,
+                IOobject::NO_WRITE,
+                false
             )
         ).subDict(typeName + "Coeffs")
     ),
diff --git a/src/transportModels/incompressible/transportModel/transportModel.C b/src/transportModels/incompressible/transportModel/transportModel.C
index c9a0c8e20d8e1e404c81e8b2b24b1a5fc942f81b..e45e8206a92082f2dbe49e295dcddcc561cf0481 100644
--- a/src/transportModels/incompressible/transportModel/transportModel.C
+++ b/src/transportModels/incompressible/transportModel/transportModel.C
@@ -43,7 +43,7 @@ Foam::transportModel::transportModel
             "transportProperties",
             U.time().constant(),
             U.db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     )
diff --git a/src/triSurface/triSurface/surfacePatch/surfacePatchIOList.C b/src/triSurface/triSurface/surfacePatch/surfacePatchIOList.C
index dc044c2d17a07b2bd95aca9de6b84415cf7a63dc..849ab59c14df18f9c5a3849b2ec780412eca32ef 100644
--- a/src/triSurface/triSurface/surfacePatch/surfacePatchIOList.C
+++ b/src/triSurface/triSurface/surfacePatch/surfacePatchIOList.C
@@ -46,8 +46,26 @@ Foam::surfacePatchIOList::surfacePatchIOList
         "(const IOobject& io)";
 
 
-    if (readOpt() == IOobject::MUST_READ)
+    if
+    (
+        readOpt() == IOobject::MUST_READ
+     || readOpt() == IOobject::MUST_READ_IF_MODIFIED
+    )
     {
+        if (readOpt() == IOobject::MUST_READ_IF_MODIFIED)
+        {
+            WarningIn
+            (
+                "surfacePatchIOList::surfacePatchIOList\n"
+                "(\n"
+                "    const IOobject&\n"
+                ")"
+            )   << "Specified IOobject::MUST_READ_IF_MODIFIED but class"
+                << " does not support automatic rereading."
+                << endl;
+        }
+
+
         surfacePatchList& patches = *this;
 
         // read polyPatchList
diff --git a/src/turbulenceModels/compressible/LES/DeardorffDiffStress/DeardorffDiffStress.C b/src/turbulenceModels/compressible/LES/DeardorffDiffStress/DeardorffDiffStress.C
index bfbff460d8fe0c6829e9f140ce560faae30b0d18..0ae14cbcfa8516ab973d3cbd080c6ffeee3675f9 100644
--- a/src/turbulenceModels/compressible/LES/DeardorffDiffStress/DeardorffDiffStress.C
+++ b/src/turbulenceModels/compressible/LES/DeardorffDiffStress/DeardorffDiffStress.C
@@ -60,10 +60,11 @@ DeardorffDiffStress::DeardorffDiffStress
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermoPhysicalModel
+    const basicThermo& thermoPhysicalModel,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, rho, U, phi, thermoPhysicalModel),
+    LESModel(typeName, rho, U, phi, thermoPhysicalModel, turbulenceModelName),
     GenSGSStress(rho, U, phi, thermoPhysicalModel),
 
     ck_
diff --git a/src/turbulenceModels/compressible/LES/DeardorffDiffStress/DeardorffDiffStress.H b/src/turbulenceModels/compressible/LES/DeardorffDiffStress/DeardorffDiffStress.H
index 308f8ca669c4d415772c92505658cd1a6bceb61d..5400e8cf0040adddde73ef93357c25addbb81792 100644
--- a/src/turbulenceModels/compressible/LES/DeardorffDiffStress/DeardorffDiffStress.H
+++ b/src/turbulenceModels/compressible/LES/DeardorffDiffStress/DeardorffDiffStress.H
@@ -101,7 +101,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/LES/GenEddyVisc/GenEddyVisc.C b/src/turbulenceModels/compressible/LES/GenEddyVisc/GenEddyVisc.C
index d379ce2751281bc0f578b2d057105272e277053b..9d00a040d2e711715ca391e7e76992c9d9859dd8 100644
--- a/src/turbulenceModels/compressible/LES/GenEddyVisc/GenEddyVisc.C
+++ b/src/turbulenceModels/compressible/LES/GenEddyVisc/GenEddyVisc.C
@@ -41,12 +41,18 @@ GenEddyVisc::GenEddyVisc
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermoPhysicalModel
+    const basicThermo& thermoPhysicalModel,
+    const word& turbulenceModelName
 )
 :
     LESModel
     (
-        word("GenEddyVisc"), rho, U, phi, thermoPhysicalModel
+        word("GenEddyVisc"),
+        rho,
+        U,
+        phi,
+        thermoPhysicalModel,
+        turbulenceModelName
     ),
 
     ce_
diff --git a/src/turbulenceModels/compressible/LES/GenEddyVisc/GenEddyVisc.H b/src/turbulenceModels/compressible/LES/GenEddyVisc/GenEddyVisc.H
index d27132c00088db98823fdb27c9891aeeb71218ba..7fa5fb056e02ed2722cb24e03e06038c4397a290 100644
--- a/src/turbulenceModels/compressible/LES/GenEddyVisc/GenEddyVisc.H
+++ b/src/turbulenceModels/compressible/LES/GenEddyVisc/GenEddyVisc.H
@@ -90,7 +90,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/LES/GenSGSStress/GenSGSStress.C b/src/turbulenceModels/compressible/LES/GenSGSStress/GenSGSStress.C
index bd70457c9f270998eb575e48742700278d0b528e..eeff8aa1c9e2ffb577b760035884250b04d916a1 100644
--- a/src/turbulenceModels/compressible/LES/GenSGSStress/GenSGSStress.C
+++ b/src/turbulenceModels/compressible/LES/GenSGSStress/GenSGSStress.C
@@ -41,7 +41,8 @@ GenSGSStress::GenSGSStress
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermoPhysicalModel
+    const basicThermo& thermoPhysicalModel,
+    const word& turbulenceModelName
 )
 :
     LESModel
@@ -50,7 +51,8 @@ GenSGSStress::GenSGSStress
         rho,
         U,
         phi,
-        thermoPhysicalModel
+        thermoPhysicalModel,
+        turbulenceModelName
     ),
 
     ce_
diff --git a/src/turbulenceModels/compressible/LES/GenSGSStress/GenSGSStress.H b/src/turbulenceModels/compressible/LES/GenSGSStress/GenSGSStress.H
index 0eaedf16a2a09a3ce5395b442534b8ee57f399f4..0ebcce8408b6642a6f4f2461ef09c274286030a3 100644
--- a/src/turbulenceModels/compressible/LES/GenSGSStress/GenSGSStress.H
+++ b/src/turbulenceModels/compressible/LES/GenSGSStress/GenSGSStress.H
@@ -90,7 +90,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/LES/LESModel/LESModel.C b/src/turbulenceModels/compressible/LES/LESModel/LESModel.C
index e95f9def5c5aee8620ad3c6d06de04c3e5040bd8..1933b0b68c20c2f9ddbd96f7e415f0e31419a9da 100644
--- a/src/turbulenceModels/compressible/LES/LESModel/LESModel.C
+++ b/src/turbulenceModels/compressible/LES/LESModel/LESModel.C
@@ -58,10 +58,11 @@ LESModel::LESModel
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermoPhysicalModel
+    const basicThermo& thermoPhysicalModel,
+    const word& turbulenceModelName
 )
 :
-    turbulenceModel(rho, U, phi, thermoPhysicalModel),
+    turbulenceModel(rho, U, phi, thermoPhysicalModel, turbulenceModelName),
 
     IOdictionary
     (
@@ -70,7 +71,7 @@ LESModel::LESModel
             "LESProperties",
             U.time().constant(),
             U.db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -97,7 +98,8 @@ autoPtr<LESModel> LESModel::New
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermoPhysicalModel
+    const basicThermo& thermoPhysicalModel,
+    const word& turbulenceModelName
 )
 {
     // get model name, but do not register the dictionary
@@ -111,7 +113,7 @@ autoPtr<LESModel> LESModel::New
                 "LESProperties",
                 U.time().constant(),
                 U.db(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -129,9 +131,11 @@ autoPtr<LESModel> LESModel::New
         (
             "LESModel::New"
             "("
+                "const volScalarField&, "
                 "const volVectorField&, "
                 "const surfaceScalarField&, "
-                "const basicThermo&"
+                "const basicThermo&, "
+                "const word&"
             ")"
         )   << "Unknown LESModel type "
             << modelType << nl << nl
@@ -140,7 +144,10 @@ autoPtr<LESModel> LESModel::New
             << exit(FatalError);
     }
 
-    return autoPtr<LESModel>(cstrIter()(rho, U, phi, thermoPhysicalModel));
+    return autoPtr<LESModel>
+    (
+        cstrIter()(rho, U, phi, thermoPhysicalModel, turbulenceModelName)
+    );
 }
 
 
@@ -160,7 +167,20 @@ void LESModel::correct()
 
 bool LESModel::read()
 {
-    if (regIOobject::read())
+    // Bit of trickery : we are both IOdictionary ('RASProperties') and
+    // an regIOobject (from the turbulenceModel). Problem is to distinguish
+    // between the two - we only want to reread the IOdictionary.
+    
+    bool ok = IOdictionary::readData
+    (
+        IOdictionary::readStream
+        (
+            IOdictionary::type()
+        )
+    );
+    IOdictionary::close();
+
+    if (ok)
     {
         if (const dictionary* dictPtr = subDictPtr(type() + "Coeffs"))
         {
diff --git a/src/turbulenceModels/compressible/LES/LESModel/LESModel.H b/src/turbulenceModels/compressible/LES/LESModel/LESModel.H
index a1a05c83db227111e83a4a27e574c840da8e59a0..a4fd1a3246f6af8f5dda3b560f238cc2b6245625 100644
--- a/src/turbulenceModels/compressible/LES/LESModel/LESModel.H
+++ b/src/turbulenceModels/compressible/LES/LESModel/LESModel.H
@@ -121,9 +121,10 @@ public:
                 const volScalarField& rho,
                 const volVectorField& U,
                 const surfaceScalarField& phi,
-                const basicThermo& thermoPhysicalModel
+                const basicThermo& thermoPhysicalModel,
+                const word& turbulenceModelName
             ),
-            (rho, U, phi, thermoPhysicalModel)
+            (rho, U, phi, thermoPhysicalModel, turbulenceModelName)
         );
 
 
@@ -136,7 +137,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
@@ -148,7 +150,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/LES/Smagorinsky/Smagorinsky.C b/src/turbulenceModels/compressible/LES/Smagorinsky/Smagorinsky.C
index d525ab2513df52238b78d895c3a620546c6b6af9..8370b5e50b4437fba690736bd3c3c747231549f3 100644
--- a/src/turbulenceModels/compressible/LES/Smagorinsky/Smagorinsky.C
+++ b/src/turbulenceModels/compressible/LES/Smagorinsky/Smagorinsky.C
@@ -68,10 +68,11 @@ Smagorinsky::Smagorinsky
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermoPhysicalModel
+    const basicThermo& thermoPhysicalModel,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, rho, U, phi, thermoPhysicalModel),
+    LESModel(typeName, rho, U, phi, thermoPhysicalModel, turbulenceModelName),
     GenEddyVisc(rho, U, phi, thermoPhysicalModel),
 
     ck_
diff --git a/src/turbulenceModels/compressible/LES/Smagorinsky/Smagorinsky.H b/src/turbulenceModels/compressible/LES/Smagorinsky/Smagorinsky.H
index 88f943366c2bdda700dd9d608fc2052959afe39f..4ef0452cfc677766e93bc5a00f94d3f15251ea14 100644
--- a/src/turbulenceModels/compressible/LES/Smagorinsky/Smagorinsky.H
+++ b/src/turbulenceModels/compressible/LES/Smagorinsky/Smagorinsky.H
@@ -96,7 +96,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/LES/SpalartAllmaras/SpalartAllmaras.C b/src/turbulenceModels/compressible/LES/SpalartAllmaras/SpalartAllmaras.C
index 1ca27f56f6e287d4dc48cf66b545c25866c49459..fbe4bfa1af5d89b685c5872e2229ffea97f6d41b 100644
--- a/src/turbulenceModels/compressible/LES/SpalartAllmaras/SpalartAllmaras.C
+++ b/src/turbulenceModels/compressible/LES/SpalartAllmaras/SpalartAllmaras.C
@@ -106,10 +106,11 @@ SpalartAllmaras::SpalartAllmaras
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermoPhysicalModel
+    const basicThermo& thermoPhysicalModel,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, rho, U, phi, thermoPhysicalModel),
+    LESModel(typeName, rho, U, phi, thermoPhysicalModel, turbulenceModelName),
 
     sigmaNut_
     (
diff --git a/src/turbulenceModels/compressible/LES/SpalartAllmaras/SpalartAllmaras.H b/src/turbulenceModels/compressible/LES/SpalartAllmaras/SpalartAllmaras.H
index b3f2f5692f748f27d2ca3f406f11b1a3be015f83..17949151df2f3df82a768f01d4e45ac8d7689408 100644
--- a/src/turbulenceModels/compressible/LES/SpalartAllmaras/SpalartAllmaras.H
+++ b/src/turbulenceModels/compressible/LES/SpalartAllmaras/SpalartAllmaras.H
@@ -111,7 +111,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/LES/dynOneEqEddy/dynOneEqEddy.C b/src/turbulenceModels/compressible/LES/dynOneEqEddy/dynOneEqEddy.C
index 80b6cd6928e69fe668adda15b3837943e49aab0e..b3beef1246cab28c84a55e97c3041515c368e70b 100644
--- a/src/turbulenceModels/compressible/LES/dynOneEqEddy/dynOneEqEddy.C
+++ b/src/turbulenceModels/compressible/LES/dynOneEqEddy/dynOneEqEddy.C
@@ -90,10 +90,11 @@ dynOneEqEddy::dynOneEqEddy
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermoPhysicalModel
+    const basicThermo& thermoPhysicalModel,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, rho, U, phi, thermoPhysicalModel),
+    LESModel(typeName, rho, U, phi, thermoPhysicalModel, turbulenceModelName),
     GenEddyVisc(rho, U, phi, thermoPhysicalModel),
 
     filterPtr_(LESfilter::New(U.mesh(), coeffDict())),
diff --git a/src/turbulenceModels/compressible/LES/dynOneEqEddy/dynOneEqEddy.H b/src/turbulenceModels/compressible/LES/dynOneEqEddy/dynOneEqEddy.H
index 6685160e8f2ab7f80652e136ea5c082c34e97101..d2546bf4e20b4fb6c9a95a65fd6087aff6727669 100644
--- a/src/turbulenceModels/compressible/LES/dynOneEqEddy/dynOneEqEddy.H
+++ b/src/turbulenceModels/compressible/LES/dynOneEqEddy/dynOneEqEddy.H
@@ -107,7 +107,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/LES/lowReOneEqEddy/lowReOneEqEddy.C b/src/turbulenceModels/compressible/LES/lowReOneEqEddy/lowReOneEqEddy.C
index 8c5cd79967245e7b8e6b34db68f885392f3370e8..48e89e77929231c4c61405c8df441dd7294cac6a 100644
--- a/src/turbulenceModels/compressible/LES/lowReOneEqEddy/lowReOneEqEddy.C
+++ b/src/turbulenceModels/compressible/LES/lowReOneEqEddy/lowReOneEqEddy.C
@@ -63,10 +63,11 @@ lowReOneEqEddy::lowReOneEqEddy
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermoPhysicalModel
+    const basicThermo& thermoPhysicalModel,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, rho, U, phi, thermoPhysicalModel),
+    LESModel(typeName, rho, U, phi, thermoPhysicalModel, turbulenceModelName),
     GenEddyVisc(rho, U, phi, thermoPhysicalModel),
 
     ck_
diff --git a/src/turbulenceModels/compressible/LES/lowReOneEqEddy/lowReOneEqEddy.H b/src/turbulenceModels/compressible/LES/lowReOneEqEddy/lowReOneEqEddy.H
index babd2fdde150c2bda70197f560132a2cbc5523ce..693b80adcea6d3b8804bb6654a4744ed81181ff2 100644
--- a/src/turbulenceModels/compressible/LES/lowReOneEqEddy/lowReOneEqEddy.H
+++ b/src/turbulenceModels/compressible/LES/lowReOneEqEddy/lowReOneEqEddy.H
@@ -98,7 +98,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/LES/oneEqEddy/oneEqEddy.C b/src/turbulenceModels/compressible/LES/oneEqEddy/oneEqEddy.C
index 961ffed4dfabea6fb25ea75fd3980979c2b0681f..593ba56a69a6998dca1922fedfbbb3a24297214a 100644
--- a/src/turbulenceModels/compressible/LES/oneEqEddy/oneEqEddy.C
+++ b/src/turbulenceModels/compressible/LES/oneEqEddy/oneEqEddy.C
@@ -59,10 +59,11 @@ oneEqEddy::oneEqEddy
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermoPhysicalModel
+    const basicThermo& thermoPhysicalModel,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, rho, U, phi, thermoPhysicalModel),
+    LESModel(typeName, rho, U, phi, thermoPhysicalModel, turbulenceModelName),
     GenEddyVisc(rho, U, phi, thermoPhysicalModel),
 
     ck_
diff --git a/src/turbulenceModels/compressible/LES/oneEqEddy/oneEqEddy.H b/src/turbulenceModels/compressible/LES/oneEqEddy/oneEqEddy.H
index ac83307700e571f85ef3ed8e5d55deb20b4f3a2f..de962849324d08dd86bf5233045689cbba45bb63 100644
--- a/src/turbulenceModels/compressible/LES/oneEqEddy/oneEqEddy.H
+++ b/src/turbulenceModels/compressible/LES/oneEqEddy/oneEqEddy.H
@@ -101,7 +101,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/RAS/LRR/LRR.C b/src/turbulenceModels/compressible/RAS/LRR/LRR.C
index a67a4978515e3a1c3449c5e50aaa4c1861086f89..0b0efbb58b6f9d493cc750d0a8856e207294fd40 100644
--- a/src/turbulenceModels/compressible/RAS/LRR/LRR.C
+++ b/src/turbulenceModels/compressible/RAS/LRR/LRR.C
@@ -50,10 +50,11 @@ LRR::LRR
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, rho, U, phi, thermophysicalModel),
+    RASModel(typeName, rho, U, phi, thermophysicalModel, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/compressible/RAS/LRR/LRR.H b/src/turbulenceModels/compressible/RAS/LRR/LRR.H
index e1241528d6d1ac7d01525e7c3a4045172ec05652..d9394d2f3ad162925e215ed9a2a3db94a2c69c3b 100644
--- a/src/turbulenceModels/compressible/RAS/LRR/LRR.H
+++ b/src/turbulenceModels/compressible/RAS/LRR/LRR.H
@@ -116,7 +116,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.C b/src/turbulenceModels/compressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.C
index 43103326a96e9b0fb321ecca94c5c27fe7bc8e96..1a4ebdbf63ae74612a70e565872d3fa9c8ace433 100644
--- a/src/turbulenceModels/compressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.C
+++ b/src/turbulenceModels/compressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.C
@@ -50,10 +50,11 @@ LaunderGibsonRSTM::LaunderGibsonRSTM
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, rho, U, phi, thermophysicalModel),
+    RASModel(typeName, rho, U, phi, thermophysicalModel, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/compressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.H b/src/turbulenceModels/compressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.H
index e9343bec59868cd9bb43d61f9d3d013be639de01..9a9f81ccd4c8add62d384c4a4b67df623f1dea9d 100644
--- a/src/turbulenceModels/compressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.H
+++ b/src/turbulenceModels/compressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.H
@@ -125,7 +125,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/RAS/LaunderSharmaKE/LaunderSharmaKE.C b/src/turbulenceModels/compressible/RAS/LaunderSharmaKE/LaunderSharmaKE.C
index b7d12e0823088f97d46f0819979349947c6223ca..455b65f48f302d970bd224795fadbfa6669d2803 100644
--- a/src/turbulenceModels/compressible/RAS/LaunderSharmaKE/LaunderSharmaKE.C
+++ b/src/turbulenceModels/compressible/RAS/LaunderSharmaKE/LaunderSharmaKE.C
@@ -65,10 +65,11 @@ LaunderSharmaKE::LaunderSharmaKE
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, rho, U, phi, thermophysicalModel),
+    RASModel(typeName, rho, U, phi, thermophysicalModel, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/compressible/RAS/LaunderSharmaKE/LaunderSharmaKE.H b/src/turbulenceModels/compressible/RAS/LaunderSharmaKE/LaunderSharmaKE.H
index ce85709cfea4a8cd4c33cd4dc7470a79555ff79a..c2952c3b4d1caa107f46b4a8ff6a08a29b5dd298 100644
--- a/src/turbulenceModels/compressible/RAS/LaunderSharmaKE/LaunderSharmaKE.H
+++ b/src/turbulenceModels/compressible/RAS/LaunderSharmaKE/LaunderSharmaKE.H
@@ -109,7 +109,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/RAS/Make/files b/src/turbulenceModels/compressible/RAS/Make/files
index 4301cde42596cba22b42bcd182566a2e6bb0ad62..ccfc9b6b27a16a05e40975bb1648c891fc74f054 100644
--- a/src/turbulenceModels/compressible/RAS/Make/files
+++ b/src/turbulenceModels/compressible/RAS/Make/files
@@ -35,12 +35,8 @@ kqRWallFunctions = $(wallFunctions)/kqRWallFunctions
 $(kqRWallFunctions)/kqRWallFunction/kqRWallFunctionFvPatchFields.C
 
 /* Patch fields */
-derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C
 derivedFvPatchFields/turbulentMixingLengthDissipationRateInlet/turbulentMixingLengthDissipationRateInletFvPatchScalarField.C
 derivedFvPatchFields/turbulentMixingLengthFrequencyInlet/turbulentMixingLengthFrequencyInletFvPatchScalarField.C
-derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.C
-derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C
-derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.C
 backwardsCompatibility/wallFunctions/backwardsCompatibilityWallFunctions.C
 
 LIB = $(FOAM_LIBBIN)/libcompressibleRASModels
diff --git a/src/turbulenceModels/compressible/RAS/Make/options b/src/turbulenceModels/compressible/RAS/Make/options
index b2b75c89904ed0b46986a88d2e05a86cee9effa7..0e3ec0f8fbef11be7d6a1875006fbb3b1d9fc8bb 100644
--- a/src/turbulenceModels/compressible/RAS/Make/options
+++ b/src/turbulenceModels/compressible/RAS/Make/options
@@ -1,6 +1,7 @@
 EXE_INC = \
     -I$(LIB_SRC)/turbulenceModels \
     -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
+    -I$(LIB_SRC)/thermophysicalModels/basicSolidThermo/lnInclude \
     -I$(LIB_SRC)/finiteVolume/lnInclude \
     -I$(LIB_SRC)/meshTools/lnInclude \
 
diff --git a/src/turbulenceModels/compressible/RAS/RASModel/RASModel.C b/src/turbulenceModels/compressible/RAS/RASModel/RASModel.C
index 755318a1d8c1d41619c3e2db19396af3f95e2bc9..b0d48870d1f0a144860293282a92589b5642f484 100644
--- a/src/turbulenceModels/compressible/RAS/RASModel/RASModel.C
+++ b/src/turbulenceModels/compressible/RAS/RASModel/RASModel.C
@@ -59,10 +59,11 @@ RASModel::RASModel
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    turbulenceModel(rho, U, phi, thermophysicalModel),
+    turbulenceModel(rho, U, phi, thermophysicalModel, turbulenceModelName),
 
     IOdictionary
     (
@@ -71,7 +72,7 @@ RASModel::RASModel
             "RASProperties",
             U.time().constant(),
             U.db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -103,7 +104,8 @@ autoPtr<RASModel> RASModel::New
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 {
     // get model name, but do not register the dictionary
@@ -117,7 +119,7 @@ autoPtr<RASModel> RASModel::New
                 "RASProperties",
                 U.time().constant(),
                 U.db(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -138,7 +140,8 @@ autoPtr<RASModel> RASModel::New
                 "const volScalarField&, "
                 "const volVectorField&, "
                 "const surfaceScalarField&, "
-                "basicThermo&"
+                "basicThermo&, "
+                "const word&"
             ")"
         )   << "Unknown RASModel type "
             << modelType << nl << nl
@@ -149,7 +152,7 @@ autoPtr<RASModel> RASModel::New
 
     return autoPtr<RASModel>
     (
-        cstrIter()(rho, U, phi, thermophysicalModel)
+        cstrIter()(rho, U, phi, thermophysicalModel, turbulenceModelName)
     );
 }
 
@@ -212,7 +215,22 @@ void RASModel::correct()
 
 bool RASModel::read()
 {
-    if (regIOobject::read())
+    //if (regIOobject::read())
+
+    // Bit of trickery : we are both IOdictionary ('RASProperties') and
+    // an regIOobject from the turbulenceModel level. Problem is to distinguish
+    // between the two - we only want to reread the IOdictionary.
+    
+    bool ok = IOdictionary::readData
+    (
+        IOdictionary::readStream
+        (
+            IOdictionary::type()
+        )
+    );
+    IOdictionary::close();
+
+    if (ok)
     {
         lookup("turbulence") >> turbulence_;
 
diff --git a/src/turbulenceModels/compressible/RAS/RASModel/RASModel.H b/src/turbulenceModels/compressible/RAS/RASModel/RASModel.H
index 331f86457ad62fdc7fe893cdc4f22fc4d0232b78..fd55a3b671fc9688721cc469dbbd77e4971ec1ab 100644
--- a/src/turbulenceModels/compressible/RAS/RASModel/RASModel.H
+++ b/src/turbulenceModels/compressible/RAS/RASModel/RASModel.H
@@ -134,9 +134,10 @@ public:
                 const volScalarField& rho,
                 const volVectorField& U,
                 const surfaceScalarField& phi,
-                const basicThermo& thermoPhysicalModel
+                const basicThermo& thermoPhysicalModel,
+                const word& turbulenceModelName
             ),
-            (rho, U, phi, thermoPhysicalModel)
+            (rho, U, phi, thermoPhysicalModel, turbulenceModelName)
         );
 
 
@@ -149,7 +150,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
@@ -161,7 +163,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/RAS/RNGkEpsilon/RNGkEpsilon.C b/src/turbulenceModels/compressible/RAS/RNGkEpsilon/RNGkEpsilon.C
index 3aa82622fb85fbff85df8ed7bee402fd496bc4a2..44c5c0fbc11199c52263392664448c317dc8d2b9 100644
--- a/src/turbulenceModels/compressible/RAS/RNGkEpsilon/RNGkEpsilon.C
+++ b/src/turbulenceModels/compressible/RAS/RNGkEpsilon/RNGkEpsilon.C
@@ -49,10 +49,11 @@ RNGkEpsilon::RNGkEpsilon
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, rho, U, phi, thermophysicalModel),
+    RASModel(typeName, rho, U, phi, thermophysicalModel, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/compressible/RAS/RNGkEpsilon/RNGkEpsilon.H b/src/turbulenceModels/compressible/RAS/RNGkEpsilon/RNGkEpsilon.H
index 43b39a7ac12fe1b3526c29fbe72695fca5bda1ca..c0baeb01e887261b340c655e9f423bc731af627a 100644
--- a/src/turbulenceModels/compressible/RAS/RNGkEpsilon/RNGkEpsilon.H
+++ b/src/turbulenceModels/compressible/RAS/RNGkEpsilon/RNGkEpsilon.H
@@ -105,7 +105,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/RAS/SpalartAllmaras/SpalartAllmaras.C b/src/turbulenceModels/compressible/RAS/SpalartAllmaras/SpalartAllmaras.C
index 821f2cdb207afd29eb8720285445d0dc892106d9..ce16b21445cbaf52718c696fcc82ef11ee981d35 100644
--- a/src/turbulenceModels/compressible/RAS/SpalartAllmaras/SpalartAllmaras.C
+++ b/src/turbulenceModels/compressible/RAS/SpalartAllmaras/SpalartAllmaras.C
@@ -109,10 +109,11 @@ SpalartAllmaras::SpalartAllmaras
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, rho, U, phi, thermophysicalModel),
+    RASModel(typeName, rho, U, phi, thermophysicalModel, turbulenceModelName),
 
     sigmaNut_
     (
diff --git a/src/turbulenceModels/compressible/RAS/SpalartAllmaras/SpalartAllmaras.H b/src/turbulenceModels/compressible/RAS/SpalartAllmaras/SpalartAllmaras.H
index 8164624bddc7caa7d8396af5f0e7f2d81fbef89e..c29146f1b9168673d25d87c3edbb8341990ada8a 100644
--- a/src/turbulenceModels/compressible/RAS/SpalartAllmaras/SpalartAllmaras.H
+++ b/src/turbulenceModels/compressible/RAS/SpalartAllmaras/SpalartAllmaras.H
@@ -146,7 +146,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.C b/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.C
index b0c1390c4b95f1b672959b1013a9917c47b7155a..5cce898e22b9cf8b609d278b3824c09a72d80f75 100644
--- a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.C
+++ b/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.C
@@ -221,24 +221,13 @@ void epsilonWallFunctionFvPatchScalarField::updateCoeffs()
     {
         label faceCellI = patch().faceCells()[faceI];
 
-        scalar yPlus =
-            Cmu25*y[faceI]*sqrt(k[faceCellI])
-           /(muw[faceI]/rhow[faceI]);
-
         epsilon[faceCellI] = Cmu75*pow(k[faceCellI], 1.5)/(kappa_*y[faceI]);
 
-        if (yPlus > yPlusLam_)
-        {
-            G[faceCellI] =
-                (mutw[faceI] + muw[faceI])
-               *magGradUw[faceI]
-               *Cmu25*sqrt(k[faceCellI])
-               /(kappa_*y[faceI]);
-        }
-        else
-        {
-            G[faceCellI] = 0.0;
-        }
+        G[faceCellI] =
+            (mutw[faceI] + muw[faceI])
+           *magGradUw[faceI]
+           *Cmu25*sqrt(k[faceCellI])
+           /(kappa_*y[faceI]);
     }
 
     fixedInternalValueFvPatchField<scalar>::updateCoeffs();
diff --git a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.C b/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.C
index d8437b07c54e6a54c44535dbe770d8bda0727053..1ab15d336fb6a2c8218a6714f2d175925eb091ca 100644
--- a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.C
+++ b/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.C
@@ -223,28 +223,15 @@ void omegaWallFunctionFvPatchScalarField::updateCoeffs()
     {
         label faceCellI = patch().faceCells()[faceI];
 
-        scalar yPlus =
-            Cmu25*y[faceI]*sqrt(k[faceCellI])
-           /(muw[faceI]/rhow[faceI]);
-
         scalar omegaVis = 6.0*muw[faceI]/(rhow[faceI]*beta1_*sqr(y[faceI]));
-
         scalar omegaLog = sqrt(k[faceCellI])/(Cmu25*kappa_*y[faceI]);
-
         omega[faceCellI] = sqrt(sqr(omegaVis) + sqr(omegaLog));
 
-        if (yPlus > yPlusLam_)
-        {
-            G[faceCellI] =
-                (mutw[faceI] + muw[faceI])
-               *magGradUw[faceI]
-               *Cmu25*sqrt(k[faceCellI])
-               /(kappa_*y[faceI]);
-        }
-        else
-        {
-            G[faceCellI] = 0.0;
-        }
+        G[faceCellI] =
+            (mutw[faceI] + muw[faceI])
+           *magGradUw[faceI]
+           *Cmu25*sqrt(k[faceCellI])
+           /(kappa_*y[faceI]);
     }
 
     fixedInternalValueFvPatchField<scalar>::updateCoeffs();
diff --git a/src/turbulenceModels/compressible/RAS/kEpsilon/kEpsilon.C b/src/turbulenceModels/compressible/RAS/kEpsilon/kEpsilon.C
index 023cf7d9b6f4c793ade9b1391d4a5997d4080622..efc93ab95eebea9f01918edf3b1446bec43cb49f 100644
--- a/src/turbulenceModels/compressible/RAS/kEpsilon/kEpsilon.C
+++ b/src/turbulenceModels/compressible/RAS/kEpsilon/kEpsilon.C
@@ -49,10 +49,11 @@ kEpsilon::kEpsilon
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, rho, U, phi, thermophysicalModel),
+    RASModel(typeName, rho, U, phi, thermophysicalModel, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/compressible/RAS/kEpsilon/kEpsilon.H b/src/turbulenceModels/compressible/RAS/kEpsilon/kEpsilon.H
index ca00c5d267b1fb9a6a98596fdde8080a57d92cc2..9269be0620fd0b560a385ba945445ed13665480c 100644
--- a/src/turbulenceModels/compressible/RAS/kEpsilon/kEpsilon.H
+++ b/src/turbulenceModels/compressible/RAS/kEpsilon/kEpsilon.H
@@ -101,7 +101,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/RAS/kOmegaSST/kOmegaSST.C b/src/turbulenceModels/compressible/RAS/kOmegaSST/kOmegaSST.C
index b7644b3d543241df1a67a1889cf162f0b7611bd3..d0c7b9b5177d3d8e44bdd8197ca40798e24dcf47 100644
--- a/src/turbulenceModels/compressible/RAS/kOmegaSST/kOmegaSST.C
+++ b/src/turbulenceModels/compressible/RAS/kOmegaSST/kOmegaSST.C
@@ -92,10 +92,11 @@ kOmegaSST::kOmegaSST
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, rho, U, phi, thermophysicalModel),
+    RASModel(typeName, rho, U, phi, thermophysicalModel, turbulenceModelName),
 
     alphaK1_
     (
diff --git a/src/turbulenceModels/compressible/RAS/kOmegaSST/kOmegaSST.H b/src/turbulenceModels/compressible/RAS/kOmegaSST/kOmegaSST.H
index 0ee1502aa9e7b8451c0d8f6254bb6220bc2e5587..240a3bb99d931be7de162faa31858166b4a84f56 100644
--- a/src/turbulenceModels/compressible/RAS/kOmegaSST/kOmegaSST.H
+++ b/src/turbulenceModels/compressible/RAS/kOmegaSST/kOmegaSST.H
@@ -184,7 +184,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/RAS/laminar/laminar.C b/src/turbulenceModels/compressible/RAS/laminar/laminar.C
index 6467eba7a027e5ab73239175670bebd1a2a334cb..f0069c4e9a140ea74b5782d30a4b5d5a7936778c 100644
--- a/src/turbulenceModels/compressible/RAS/laminar/laminar.C
+++ b/src/turbulenceModels/compressible/RAS/laminar/laminar.C
@@ -47,10 +47,11 @@ laminar::laminar
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, rho, U, phi, thermophysicalModel)
+    RASModel(typeName, rho, U, phi, thermophysicalModel, turbulenceModelName)
 {}
 
 
diff --git a/src/turbulenceModels/compressible/RAS/laminar/laminar.H b/src/turbulenceModels/compressible/RAS/laminar/laminar.H
index 5543d532a14df0e06635528423db28e8241b72dd..c465fc9a4aef52ed9cf476a654d35a54ce24c8d6 100644
--- a/src/turbulenceModels/compressible/RAS/laminar/laminar.H
+++ b/src/turbulenceModels/compressible/RAS/laminar/laminar.H
@@ -68,7 +68,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/RAS/realizableKE/realizableKE.C b/src/turbulenceModels/compressible/RAS/realizableKE/realizableKE.C
index 9a1c2a405c8f5c580c4a06f9334fc89778411499..4490a43506f16f690831804e9624d3b856fc5a39 100644
--- a/src/turbulenceModels/compressible/RAS/realizableKE/realizableKE.C
+++ b/src/turbulenceModels/compressible/RAS/realizableKE/realizableKE.C
@@ -90,10 +90,11 @@ realizableKE::realizableKE
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, rho, U, phi, thermophysicalModel),
+    RASModel(typeName, rho, U, phi, thermophysicalModel, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/compressible/RAS/realizableKE/realizableKE.H b/src/turbulenceModels/compressible/RAS/realizableKE/realizableKE.H
index ab86cd0015becd6723ab9043e55a0f394c22ea4f..45332c798814bb95961a17a43eaebe06f0a1019b 100644
--- a/src/turbulenceModels/compressible/RAS/realizableKE/realizableKE.H
+++ b/src/turbulenceModels/compressible/RAS/realizableKE/realizableKE.H
@@ -123,7 +123,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/turbulenceModel/Make/files b/src/turbulenceModels/compressible/turbulenceModel/Make/files
index 3f01b203540f2e54e5d05e0ab46f66cd5284405a..8bd26ec944e639545dffdd4e8bc81a6e3830784d 100644
--- a/src/turbulenceModels/compressible/turbulenceModel/Make/files
+++ b/src/turbulenceModels/compressible/turbulenceModel/Make/files
@@ -1,4 +1,11 @@
 turbulenceModel.C
 laminar/laminar.C
 
+derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C
+derivedFvPatchFields/temperatureCoupledBase/temperatureCoupledBase.C
+derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.C
+derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C
+derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.C
+
+
 LIB = $(FOAM_LIBBIN)/libcompressibleTurbulenceModel
diff --git a/src/turbulenceModels/compressible/turbulenceModel/Make/options b/src/turbulenceModels/compressible/turbulenceModel/Make/options
index 075a03796ee454c87f1bc296e0e921bf21ef3019..1a60c8b98c64d49964d8c053e9737c5ca5ce8c7c 100644
--- a/src/turbulenceModels/compressible/turbulenceModel/Make/options
+++ b/src/turbulenceModels/compressible/turbulenceModel/Make/options
@@ -1,8 +1,14 @@
 EXE_INC = \
     -I$(LIB_SRC)/finiteVolume/lnInclude \
+    -I$(LIB_SRC)/meshTools/lnInclude \
     -I$(LIB_SRC)/turbulenceModels \
-    -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude
+    -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
+    -I$(LIB_SRC)/thermophysicalModels/basicSolidThermo/lnInclude
 
 LIB_LIBS = \
-    -lfiniteVolume
+    -lbasicSolidThermo \
+    -lbasicThermophysicalModels \
+    -lspecie \
+    -lfiniteVolume \
+    -lmeshTools
 
diff --git a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/temperatureCoupledBase/temperatureCoupledBase.C b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/temperatureCoupledBase/temperatureCoupledBase.C
new file mode 100644
index 0000000000000000000000000000000000000000..3fe205f4562f8aeb495b8c26fe7c9c57589cdc0a
--- /dev/null
+++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/temperatureCoupledBase/temperatureCoupledBase.C
@@ -0,0 +1,181 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "temperatureCoupledBase.H"
+#include "volFields.H"
+#include "basicSolidThermo.H"
+#include "turbulenceModel.H"
+#include "basicThermo.H"
+
+// * * * * * * * * * * * * * Static Member Data  * * * * * * * * * * * * * * //
+
+template<>
+const char* Foam::NamedEnum<Foam::temperatureCoupledBase::KMethodType, 4>::
+names[] =
+{
+    "basicThermo",
+    "solidThermo",
+    "directionalSolidThermo",
+    "lookup"
+};
+
+
+const Foam::NamedEnum<Foam::temperatureCoupledBase::KMethodType, 4> 
+    Foam::temperatureCoupledBase::KMethodTypeNames_;
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::temperatureCoupledBase::temperatureCoupledBase
+(
+    const fvPatch& patch,
+    const word& calculationType,
+    const word& KName
+)
+:
+    patch_(patch),
+    method_(KMethodTypeNames_[calculationType]),
+    KName_(KName)
+{}
+
+
+Foam::temperatureCoupledBase::temperatureCoupledBase
+(
+    const fvPatch& patch,
+    const dictionary& dict
+)
+:
+    patch_(patch),
+    method_(KMethodTypeNames_.read(dict.lookup("K"))),
+    KName_(dict.lookup("KName"))
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+Foam::tmp<Foam::scalarField> Foam::temperatureCoupledBase::K
+(
+    const scalarField& Tp
+) const
+{
+    const fvMesh& mesh = patch_.boundaryMesh().mesh();
+
+    switch (method_)
+    {
+        case BASICTHERMO:
+        {
+            const compressible::turbulenceModel& model =
+                mesh.lookupObject<compressible::turbulenceModel>
+                (
+                    "turbulenceModel"
+                );
+
+            return
+                model.alphaEff()().boundaryField()[patch_.index()]
+               *model.thermo().Cp(Tp, patch_.index());
+        }
+        break;
+
+        case SOLIDTHERMO:
+        {
+            const basicSolidThermo& thermo =
+                mesh.lookupObject<basicSolidThermo>
+                (
+                    "solidThermophysicalProperties"
+                );
+            return thermo.K(patch_.index());
+        }
+        break;
+
+        case DIRECTIONALSOLIDTHERMO:
+        {
+            vectorField n = patch_.nf();
+
+            const basicSolidThermo& thermo =
+                mesh.lookupObject<basicSolidThermo>
+                (
+                    "solidThermophysicalProperties"
+                );
+            return n & thermo.directionalK(patch_.index()) & n;
+        }
+        break;
+
+        case LOOKUP:
+        {
+            if (mesh.objectRegistry::foundObject<volScalarField>(KName_))
+            {
+                return patch_.lookupPatchField<volScalarField, scalar>(KName_);
+            }
+            else if
+            (
+                mesh.objectRegistry::foundObject<volSymmTensorField>(KName_)
+            )
+            {
+                const symmTensorField& KWall =
+                    patch_.lookupPatchField<volSymmTensorField, scalar>(KName_);
+
+                vectorField n = patch_.nf();
+
+                return n & KWall & n;
+            }
+            else
+            {
+                FatalErrorIn("temperatureCoupledBase::K() const")
+                    << "Did not find field " << KName_
+                    << " on mesh " << mesh.name() << " patch " << patch_.name()
+                    << endl
+                    << "Please set 'K' to one of " << KMethodTypeNames_.toc()
+                    << " and 'KName' to the name of the volScalar"
+                    << " or volSymmTensor field (if K=lookup)"
+                    << exit(FatalError);
+
+                return scalarField(0);
+            }
+        }
+
+        default:
+        {
+            FatalErrorIn("temperatureCoupledBase::K() const")
+                << "Unimplemented method " << method_ << endl
+                << "Please set 'K' to one of " << KMethodTypeNames_.toc()
+                << " and 'KName' to the name of the volScalar"
+                << " or volSymmTensor field (if K=lookup)"
+                << exit(FatalError);            
+        }
+        break;
+    }
+    return scalarField(0);
+}
+
+
+void Foam::temperatureCoupledBase::write(Ostream& os) const
+{
+    os.writeKeyword("K") << KMethodTypeNames_[method_]
+        << token::END_STATEMENT << nl;
+    os.writeKeyword("KName") << KName_ << token::END_STATEMENT << nl;
+}
+
+
+// ************************************************************************* //
diff --git a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/temperatureCoupledBase/temperatureCoupledBase.H b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/temperatureCoupledBase/temperatureCoupledBase.H
new file mode 100644
index 0000000000000000000000000000000000000000..57ed78cefa546cd7c0ba5cf72791bed6eb1f0d62
--- /dev/null
+++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/temperatureCoupledBase/temperatureCoupledBase.H
@@ -0,0 +1,137 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software: you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+
+Class
+    temperatureCoupledBase
+
+Description
+    Common functions for use in temperature coupled boundaries. For now only
+
+    K() : heat conduction at patch. Gets supplied how to lookup/calculate K:
+
+    - 'lookup' : lookup volScalarField (or volSymmTensorField) with name
+    - 'basicThermo' : use basicThermo and default compressible::turbulenceModel
+       to calculate K
+    - 'solidThermo' : use basicSolidThermo K()
+    - 'directionalSolidThermo' directionalK()
+
+SourceFiles
+    temperatureCoupledBase.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef temperatureCoupledBase_H
+#define temperatureCoupledBase_H
+
+#include "scalarField.H"
+#include "NamedEnum.H"
+#include "fvPatch.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+        Class temperatureCoupledBase Declaration
+\*---------------------------------------------------------------------------*/
+
+class temperatureCoupledBase
+{
+public:
+        //- Type of supplied K
+        enum KMethodType
+        {
+            BASICTHERMO,
+            SOLIDTHERMO,
+            DIRECTIONALSOLIDTHERMO,
+            LOOKUP
+        };
+
+private:
+
+    // Private data
+
+        static const NamedEnum<KMethodType, 4> KMethodTypeNames_;
+
+        //- Underlying patch
+        const fvPatch& patch_;
+
+        //- How to get K
+        const KMethodType method_;
+
+        //- Name of thermal conductivity field (if looked up from database)
+        const word KName_;
+
+
+public:
+
+    // Constructors
+
+        //- Construct from patch and K name
+        temperatureCoupledBase
+        (
+            const fvPatch& patch,
+            const word& calculationMethod,
+            const word& KName
+        );
+
+        //- Construct from patch and dictionary
+        temperatureCoupledBase
+        (
+            const fvPatch& patch,
+            const dictionary& dict
+        );
+
+
+    // Member functions
+
+        //- Method to obtain K
+        word KMethod() const
+        {
+            return KMethodTypeNames_[method_];
+        }
+        
+        //- Name of thermal conductivity field
+        const word& KName() const
+        {
+            return KName_;
+        }
+        
+        //- Given patch temperature calculate corresponding K field
+        tmp<scalarField> K(const scalarField& Tp) const;
+
+        //- Write
+        void write(Ostream&) const;
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C
similarity index 92%
rename from src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C
rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C
index f529a8caf1c11ceda285e9be1e2730a2db1b05f2..4b2a0c20b95a5f6f8e2918cf18aa0b9064cee195 100644
--- a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C
+++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C
@@ -27,7 +27,6 @@ License
 #include "addToRunTimeSelectionTable.H"
 #include "fvPatchFieldMapper.H"
 #include "volFields.H"
-#include "RASModel.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
@@ -62,6 +61,7 @@ turbulentHeatFluxTemperatureFvPatchScalarField
 )
 :
     fixedGradientFvPatchScalarField(p, iF),
+    temperatureCoupledBase(patch(), "undefined", "undefined-K"),
     heatSource_(hsPower),
     q_(p.size(), 0.0)
 {}
@@ -77,6 +77,7 @@ turbulentHeatFluxTemperatureFvPatchScalarField
 )
 :
     fixedGradientFvPatchScalarField(ptf, p, iF, mapper),
+    temperatureCoupledBase(patch(), ptf.KMethod(), ptf.KName()),
     heatSource_(ptf.heatSource_),
     q_(ptf.q_, mapper)
 {}
@@ -91,6 +92,7 @@ turbulentHeatFluxTemperatureFvPatchScalarField
 )
 :
     fixedGradientFvPatchScalarField(p, iF),
+    temperatureCoupledBase(patch(), dict),
     heatSource_(heatSourceTypeNames_.read(dict.lookup("heatSource"))),
     q_("q", dict, p.size())
 {
@@ -106,6 +108,7 @@ turbulentHeatFluxTemperatureFvPatchScalarField
 )
 :
     fixedGradientFvPatchScalarField(thftpsf),
+    temperatureCoupledBase(patch(), thftpsf.KMethod(), thftpsf.KName()),
     heatSource_(thftpsf.heatSource_),
     q_(thftpsf.q_)
 {}
@@ -119,6 +122,7 @@ turbulentHeatFluxTemperatureFvPatchScalarField
 )
 :
     fixedGradientFvPatchScalarField(thftpsf, iF),
+    temperatureCoupledBase(patch(), thftpsf.KMethod(), thftpsf.KName()),
     heatSource_(thftpsf.heatSource_),
     q_(thftpsf.q_)
 {}
@@ -161,27 +165,19 @@ void turbulentHeatFluxTemperatureFvPatchScalarField::updateCoeffs()
         return;
     }
 
-    const label patchI = patch().index();
-
-    const RASModel& rasModel = db().lookupObject<RASModel>("RASProperties");
-
-    const scalarField alphaEffp = rasModel.alphaEff(patchI);
-
     const scalarField& Tp = *this;
 
-    const scalarField Cpp = rasModel.thermo().Cp(Tp, patchI);
-
     switch (heatSource_)
     {
         case hsPower:
         {
             const scalar Ap = gSum(patch().magSf());
-            gradient() = q_/(Ap*Cpp*alphaEffp);
+            gradient() = q_/(Ap*K(Tp));
             break;
         }
         case hsFlux:
         {
-            gradient() = q_/(Cpp*alphaEffp);
+            gradient() = q_/K(Tp);
             break;
         }
         default:
@@ -208,12 +204,11 @@ void turbulentHeatFluxTemperatureFvPatchScalarField::write
     Ostream& os
 ) const
 {
-    fvPatchScalarField::write(os);
+    fixedGradientFvPatchScalarField::write(os);
     os.writeKeyword("heatSource") << heatSourceTypeNames_[heatSource_]
         << token::END_STATEMENT << nl;
+    temperatureCoupledBase::write(os);
     q_.writeEntry("q", os);
-    gradient().writeEntry("gradient", os);
-    writeEntry("value", os);
 }
 
 
diff --git a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.H b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.H
similarity index 96%
rename from src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.H
rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.H
index d40ec1ab7c87d6cc0ada916079f3b738272e8afa..8d9024daf73410f8c27f6b4038bf88a07cd128d2 100644
--- a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.H
+++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.H
@@ -36,6 +36,7 @@ Description
             type            compressible::turbulentHeatFluxTemperature;
             heatSource      flux;        // power [W]; flux [W/m2]
             q               uniform 10;  // heat power or flux
+            K               basicThermo; // calculate K by alphaEff*thermo.Cp
             value           uniform 300; // initial temperature value
         }
 
@@ -48,9 +49,8 @@ SourceFiles
 #ifndef turbulentHeatFluxTemperatureFvPatchScalarFields_H
 #define turbulentHeatFluxTemperatureFvPatchScalarFields_H
 
-#include "fvPatchFields.H"
 #include "fixedGradientFvPatchFields.H"
-#include "NamedEnum.H"
+#include "temperatureCoupledBase.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
@@ -65,7 +65,8 @@ namespace compressible
 
 class turbulentHeatFluxTemperatureFvPatchScalarField
 :
-    public fixedGradientFvPatchScalarField
+    public fixedGradientFvPatchScalarField,
+    public temperatureCoupledBase
 {
 public:
 
diff --git a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.C b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.C
similarity index 97%
rename from src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.C
rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.C
index 89eaaabd480e979ba7b368e9755a872c70dbe9b2..f85e8f5440ac4581d2f9df3f361f5828e2a6cbb3 100644
--- a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.C
+++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.C
@@ -36,7 +36,7 @@ Foam::regionProperties::regionProperties(const Time& runTime)
             "regionProperties",
             runTime.time().constant(),
             runTime.db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
diff --git a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.H b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.H
similarity index 100%
rename from src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.H
rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/regionProperties.H
diff --git a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.C b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.C
similarity index 82%
rename from src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.C
rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.C
index 381b24ae0c0f4bf4de772ee725105498a32b552f..9dc81a1f44fb36298b080e8690341cb3914d61cd 100644
--- a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.C
+++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.C
@@ -29,8 +29,6 @@ License
 #include "volFields.H"
 #include "directMappedPatchBase.H"
 #include "regionProperties.H"
-#include "basicThermo.H"
-#include "RASModel.H"
 
 // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
 
@@ -111,8 +109,8 @@ turbulentTemperatureCoupledBaffleFvPatchScalarField
 )
 :
     fixedValueFvPatchScalarField(p, iF),
-    neighbourFieldName_("undefined-neighbourFieldName"),
-    KName_("undefined-K")
+    temperatureCoupledBase(patch(), "undefined", "undefined-K"),
+    neighbourFieldName_("undefined-neighbourFieldName")
 {}
 
 
@@ -126,8 +124,8 @@ turbulentTemperatureCoupledBaffleFvPatchScalarField
 )
 :
     fixedValueFvPatchScalarField(ptf, p, iF, mapper),
-    neighbourFieldName_(ptf.neighbourFieldName_),
-    KName_(ptf.KName_)
+    temperatureCoupledBase(patch(), ptf.KMethod(), ptf.KName()),
+    neighbourFieldName_(ptf.neighbourFieldName_)
 {}
 
 
@@ -140,8 +138,8 @@ turbulentTemperatureCoupledBaffleFvPatchScalarField
 )
 :
     fixedValueFvPatchScalarField(p, iF, dict),
-    neighbourFieldName_(dict.lookup("neighbourFieldName")),
-    KName_(dict.lookup("K"))
+    temperatureCoupledBase(patch(), dict),
+    neighbourFieldName_(dict.lookup("neighbourFieldName"))
 {
     if (!isA<directMappedPatchBase>(this->patch().patch()))
     {
@@ -172,61 +170,13 @@ turbulentTemperatureCoupledBaffleFvPatchScalarField
 )
 :
     fixedValueFvPatchScalarField(wtcsf, iF),
-    neighbourFieldName_(wtcsf.neighbourFieldName_),
-    KName_(wtcsf.KName_)
+    temperatureCoupledBase(patch(), wtcsf.KMethod(), wtcsf.KName()),
+    neighbourFieldName_(wtcsf.neighbourFieldName_)
 {}
 
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-Foam::tmp<Foam::scalarField>
-Foam::turbulentTemperatureCoupledBaffleFvPatchScalarField::K() const
-{
-    const fvMesh& mesh = patch().boundaryMesh().mesh();
-
-    if (KName_ == "none")
-    {
-        const compressible::RASModel& model =
-            db().lookupObject<compressible::RASModel>("RASProperties");
-
-        tmp<volScalarField> talpha = model.alphaEff();
-
-        const basicThermo& thermo =
-            db().lookupObject<basicThermo>("thermophysicalProperties");
-
-        return
-            talpha().boundaryField()[patch().index()]
-           *thermo.Cp()().boundaryField()[patch().index()];
-    }
-    else if (mesh.objectRegistry::foundObject<volScalarField>(KName_))
-    {
-        return patch().lookupPatchField<volScalarField, scalar>(KName_);
-    }
-    else if (mesh.objectRegistry::foundObject<volSymmTensorField>(KName_))
-    {
-        const symmTensorField& KWall =
-            patch().lookupPatchField<volSymmTensorField, scalar>(KName_);
-
-        vectorField n = patch().nf();
-
-        return n & KWall & n;
-    }
-    else
-    {
-        FatalErrorIn
-        (
-            "turbulentTemperatureCoupledBaffleFvPatchScalarField::K() const"
-        )   << "Did not find field " << KName_
-            << " on mesh " << mesh.name() << " patch " << patch().name()
-            << endl
-            << "Please set 'K' to 'none', a valid volScalarField"
-            << " or a valid volSymmTensorField." << exit(FatalError);
-
-        return scalarField(0);
-    }
-}
-
-
 void Foam::turbulentTemperatureCoupledBaffleFvPatchScalarField::updateCoeffs()
 {
     if (updated())
@@ -283,7 +233,7 @@ void Foam::turbulentTemperatureCoupledBaffleFvPatchScalarField::updateCoeffs()
         );
 
         // Swap to obtain full local values of neighbour K*delta
-        scalarField nbrKDelta = nbrField.K()*nbrPatch.deltaCoeffs();
+        scalarField nbrKDelta = nbrField.K(nbrField)*nbrPatch.deltaCoeffs();
         mapDistribute::distribute
         (
             Pstream::defaultCommsType,
@@ -294,7 +244,7 @@ void Foam::turbulentTemperatureCoupledBaffleFvPatchScalarField::updateCoeffs()
             nbrKDelta
         );
 
-        tmp<scalarField> myKDelta = K()*patch().deltaCoeffs();
+        tmp<scalarField> myKDelta = K(*this)*patch().deltaCoeffs();
 
         // Calculate common wall temperature. Reuse *this to store common value.
         scalarField Twall
@@ -326,7 +276,7 @@ void Foam::turbulentTemperatureCoupledBaffleFvPatchScalarField::updateCoeffs()
         //    (*this-intFld())
         //  * patch().deltaCoeffs();
 
-        scalar Q = gSum(K()*patch().magSf()*snGrad());
+        scalar Q = gSum(K(*this)*patch().magSf()*snGrad());
 
         Info<< patch().boundaryMesh().mesh().name() << ':'
             << patch().name() << ':'
@@ -354,7 +304,7 @@ void Foam::turbulentTemperatureCoupledBaffleFvPatchScalarField::write
     fixedValueFvPatchScalarField::write(os);
     os.writeKeyword("neighbourFieldName")<< neighbourFieldName_
         << token::END_STATEMENT << nl;
-    os.writeKeyword("K") << KName_ << token::END_STATEMENT << nl;
+    temperatureCoupledBase::write(os);
 }
 
 
diff --git a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.H b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.H
similarity index 93%
rename from src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.H
rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.H
index 2128c39d211ab5723f3a8a40d858ab575cd77516..5236f5f942221cb239374c6b5300cbad4aa694d7 100644
--- a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.H
+++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffle/turbulentTemperatureCoupledBaffleFvPatchScalarField.H
@@ -37,14 +37,14 @@ Description
         {
             type    compressible::turbulentTemperatureCoupledBaffle;
             neighbourFieldName  T;
-            K                   K; // or none
+            K                   lookup;
+            KName               K; // or none
             value               uniform 300;
         }
 
     Needs to be on underlying directMapped(Wall)FvPatch.
 
-    Note: if K is "none" looks up RASModel and basicThermo, otherwise expects
-    the solver to calculate a 'K' field.
+    Note: see temperatureCoupledBase on ways to specify K.
 
     Note: runs in parallel with arbitrary decomposition. Uses directMapped
     functionality to calculate exchange.
@@ -64,6 +64,7 @@ SourceFiles
 #define turbulentTemperatureCoupledBaffleFvPatchScalarField_H
 
 #include "fixedValueFvPatchFields.H"
+#include "temperatureCoupledBase.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
@@ -76,16 +77,14 @@ namespace Foam
 
 class turbulentTemperatureCoupledBaffleFvPatchScalarField
 :
-    public fixedValueFvPatchScalarField
+    public fixedValueFvPatchScalarField,
+    public temperatureCoupledBase
 {
     // Private data
 
         //- Name of field on the neighbour region
         const word neighbourFieldName_;
 
-        //- Name of thermal conductivity field
-        const word KName_;
-
 
     // Private Member Functions
 
@@ -161,9 +160,6 @@ public:
 
     // Member functions
 
-        //- Get corresponding K field
-        tmp<scalarField> K() const;
-
         //- Update the coefficients associated with the patch field
         virtual void updateCoeffs();
 
diff --git a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C
similarity index 79%
rename from src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C
rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C
index 278320f25318ec3f5fa2424c49a347b405eb2e05..e159c15df2b3c3dfd501fb70937896439e4d22ac 100644
--- a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C
+++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C
@@ -28,9 +28,6 @@ License
 #include "fvPatchFieldMapper.H"
 #include "volFields.H"
 #include "directMappedPatchBase.H"
-#include "regionProperties.H"
-#include "basicThermo.H"
-#include "RASModel.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
@@ -52,8 +49,8 @@ turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
 )
 :
     mixedFvPatchScalarField(p, iF),
-    neighbourFieldName_("undefined-neighbourFieldName"),
-    KName_("undefined-K")
+    temperatureCoupledBase(patch(), "undefined", "undefined-K"),
+    neighbourFieldName_("undefined-neighbourFieldName")
 {
     this->refValue() = 0.0;
     this->refGrad() = 0.0;
@@ -71,8 +68,8 @@ turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
 )
 :
     mixedFvPatchScalarField(ptf, p, iF, mapper),
-    neighbourFieldName_(ptf.neighbourFieldName_),
-    KName_(ptf.KName_)
+    temperatureCoupledBase(patch(), ptf.KMethod(), ptf.KName()),
+    neighbourFieldName_(ptf.neighbourFieldName_)
 {}
 
 
@@ -85,8 +82,8 @@ turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
 )
 :
     mixedFvPatchScalarField(p, iF),
-    neighbourFieldName_(dict.lookup("neighbourFieldName")),
-    KName_(dict.lookup("K"))
+    temperatureCoupledBase(patch(), dict),
+    neighbourFieldName_(dict.lookup("neighbourFieldName"))
 {
     if (!isA<directMappedPatchBase>(this->patch().patch()))
     {
@@ -134,60 +131,13 @@ turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
 )
 :
     mixedFvPatchScalarField(wtcsf, iF),
-    neighbourFieldName_(wtcsf.neighbourFieldName_),
-    KName_(wtcsf.KName_)
+    temperatureCoupledBase(patch(), wtcsf.KMethod(), wtcsf.KName()),
+    neighbourFieldName_(wtcsf.neighbourFieldName_)
 {}
 
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-tmp<scalarField>
-turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::K() const
-{
-    const fvMesh& mesh = patch().boundaryMesh().mesh();
-
-    if (KName_ == "none")
-    {
-        const compressible::RASModel& model =
-            db().lookupObject<compressible::RASModel>("RASProperties");
-
-        const basicThermo& thermo =
-            db().lookupObject<basicThermo>("thermophysicalProperties");
-
-        return
-            model.alphaEff()().boundaryField()[patch().index()]
-           *thermo.Cp()().boundaryField()[patch().index()];
-    }
-    else if (mesh.objectRegistry::foundObject<volScalarField>(KName_))
-    {
-        return patch().lookupPatchField<volScalarField, scalar>(KName_);
-    }
-    else if (mesh.objectRegistry::foundObject<volSymmTensorField>(KName_))
-    {
-        const symmTensorField& KWall =
-            patch().lookupPatchField<volSymmTensorField, scalar>(KName_);
-
-        vectorField n = patch().nf();
-
-        return n & KWall & n;
-    }
-    else
-    {
-        FatalErrorIn
-        (
-            "turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::K()"
-            " const"
-        )   << "Did not find field " << KName_
-            << " on mesh " << mesh.name() << " patch " << patch().name()
-            << endl
-            << "Please set 'K' to 'none', a valid volScalarField"
-            << " or a valid volSymmTensorField." << exit(FatalError);
-
-        return scalarField(0);
-    }
-}
-
-
 void turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs()
 {
     if (updated())
@@ -240,7 +190,7 @@ void turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs()
     );
 
     // Swap to obtain full local values of neighbour K*delta
-    scalarField nbrKDelta = nbrField.K()*nbrPatch.deltaCoeffs();
+    scalarField nbrKDelta = nbrField.K(nbrField)*nbrPatch.deltaCoeffs();
     mapDistribute::distribute
     (
         Pstream::defaultCommsType,
@@ -251,7 +201,7 @@ void turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs()
         nbrKDelta
     );
 
-    tmp<scalarField> myKDelta = K()*patch().deltaCoeffs();
+    tmp<scalarField> myKDelta = K(*this)*patch().deltaCoeffs();
 
 
     // Both sides agree on
@@ -281,7 +231,7 @@ void turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs()
 
     if (debug)
     {
-        scalar Q = gSum(K()*patch().magSf()*snGrad());
+        scalar Q = gSum(K(*this)*patch().magSf()*snGrad());
 
         Info<< patch().boundaryMesh().mesh().name() << ':'
             << patch().name() << ':'
@@ -307,7 +257,7 @@ void turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::write
     mixedFvPatchScalarField::write(os);
     os.writeKeyword("neighbourFieldName")<< neighbourFieldName_
         << token::END_STATEMENT << nl;
-    os.writeKeyword("K") << KName_ << token::END_STATEMENT << nl;
+    temperatureCoupledBase::write(os);
 }
 
 
diff --git a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H
similarity index 91%
rename from src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H
rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H
index 72ee4daf1609a9041aa774ce4279aed62c26c958..3561c9570406c89d48e1dc9d9729a19dde802de1 100644
--- a/src/turbulenceModels/compressible/RAS/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H
+++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H
@@ -38,14 +38,18 @@ Description
         {
             type        compressible::turbulentTemperatureCoupledBaffleMixed;
             neighbourFieldName  T;
-            K                   K; // or none
+            K                   lookup;
+            KName               K;
             value               uniform 300;
         }
 
     Needs to be on underlying directMapped(Wall)FvPatch.
 
-    Note: if K is "none" looks up RASModel and basicThermo, otherwise expects
-    the solver to calculate a 'K' field.
+    Note: K : heat conduction at patch. Gets supplied how to lookup/calculate K:
+    - 'lookup' : lookup volScalarField (or volSymmTensorField) with name
+    - 'basicThermo' : use basicThermo and compressible::RASmodel to calculate K
+    - 'solidThermo' : use basicSolidThermo K()
+    - 'directionalSolidThermo' directionalK()
 
     Note: runs in parallel with arbitrary decomposition. Uses directMapped
     functionality to calculate exchange.
@@ -64,9 +68,8 @@ SourceFiles
 #ifndef turbulentTemperatureCoupledBaffleMixedFvPatchScalarField_H
 #define turbulentTemperatureCoupledBaffleMixedFvPatchScalarField_H
 
-//#include "fvPatchFields.H"
 #include "mixedFvPatchFields.H"
-//#include "fvPatch.H"
+#include "temperatureCoupledBase.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
@@ -81,16 +84,14 @@ namespace compressible
 
 class turbulentTemperatureCoupledBaffleMixedFvPatchScalarField
 :
-    public mixedFvPatchScalarField
+    public mixedFvPatchScalarField,
+    public temperatureCoupledBase
 {
     // Private data
 
         //- Name of field on the neighbour region
         const word neighbourFieldName_;
 
-        //- Name of thermal conductivity field
-        const word KName_;
-
 
 public:
 
@@ -164,9 +165,6 @@ public:
 
     // Member functions
 
-        //- Get corresponding K field
-        tmp<scalarField> K() const;
-
         //- Update the coefficients associated with the patch field
         virtual void updateCoeffs();
 
diff --git a/src/turbulenceModels/compressible/turbulenceModel/laminar/laminar.C b/src/turbulenceModels/compressible/turbulenceModel/laminar/laminar.C
index a8a625e71d2c2027d7be65ccbb0ab25ef9504b9e..79432eecb6976be5fd58f3a0d602f436a718c598 100644
--- a/src/turbulenceModels/compressible/turbulenceModel/laminar/laminar.C
+++ b/src/turbulenceModels/compressible/turbulenceModel/laminar/laminar.C
@@ -51,10 +51,11 @@ laminar::laminar
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
-    turbulenceModel(rho, U, phi, thermophysicalModel)
+    turbulenceModel(rho, U, phi, thermophysicalModel, turbulenceModelName)
 {}
 
 
@@ -65,10 +66,14 @@ autoPtr<laminar> laminar::New
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 {
-    return autoPtr<laminar>(new laminar(rho, U, phi, thermophysicalModel));
+    return autoPtr<laminar>
+    (
+        new laminar(rho, U, phi, thermophysicalModel, turbulenceModelName)
+    );
 }
 
 
diff --git a/src/turbulenceModels/compressible/turbulenceModel/laminar/laminar.H b/src/turbulenceModels/compressible/turbulenceModel/laminar/laminar.H
index 67296b795057e39ae2ccb500801b326f3612183b..666d7bf776217163dda16d626b6f68125dc9d8ae 100644
--- a/src/turbulenceModels/compressible/turbulenceModel/laminar/laminar.H
+++ b/src/turbulenceModels/compressible/turbulenceModel/laminar/laminar.H
@@ -66,7 +66,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
@@ -78,7 +79,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermophysicalModel
+            const basicThermo& thermophysicalModel,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/compressible/turbulenceModel/turbulenceModel.C b/src/turbulenceModels/compressible/turbulenceModel/turbulenceModel.C
index 19f31068bf6c2938c85ed8a6dec675fd4faf70cd..46ba314504187d261a67ec59656b95ac8250b1ec 100644
--- a/src/turbulenceModels/compressible/turbulenceModel/turbulenceModel.C
+++ b/src/turbulenceModels/compressible/turbulenceModel/turbulenceModel.C
@@ -47,9 +47,21 @@ turbulenceModel::turbulenceModel
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 :
+    regIOobject
+    (
+        IOobject
+        (
+            turbulenceModelName,
+            U.time().constant(),
+            U.db(),
+            IOobject::NO_READ,
+            IOobject::NO_WRITE
+        )
+    ),
     runTime_(U.time()),
     mesh_(U.mesh()),
 
@@ -67,7 +79,8 @@ autoPtr<turbulenceModel> turbulenceModel::New
     const volScalarField& rho,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    const basicThermo& thermophysicalModel
+    const basicThermo& thermophysicalModel,
+    const word& turbulenceModelName
 )
 {
     // get model name, but do not register the dictionary
@@ -81,7 +94,7 @@ autoPtr<turbulenceModel> turbulenceModel::New
                 "turbulenceProperties",
                 U.time().constant(),
                 U.db(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -99,7 +112,7 @@ autoPtr<turbulenceModel> turbulenceModel::New
         (
             "turbulenceModel::New(const volScalarField&, "
             "const volVectorField&, const surfaceScalarField&, "
-            "basicThermo&)"
+            "basicThermo&, const word&)"
         )   << "Unknown turbulenceModel type "
             << modelType << nl << nl
             << "Valid turbulenceModel types:" << endl
@@ -109,7 +122,7 @@ autoPtr<turbulenceModel> turbulenceModel::New
 
     return autoPtr<turbulenceModel>
     (
-        cstrIter()(rho, U, phi, thermophysicalModel)
+        cstrIter()(rho, U, phi, thermophysicalModel, turbulenceModelName)
     );
 }
 
diff --git a/src/turbulenceModels/compressible/turbulenceModel/turbulenceModel.H b/src/turbulenceModels/compressible/turbulenceModel/turbulenceModel.H
index 420b24f680d9dcde2ae14f36812c8cad47869c3b..3f0f763783d4f9a55d901af6394ec15590d843d7 100644
--- a/src/turbulenceModels/compressible/turbulenceModel/turbulenceModel.H
+++ b/src/turbulenceModels/compressible/turbulenceModel/turbulenceModel.H
@@ -68,6 +68,8 @@ namespace compressible
 \*---------------------------------------------------------------------------*/
 
 class turbulenceModel
+:
+    public regIOobject
 {
 
 protected:
@@ -112,9 +114,10 @@ public:
                 const volScalarField& rho,
                 const volVectorField& U,
                 const surfaceScalarField& phi,
-                const basicThermo& thermoPhysicalModel
+                const basicThermo& thermoPhysicalModel,
+                const word& turbulenceModelName
             ),
-            (rho, U, phi, thermoPhysicalModel)
+            (rho, U, phi, thermoPhysicalModel, turbulenceModelName)
         );
 
 
@@ -126,7 +129,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = typeName
         );
 
 
@@ -138,7 +142,8 @@ public:
             const volScalarField& rho,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            const basicThermo& thermoPhysicalModel
+            const basicThermo& thermoPhysicalModel,
+            const word& turbulenceModelName = typeName
         );
 
 
@@ -224,6 +229,13 @@ public:
 
         //- Read LESProperties or RASProperties dictionary
         virtual bool read() = 0;
+
+        //- Default dummy write function
+        virtual bool writeData(Ostream&) const
+        {
+            return true;
+        }
+
 };
 
 
diff --git a/src/turbulenceModels/incompressible/LES/DeardorffDiffStress/DeardorffDiffStress.C b/src/turbulenceModels/incompressible/LES/DeardorffDiffStress/DeardorffDiffStress.C
index fd5f421aa96d9ab306958f23a90bb86b3db60a34..67840e4bcbd0f8c977cd835c5caf9571a0b5bdc3 100644
--- a/src/turbulenceModels/incompressible/LES/DeardorffDiffStress/DeardorffDiffStress.C
+++ b/src/turbulenceModels/incompressible/LES/DeardorffDiffStress/DeardorffDiffStress.C
@@ -55,10 +55,11 @@ DeardorffDiffStress::DeardorffDiffStress
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     GenSGSStress(U, phi, transport),
 
     ck_
diff --git a/src/turbulenceModels/incompressible/LES/DeardorffDiffStress/DeardorffDiffStress.H b/src/turbulenceModels/incompressible/LES/DeardorffDiffStress/DeardorffDiffStress.H
index 43c8c5425aab8107efcc5672dff20c02689f368f..e3fb0e13dd7905981cc30e50b738f2fdaf6b5393 100644
--- a/src/turbulenceModels/incompressible/LES/DeardorffDiffStress/DeardorffDiffStress.H
+++ b/src/turbulenceModels/incompressible/LES/DeardorffDiffStress/DeardorffDiffStress.H
@@ -100,7 +100,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/GenEddyVisc/GenEddyVisc.C b/src/turbulenceModels/incompressible/LES/GenEddyVisc/GenEddyVisc.C
index 4e44ed284f87ac44976f2be53a41f751fdeaee5c..b479e7bdf1a8463970dc330c21f05f7ce215be6d 100644
--- a/src/turbulenceModels/incompressible/LES/GenEddyVisc/GenEddyVisc.C
+++ b/src/turbulenceModels/incompressible/LES/GenEddyVisc/GenEddyVisc.C
@@ -40,10 +40,11 @@ GenEddyVisc::GenEddyVisc
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(word("GenEddyVisc"), U, phi, transport),
+    LESModel(word("GenEddyVisc"), U, phi, transport, turbulenceModelName),
 
     ce_
     (
diff --git a/src/turbulenceModels/incompressible/LES/GenEddyVisc/GenEddyVisc.H b/src/turbulenceModels/incompressible/LES/GenEddyVisc/GenEddyVisc.H
index 3a30dbf22b3fdc6542f584c6caebd27587f76d2e..44bea7082b5a61e0c47bd1b48056191b519b04bb 100644
--- a/src/turbulenceModels/incompressible/LES/GenEddyVisc/GenEddyVisc.H
+++ b/src/turbulenceModels/incompressible/LES/GenEddyVisc/GenEddyVisc.H
@@ -81,7 +81,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/GenSGSStress/GenSGSStress.C b/src/turbulenceModels/incompressible/LES/GenSGSStress/GenSGSStress.C
index f8e04ecd47d69e1b2b2b4a39ef6a143f09a26dcd..f75d2d68ecaf94349f17ec7d72254db8e9c43559 100644
--- a/src/turbulenceModels/incompressible/LES/GenSGSStress/GenSGSStress.C
+++ b/src/turbulenceModels/incompressible/LES/GenSGSStress/GenSGSStress.C
@@ -40,10 +40,11 @@ GenSGSStress::GenSGSStress
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(word("GenSGSStress"), U, phi, transport),
+    LESModel(word("GenSGSStress"), U, phi, transport, turbulenceModelName),
 
     ce_
     (
diff --git a/src/turbulenceModels/incompressible/LES/GenSGSStress/GenSGSStress.H b/src/turbulenceModels/incompressible/LES/GenSGSStress/GenSGSStress.H
index 4a977b1c34e592a1ae022788b3b96999c48ea5ce..1cb78c415ef6250d9061d06202336ddd3b5d43ce 100644
--- a/src/turbulenceModels/incompressible/LES/GenSGSStress/GenSGSStress.H
+++ b/src/turbulenceModels/incompressible/LES/GenSGSStress/GenSGSStress.H
@@ -85,7 +85,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/LESModel/LESModel.C b/src/turbulenceModels/incompressible/LES/LESModel/LESModel.C
index 574e387f1c495f3dc2fe58fbc5a3c008c5643769..530c9549f198ef808f5193150937ac18413d21cd 100644
--- a/src/turbulenceModels/incompressible/LES/LESModel/LESModel.C
+++ b/src/turbulenceModels/incompressible/LES/LESModel/LESModel.C
@@ -57,10 +57,11 @@ LESModel::LESModel
     const word& type,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    turbulenceModel(U, phi, transport),
+    turbulenceModel(U, phi, transport, turbulenceModelName),
 
     IOdictionary
     (
@@ -69,7 +70,7 @@ LESModel::LESModel
             "LESProperties",
             U.time().constant(),
             U.db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -94,7 +95,8 @@ autoPtr<LESModel> LESModel::New
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 {
     // get model name, but do not register the dictionary
@@ -108,7 +110,7 @@ autoPtr<LESModel> LESModel::New
                 "LESProperties",
                 U.time().constant(),
                 U.db(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -128,7 +130,8 @@ autoPtr<LESModel> LESModel::New
             "("
                 "const volVectorField&, "
                 "const surfaceScalarField& ,"
-                "transportModel&"
+                "transportModel&, "
+                "const word&"
             ")"
         )   << "Unknown LESModel type "
             << modelType << nl << nl
@@ -137,7 +140,10 @@ autoPtr<LESModel> LESModel::New
             << exit(FatalError);
     }
 
-    return autoPtr<LESModel>(cstrIter()(U, phi, transport));
+    return autoPtr<LESModel>
+    (
+        cstrIter()(U, phi, transport, turbulenceModelName)
+    );
 }
 
 
@@ -158,7 +164,22 @@ void LESModel::correct()
 
 bool LESModel::read()
 {
-    if (regIOobject::read())
+    //if (regIOobject::read())
+
+    // Bit of trickery : we are both IOdictionary ('RASProperties') and
+    // an regIOobject from the turbulenceModel level. Problem is to distinguish
+    // between the two - we only want to reread the IOdictionary.
+    
+    bool ok = IOdictionary::readData
+    (
+        IOdictionary::readStream
+        (
+            IOdictionary::type()
+        )
+    );
+    IOdictionary::close();
+
+    if (ok)
     {
         if (const dictionary* dictPtr = subDictPtr(type() + "Coeffs"))
         {
diff --git a/src/turbulenceModels/incompressible/LES/LESModel/LESModel.H b/src/turbulenceModels/incompressible/LES/LESModel/LESModel.H
index 0d16f7e784cfb79172fd513e56f8a498b5da0642..eafb352fb2c9b501d2cba7e6caa96068a1f20b1a 100644
--- a/src/turbulenceModels/incompressible/LES/LESModel/LESModel.H
+++ b/src/turbulenceModels/incompressible/LES/LESModel/LESModel.H
@@ -120,9 +120,10 @@ public:
             (
                 const volVectorField& U,
                 const surfaceScalarField& phi,
-                transportModel& transport
+                transportModel& transport,
+                const word& turbulenceModelName
             ),
-            (U, phi, transport)
+            (U, phi, transport, turbulenceModelName)
         );
 
 
@@ -134,7 +135,8 @@ public:
             const word& type,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
@@ -145,7 +147,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/LRRDiffStress/LRRDiffStress.C b/src/turbulenceModels/incompressible/LES/LRRDiffStress/LRRDiffStress.C
index 59b160e317d07503c6af8c515b2e63094f12b0ec..2b1e589bcbf970497730332155549d7719f4f361 100644
--- a/src/turbulenceModels/incompressible/LES/LRRDiffStress/LRRDiffStress.C
+++ b/src/turbulenceModels/incompressible/LES/LRRDiffStress/LRRDiffStress.C
@@ -55,10 +55,11 @@ LRRDiffStress::LRRDiffStress
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     GenSGSStress(U, phi, transport),
 
     ck_
diff --git a/src/turbulenceModels/incompressible/LES/LRRDiffStress/LRRDiffStress.H b/src/turbulenceModels/incompressible/LES/LRRDiffStress/LRRDiffStress.H
index b780a01e07263680c84caba6a9eeb34ab5e74c9f..f149913d03435bcc422634457b8849343872c6b8 100644
--- a/src/turbulenceModels/incompressible/LES/LRRDiffStress/LRRDiffStress.H
+++ b/src/turbulenceModels/incompressible/LES/LRRDiffStress/LRRDiffStress.H
@@ -99,7 +99,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/Make/files b/src/turbulenceModels/incompressible/LES/Make/files
index dae51c090a28aab4bbd8e9de06d9f9c6a3615999..70c95e3b59c559d0ecf63cd235946da8594ea4aa 100644
--- a/src/turbulenceModels/incompressible/LES/Make/files
+++ b/src/turbulenceModels/incompressible/LES/Make/files
@@ -19,6 +19,7 @@ dynSmagorinsky/dynSmagorinsky.C
 LRRDiffStress/LRRDiffStress.C
 DeardorffDiffStress/DeardorffDiffStress.C
 spectEddyVisc/spectEddyVisc.C
+dynLagrangian/dynLagrangian.C
 
 scaleSimilarity/scaleSimilarity.C
 mixedSmagorinsky/mixedSmagorinsky.C
diff --git a/src/turbulenceModels/incompressible/LES/Smagorinsky/Smagorinsky.C b/src/turbulenceModels/incompressible/LES/Smagorinsky/Smagorinsky.C
index 660c2df189530111a80d19611d8ba4aac8943fae..6aa639ccf1de46d730990ac81f22fbfed27c1beb 100644
--- a/src/turbulenceModels/incompressible/LES/Smagorinsky/Smagorinsky.C
+++ b/src/turbulenceModels/incompressible/LES/Smagorinsky/Smagorinsky.C
@@ -55,10 +55,11 @@ Smagorinsky::Smagorinsky
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     GenEddyVisc(U, phi, transport),
 
     ck_
diff --git a/src/turbulenceModels/incompressible/LES/Smagorinsky/Smagorinsky.H b/src/turbulenceModels/incompressible/LES/Smagorinsky/Smagorinsky.H
index 2be973325699f2da460c9e749fe78de13d5110dc..469c49f2476745bd2f0c60b943393050c06fafe1 100644
--- a/src/turbulenceModels/incompressible/LES/Smagorinsky/Smagorinsky.H
+++ b/src/turbulenceModels/incompressible/LES/Smagorinsky/Smagorinsky.H
@@ -96,7 +96,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/Smagorinsky2/Smagorinsky2.C b/src/turbulenceModels/incompressible/LES/Smagorinsky2/Smagorinsky2.C
index ee1391dc83a78b1b503dc64a8b9a6888fe7051d5..ba03035bdf8ef9d79b55ecf20e3cab42935ec391 100644
--- a/src/turbulenceModels/incompressible/LES/Smagorinsky2/Smagorinsky2.C
+++ b/src/turbulenceModels/incompressible/LES/Smagorinsky2/Smagorinsky2.C
@@ -46,10 +46,11 @@ Smagorinsky2::Smagorinsky2
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     Smagorinsky(U, phi, transport),
 
     cD2_
diff --git a/src/turbulenceModels/incompressible/LES/Smagorinsky2/Smagorinsky2.H b/src/turbulenceModels/incompressible/LES/Smagorinsky2/Smagorinsky2.H
index 1cbc1067ba421ce60552e0310ceca2cf3234dbbf..1bb1e16e027c34dac5fbe6e6cdb9f4cedaeb4ffa 100644
--- a/src/turbulenceModels/incompressible/LES/Smagorinsky2/Smagorinsky2.H
+++ b/src/turbulenceModels/incompressible/LES/Smagorinsky2/Smagorinsky2.H
@@ -93,7 +93,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/SpalartAllmaras/SpalartAllmaras.C b/src/turbulenceModels/incompressible/LES/SpalartAllmaras/SpalartAllmaras.C
index 8f0885139e4465c079de12490528b8fed28da049..b4e2ca3da89b0a274c8345db61832c8023fa0753 100644
--- a/src/turbulenceModels/incompressible/LES/SpalartAllmaras/SpalartAllmaras.C
+++ b/src/turbulenceModels/incompressible/LES/SpalartAllmaras/SpalartAllmaras.C
@@ -149,10 +149,11 @@ SpalartAllmaras::SpalartAllmaras
     const volVectorField& U,
     const surfaceScalarField& phi,
     transportModel& transport,
+    const word& turbulenceModelName,
     const word& modelName
 )
 :
-    LESModel(modelName, U, phi, transport),
+    LESModel(modelName, U, phi, transport, turbulenceModelName),
 
     sigmaNut_
     (
diff --git a/src/turbulenceModels/incompressible/LES/SpalartAllmaras/SpalartAllmaras.H b/src/turbulenceModels/incompressible/LES/SpalartAllmaras/SpalartAllmaras.H
index c7b93f9515286d2d6d812d5a8bc835df1f17a0d5..d2861d3a4c56d33ad426c2f892607649423ad9e2 100644
--- a/src/turbulenceModels/incompressible/LES/SpalartAllmaras/SpalartAllmaras.H
+++ b/src/turbulenceModels/incompressible/LES/SpalartAllmaras/SpalartAllmaras.H
@@ -138,6 +138,7 @@ public:
             const volVectorField& U,
             const surfaceScalarField& phi,
             transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName,
             const word& modelName = typeName
         );
 
diff --git a/src/turbulenceModels/incompressible/LES/SpalartAllmarasDDES/SpalartAllmarasDDES.C b/src/turbulenceModels/incompressible/LES/SpalartAllmarasDDES/SpalartAllmarasDDES.C
index 9d448f777efaf141cd0ae7aa054b45b2a417e2cb..414ce5558b0c65440d5c401e21de921d66d5fa63 100644
--- a/src/turbulenceModels/incompressible/LES/SpalartAllmarasDDES/SpalartAllmarasDDES.C
+++ b/src/turbulenceModels/incompressible/LES/SpalartAllmarasDDES/SpalartAllmarasDDES.C
@@ -93,10 +93,11 @@ SpalartAllmarasDDES::SpalartAllmarasDDES
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    SpalartAllmaras(U, phi, transport, typeName)
+    SpalartAllmaras(U, phi, transport, turbulenceModelName, typeName)
 {}
 
 
diff --git a/src/turbulenceModels/incompressible/LES/SpalartAllmarasDDES/SpalartAllmarasDDES.H b/src/turbulenceModels/incompressible/LES/SpalartAllmarasDDES/SpalartAllmarasDDES.H
index 7ae6df7ba42fe5a1de8fda7a35357328308e7c26..77cdc5e95d1e10812901c27a7d3d4f25a84e5551 100644
--- a/src/turbulenceModels/incompressible/LES/SpalartAllmarasDDES/SpalartAllmarasDDES.H
+++ b/src/turbulenceModels/incompressible/LES/SpalartAllmarasDDES/SpalartAllmarasDDES.H
@@ -95,7 +95,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/SpalartAllmarasIDDES/SpalartAllmarasIDDES.C b/src/turbulenceModels/incompressible/LES/SpalartAllmarasIDDES/SpalartAllmarasIDDES.C
index 884fcc96d5f404fa5b952375ca3ee5ead6ef81de..a6a9d3265813c5b083669223870157d46bd6d25f 100644
--- a/src/turbulenceModels/incompressible/LES/SpalartAllmarasIDDES/SpalartAllmarasIDDES.C
+++ b/src/turbulenceModels/incompressible/LES/SpalartAllmarasIDDES/SpalartAllmarasIDDES.C
@@ -143,10 +143,11 @@ SpalartAllmarasIDDES::SpalartAllmarasIDDES
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    SpalartAllmaras(U, phi, transport, typeName),
+    SpalartAllmaras(U, phi, transport, turbulenceModelName, typeName),
 
     fwStar_
     (
diff --git a/src/turbulenceModels/incompressible/LES/SpalartAllmarasIDDES/SpalartAllmarasIDDES.H b/src/turbulenceModels/incompressible/LES/SpalartAllmarasIDDES/SpalartAllmarasIDDES.H
index a241d2a05c34fae99899d3f59fa9912675e07fc3..9225f4791c871bd37b754108ccf1fc7479e6f932 100644
--- a/src/turbulenceModels/incompressible/LES/SpalartAllmarasIDDES/SpalartAllmarasIDDES.H
+++ b/src/turbulenceModels/incompressible/LES/SpalartAllmarasIDDES/SpalartAllmarasIDDES.H
@@ -104,7 +104,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/dynLagrangian/dynLagrangian.C b/src/turbulenceModels/incompressible/LES/dynLagrangian/dynLagrangian.C
new file mode 100644
index 0000000000000000000000000000000000000000..505aeeabbadc7c72f91506d85dfdf14047cdffb2
--- /dev/null
+++ b/src/turbulenceModels/incompressible/LES/dynLagrangian/dynLagrangian.C
@@ -0,0 +1,195 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software; you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by the
+    Free Software Foundation; either version 3 of the License, or (at your
+    option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM; if not, write to the Free Software Foundation,
+    Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+\*---------------------------------------------------------------------------*/
+
+#include "dynLagrangian.H"
+#include "addToRunTimeSelectionTable.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+namespace incompressible
+{
+namespace LESModels
+{
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+defineTypeNameAndDebug(dynLagrangian, 0);
+addToRunTimeSelectionTable(LESModel, dynLagrangian, dictionary);
+
+// * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
+
+void dynLagrangian::updateSubGridScaleFields
+(
+    const tmp<volTensorField>& gradU
+)
+{
+    nuSgs_ = (flm_/fmm_)*delta()*sqrt(k(gradU));
+    nuSgs_.correctBoundaryConditions();
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+dynLagrangian::dynLagrangian
+(
+    const volVectorField& U,
+    const surfaceScalarField& phi,
+    transportModel& transport,
+    const word& turbulenceModelName
+)
+:
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
+    GenEddyVisc(U, phi, transport),
+
+    flm_
+    (
+        IOobject
+        (
+            "flm",
+            runTime_.timeName(),
+            mesh_,
+            IOobject::MUST_READ,
+            IOobject::AUTO_WRITE
+        ),
+        mesh_
+    ),
+    fmm_
+    (
+        IOobject
+        (
+            "fmm",
+            runTime_.timeName(),
+            mesh_,
+            IOobject::MUST_READ,
+            IOobject::AUTO_WRITE
+        ),
+        mesh_
+    ),
+    theta_
+    (
+        dimensioned<scalar>::lookupOrAddToDict
+        (
+            "theta",
+            coeffDict_,
+            1.5
+        )
+    ),
+    simpleFilter_(U.mesh()),
+    filterPtr_(LESfilter::New(U.mesh(), coeffDict())),
+    filter_(filterPtr_()),
+    flm0_("flm0", flm_.dimensions(), 0.0),
+    fmm0_("fmm0", fmm_.dimensions(), VSMALL)
+{
+    updateSubGridScaleFields(fvc::grad(U));
+
+    printCoeffs();
+}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+void dynLagrangian::correct(const tmp<volTensorField>& gradU)
+{
+    LESModel::correct(gradU);
+
+    volSymmTensorField S = dev(symm(gradU()));
+
+    volScalarField magS = mag(S);
+
+    volVectorField Uf = filter_(U());
+
+    volSymmTensorField Sf = dev(symm(fvc::grad(Uf)));
+
+    volScalarField magSf = mag(Sf);
+
+    volSymmTensorField L = dev(filter_(sqr(U())) - (sqr(filter_(U()))));
+
+    volSymmTensorField M = 2.0*sqr(delta())*(filter_(magS*S) - 4.0*magSf*Sf);
+
+    volScalarField invT =
+        (1.0/(theta_.value()*delta()))*pow(flm_*fmm_, 1.0/8.0);
+
+    volScalarField LM = L && M;
+
+    fvScalarMatrix flmEqn
+    (
+       fvm::ddt(flm_)
+     + fvm::div(phi(), flm_)
+    ==
+       invT*LM
+     - fvm::Sp(invT, flm_)
+    );
+
+    flmEqn.relax();
+    flmEqn.solve();
+
+    bound(flm_, flm0_);
+
+    volScalarField MM = M && M;
+
+    fvScalarMatrix fmmEqn
+    (
+       fvm::ddt(fmm_)
+     + fvm::div(phi(), fmm_)
+    ==
+       invT*MM
+     - fvm::Sp(invT, fmm_)
+    );
+
+    fmmEqn.relax();
+    fmmEqn.solve();
+
+    bound(fmm_, fmm0_);
+
+    updateSubGridScaleFields(gradU);
+}
+
+
+bool dynLagrangian::read()
+{
+    if (GenEddyVisc::read())
+    {
+        filter_.read(coeffDict());
+        theta_.readIfPresent(coeffDict());
+
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace LESModels
+} // End namespace incompressible
+} // End namespace Foam
+
+// ************************************************************************* //
diff --git a/src/turbulenceModels/incompressible/LES/dynLagrangian/dynLagrangian.H b/src/turbulenceModels/incompressible/LES/dynLagrangian/dynLagrangian.H
new file mode 100644
index 0000000000000000000000000000000000000000..0d82201d722d4ee056442cffaecaf7d6680b2137
--- /dev/null
+++ b/src/turbulenceModels/incompressible/LES/dynLagrangian/dynLagrangian.H
@@ -0,0 +1,185 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
+     \\/     M anipulation  |
+-------------------------------------------------------------------------------
+License
+    This file is part of OpenFOAM.
+
+    OpenFOAM is free software; you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by the
+    Free Software Foundation; either version 2 of the License, or (at your
+    option) any later version.
+
+    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with OpenFOAM; if not, write to the Free Software Foundation,
+    Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+Class
+    Foam::incompressible::LESModels::dynLagrangian
+
+Description
+    Lagrangian Two Equations Eddy Viscosity Model for incompressible
+    flows
+
+    @verbatim
+        B = 2/3*k*I - 2*nuSgs*dev(D)
+        Beff = 2/3*k*I - 2*nuEff*dev(D)
+
+    where
+
+        D = symm(grad(U))
+        nuSgs = (flm/fmm)*delta^2*sqrt(2)*|D|
+        nuEff = nuSgs + nu
+
+        Two relaxation equations are used to evaluate flm and fmm:
+
+        d/dt(flm) + div(U*flm)
+        =
+        (1/T)*(L && M - flm)
+
+        d/dt(fmm) + div(U*fmm)
+        =
+        (1/T)*(M && M - flm)
+
+    where
+
+        L = F(U.U) - F(U).F(U)
+        M = 2.0 delta^2 (F(|D|.D) - 4 F(|D|).F(D))
+        T = 1.5*delta*(flm.fmm)^(-1.0/8.0)
+
+    @endverbatim
+
+    Reference:
+    1. Charles Meneveau, Thomas Lund and William Cabot
+    "A Lagrangian dynamic subgrid-scale model of turbulence"
+    J. Fluid Mech (1996), vol 319, pp. 353-385
+
+SourceFiles
+    dynLagrangian.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef dynLagrangian_H
+#define dynLagrangian_H
+
+#include "GenEddyVisc.H"
+#include "simpleFilter.H"
+#include "LESfilter.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+namespace incompressible
+{
+namespace LESModels
+{
+
+/*---------------------------------------------------------------------------*\
+                           Class dynLagrangian Declaration
+\*---------------------------------------------------------------------------*/
+
+class dynLagrangian
+:
+    public GenEddyVisc
+{
+    // Private data
+
+        volScalarField flm_;
+        volScalarField fmm_;
+
+        dimensionedScalar theta_;
+
+        simpleFilter simpleFilter_;
+        autoPtr<LESfilter> filterPtr_;
+        LESfilter& filter_;
+
+        dimensionedScalar flm0_;
+        dimensionedScalar fmm0_;
+    // Private Member Functions
+
+        //- Update sub-grid scale fields
+        void updateSubGridScaleFields
+        (
+            const tmp<volTensorField>& gradU
+        );
+
+        // Disallow default bitwise copy construct and assignment
+        dynLagrangian(const dynLagrangian&);
+        dynLagrangian& operator=(const dynLagrangian&);
+
+
+public:
+
+    //- Runtime type information
+    TypeName("dynLagrangian");
+
+    // Constructors
+
+        //- Construct from components
+        dynLagrangian
+        (
+            const volVectorField& U,
+            const surfaceScalarField& phi,
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
+        );
+
+
+    //- Destructor
+    virtual ~dynLagrangian()
+    {}
+
+
+    // Member Functions
+
+       //- Return SGS kinetic energy
+
+        tmp<volScalarField> k(const tmp<volTensorField>& gradU) const
+        {
+            return 2.0*sqr(delta())*magSqr(dev(symm(gradU)));
+        }
+
+         //- Return SGS kinetic energy
+        virtual tmp<volScalarField> k() const
+        {
+            return k(fvc::grad(U()));
+        }
+
+        //- Return the effective diffusivity for k
+        tmp<volScalarField> DkEff() const
+        {
+            return tmp<volScalarField>
+            (
+                new volScalarField("DkEff", nuSgs_ + nu())
+            );
+        }
+
+        //- Correct Eddy-Viscosity and related properties
+        virtual void correct(const tmp<volTensorField>& gradU);
+
+
+        //- Read LESProperties dictionary
+        virtual bool read();
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace LESModels
+} // End namespace incompressible
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/turbulenceModels/incompressible/LES/dynMixedSmagorinsky/dynMixedSmagorinsky.C b/src/turbulenceModels/incompressible/LES/dynMixedSmagorinsky/dynMixedSmagorinsky.C
index a98b4be0550c4ff84432aa012371aa31829a2740..4e1e409435289450cb41e9c05d8964025a150011 100644
--- a/src/turbulenceModels/incompressible/LES/dynMixedSmagorinsky/dynMixedSmagorinsky.C
+++ b/src/turbulenceModels/incompressible/LES/dynMixedSmagorinsky/dynMixedSmagorinsky.C
@@ -46,10 +46,11 @@ dynMixedSmagorinsky::dynMixedSmagorinsky
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     scaleSimilarity(U, phi, transport),
     dynSmagorinsky(U, phi, transport)
 {
diff --git a/src/turbulenceModels/incompressible/LES/dynMixedSmagorinsky/dynMixedSmagorinsky.H b/src/turbulenceModels/incompressible/LES/dynMixedSmagorinsky/dynMixedSmagorinsky.H
index 0ae54425e033a8843816b55a5d3c4203ec5e008e..be742b8bde73969b3f45c2ed3dc0d08eaed06a54 100644
--- a/src/turbulenceModels/incompressible/LES/dynMixedSmagorinsky/dynMixedSmagorinsky.H
+++ b/src/turbulenceModels/incompressible/LES/dynMixedSmagorinsky/dynMixedSmagorinsky.H
@@ -99,7 +99,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/dynOneEqEddy/dynOneEqEddy.C b/src/turbulenceModels/incompressible/LES/dynOneEqEddy/dynOneEqEddy.C
index 2c78f83eeeb9b3eea70e3e07c5aea10a39aa00d4..89849140ae5231cafa559c48696123e9ee81cacb 100644
--- a/src/turbulenceModels/incompressible/LES/dynOneEqEddy/dynOneEqEddy.C
+++ b/src/turbulenceModels/incompressible/LES/dynOneEqEddy/dynOneEqEddy.C
@@ -104,10 +104,11 @@ dynOneEqEddy::dynOneEqEddy
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     GenEddyVisc(U, phi, transport),
 
     k_
diff --git a/src/turbulenceModels/incompressible/LES/dynOneEqEddy/dynOneEqEddy.H b/src/turbulenceModels/incompressible/LES/dynOneEqEddy/dynOneEqEddy.H
index 6aec69cd557e62c67e0bb79f78881852fad56dd6..2504778f13d1da8c18234b2ce08ff0e4bbe3e5e2 100644
--- a/src/turbulenceModels/incompressible/LES/dynOneEqEddy/dynOneEqEddy.H
+++ b/src/turbulenceModels/incompressible/LES/dynOneEqEddy/dynOneEqEddy.H
@@ -110,7 +110,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/dynSmagorinsky/dynSmagorinsky.C b/src/turbulenceModels/incompressible/LES/dynSmagorinsky/dynSmagorinsky.C
index 9e1a260d4ee2f6148ad71a88e7777deb6c598913..1832b461a38b47fcde0bc4f8f3f32ad06509be45 100644
--- a/src/turbulenceModels/incompressible/LES/dynSmagorinsky/dynSmagorinsky.C
+++ b/src/turbulenceModels/incompressible/LES/dynSmagorinsky/dynSmagorinsky.C
@@ -95,10 +95,11 @@ dynSmagorinsky::dynSmagorinsky
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     GenEddyVisc(U, phi, transport),
 
     k_
diff --git a/src/turbulenceModels/incompressible/LES/dynSmagorinsky/dynSmagorinsky.H b/src/turbulenceModels/incompressible/LES/dynSmagorinsky/dynSmagorinsky.H
index 33eebd6d1294b69811802e5918fcd50840da9aff..d7c0356aee6f5bfc25479e326835c9d71b7d2e68 100644
--- a/src/turbulenceModels/incompressible/LES/dynSmagorinsky/dynSmagorinsky.H
+++ b/src/turbulenceModels/incompressible/LES/dynSmagorinsky/dynSmagorinsky.H
@@ -119,7 +119,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/kOmegaSSTSAS/kOmegaSSTSAS.C b/src/turbulenceModels/incompressible/LES/kOmegaSSTSAS/kOmegaSSTSAS.C
index 36e3605c923c8f48d2b8e1c19a6b81284441b974..25aaf37ef40c52e4b6c09901df51130a7e239b84 100644
--- a/src/turbulenceModels/incompressible/LES/kOmegaSSTSAS/kOmegaSSTSAS.C
+++ b/src/turbulenceModels/incompressible/LES/kOmegaSSTSAS/kOmegaSSTSAS.C
@@ -121,10 +121,11 @@ kOmegaSSTSAS::kOmegaSSTSAS
     const volVectorField& U,
     const surfaceScalarField& phi,
     transportModel& transport,
+    const word& turbulenceModelName,
     const word& modelName
 )
 :
-    LESModel(modelName, U, phi, transport),
+    LESModel(modelName, U, phi, transport, turbulenceModelName),
 
     alphaK1_
     (
diff --git a/src/turbulenceModels/incompressible/LES/kOmegaSSTSAS/kOmegaSSTSAS.H b/src/turbulenceModels/incompressible/LES/kOmegaSSTSAS/kOmegaSSTSAS.H
index 31e454145bd8ac9f2cc861c24228a371f934bc99..8a27d515a22276d55a593a1e4f4d605b343b5344 100644
--- a/src/turbulenceModels/incompressible/LES/kOmegaSSTSAS/kOmegaSSTSAS.H
+++ b/src/turbulenceModels/incompressible/LES/kOmegaSSTSAS/kOmegaSSTSAS.H
@@ -183,6 +183,7 @@ public:
             const volVectorField& U,
             const surfaceScalarField& phi,
             transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName,
             const word& modelName = typeName
         );
 
diff --git a/src/turbulenceModels/incompressible/LES/laminar/laminar.C b/src/turbulenceModels/incompressible/LES/laminar/laminar.C
index ae8bc9ddc4cbb3613e3e1bc3356a67bde6991008..a7e54b14af966e139569051b2f6a081e9d1185db 100644
--- a/src/turbulenceModels/incompressible/LES/laminar/laminar.C
+++ b/src/turbulenceModels/incompressible/LES/laminar/laminar.C
@@ -47,10 +47,11 @@ laminar::laminar
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport)
+    LESModel(typeName, U, phi, transport, turbulenceModelName)
 {}
 
 
diff --git a/src/turbulenceModels/incompressible/LES/laminar/laminar.H b/src/turbulenceModels/incompressible/LES/laminar/laminar.H
index addec386a3b8a7720f02806c2a42326c75c3a6a5..cdc2e00c88fa446b3db67b525dfcb4f83b473499 100644
--- a/src/turbulenceModels/incompressible/LES/laminar/laminar.H
+++ b/src/turbulenceModels/incompressible/LES/laminar/laminar.H
@@ -76,7 +76,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/locDynOneEqEddy/locDynOneEqEddy.C b/src/turbulenceModels/incompressible/LES/locDynOneEqEddy/locDynOneEqEddy.C
index 0d0e52524ee215f0cae3361330d2fa47c5554e58..ab1d090a7720e5944770054a5b1c52cc9afdf6af 100644
--- a/src/turbulenceModels/incompressible/LES/locDynOneEqEddy/locDynOneEqEddy.C
+++ b/src/turbulenceModels/incompressible/LES/locDynOneEqEddy/locDynOneEqEddy.C
@@ -95,10 +95,11 @@ locDynOneEqEddy::locDynOneEqEddy
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     GenEddyVisc(U, phi, transport),
 
     k_
diff --git a/src/turbulenceModels/incompressible/LES/locDynOneEqEddy/locDynOneEqEddy.H b/src/turbulenceModels/incompressible/LES/locDynOneEqEddy/locDynOneEqEddy.H
index fe5ae52ddacf9156014facef390212579b801876..3dbfa514d22c224dd6474092290e413cb26b33c3 100644
--- a/src/turbulenceModels/incompressible/LES/locDynOneEqEddy/locDynOneEqEddy.H
+++ b/src/turbulenceModels/incompressible/LES/locDynOneEqEddy/locDynOneEqEddy.H
@@ -132,7 +132,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/mixedSmagorinsky/mixedSmagorinsky.C b/src/turbulenceModels/incompressible/LES/mixedSmagorinsky/mixedSmagorinsky.C
index 15de0f53ad9f6c1aed9f02aeb7a5bc3d898375f4..a2b40f0722f317a0db23b810fabd826e69e8a74a 100644
--- a/src/turbulenceModels/incompressible/LES/mixedSmagorinsky/mixedSmagorinsky.C
+++ b/src/turbulenceModels/incompressible/LES/mixedSmagorinsky/mixedSmagorinsky.C
@@ -46,10 +46,11 @@ mixedSmagorinsky::mixedSmagorinsky
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     scaleSimilarity(U, phi, transport),
     Smagorinsky(U, phi, transport)
 {
diff --git a/src/turbulenceModels/incompressible/LES/mixedSmagorinsky/mixedSmagorinsky.H b/src/turbulenceModels/incompressible/LES/mixedSmagorinsky/mixedSmagorinsky.H
index da6506d2b095573be8616f846cad2059fa1ae184..ffb54f3e77827a2695b988ef58913088a443c64d 100644
--- a/src/turbulenceModels/incompressible/LES/mixedSmagorinsky/mixedSmagorinsky.H
+++ b/src/turbulenceModels/incompressible/LES/mixedSmagorinsky/mixedSmagorinsky.H
@@ -99,7 +99,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/oneEqEddy/oneEqEddy.C b/src/turbulenceModels/incompressible/LES/oneEqEddy/oneEqEddy.C
index 4d360140f74ed0c98c488f3990af668446c00788..235a48f1d29251a5aa9c3abba36c9b4796fb5df3 100644
--- a/src/turbulenceModels/incompressible/LES/oneEqEddy/oneEqEddy.C
+++ b/src/turbulenceModels/incompressible/LES/oneEqEddy/oneEqEddy.C
@@ -56,10 +56,11 @@ oneEqEddy::oneEqEddy
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     GenEddyVisc(U, phi, transport),
 
     k_
diff --git a/src/turbulenceModels/incompressible/LES/oneEqEddy/oneEqEddy.H b/src/turbulenceModels/incompressible/LES/oneEqEddy/oneEqEddy.H
index cdb58e8bff513e643a7abe30e271a4947c3d17d4..71e389a99e7536be5e71f6941867e8af297ac76e 100644
--- a/src/turbulenceModels/incompressible/LES/oneEqEddy/oneEqEddy.H
+++ b/src/turbulenceModels/incompressible/LES/oneEqEddy/oneEqEddy.H
@@ -102,7 +102,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/scaleSimilarity/scaleSimilarity.C b/src/turbulenceModels/incompressible/LES/scaleSimilarity/scaleSimilarity.C
index 4e406cfbf7d9ce381556297b5ef815bf75834604..6b1526d0eced9b523d08f3cead3a45b70606ad33 100644
--- a/src/turbulenceModels/incompressible/LES/scaleSimilarity/scaleSimilarity.C
+++ b/src/turbulenceModels/incompressible/LES/scaleSimilarity/scaleSimilarity.C
@@ -44,10 +44,11 @@ scaleSimilarity::scaleSimilarity
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     filterPtr_(LESfilter::New(U.mesh(), coeffDict())),
     filter_(filterPtr_())
 {
diff --git a/src/turbulenceModels/incompressible/LES/scaleSimilarity/scaleSimilarity.H b/src/turbulenceModels/incompressible/LES/scaleSimilarity/scaleSimilarity.H
index 7911d7b237dc81629e487ad1e21d3d715e3daea9..95aa681ab32d6d4fc7ffd6d47a13709aa70a91b2 100644
--- a/src/turbulenceModels/incompressible/LES/scaleSimilarity/scaleSimilarity.H
+++ b/src/turbulenceModels/incompressible/LES/scaleSimilarity/scaleSimilarity.H
@@ -84,7 +84,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/LES/spectEddyVisc/spectEddyVisc.C b/src/turbulenceModels/incompressible/LES/spectEddyVisc/spectEddyVisc.C
index 3369845aa1368837c9dd8a86ba36924c9e8ea624..694b93f57f78c247ed302b006d076dbe62ccf644 100644
--- a/src/turbulenceModels/incompressible/LES/spectEddyVisc/spectEddyVisc.C
+++ b/src/turbulenceModels/incompressible/LES/spectEddyVisc/spectEddyVisc.C
@@ -65,10 +65,11 @@ spectEddyVisc::spectEddyVisc
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    LESModel(typeName, U, phi, transport),
+    LESModel(typeName, U, phi, transport, turbulenceModelName),
     GenEddyVisc(U, phi, transport),
 
     cB_
diff --git a/src/turbulenceModels/incompressible/LES/spectEddyVisc/spectEddyVisc.H b/src/turbulenceModels/incompressible/LES/spectEddyVisc/spectEddyVisc.H
index 615abaa6e50e82e8224347025a321687b0c5578b..d8bfdd9b0cd4fb773897aac3a3d5b7a9f8e6067d 100644
--- a/src/turbulenceModels/incompressible/LES/spectEddyVisc/spectEddyVisc.H
+++ b/src/turbulenceModels/incompressible/LES/spectEddyVisc/spectEddyVisc.H
@@ -104,7 +104,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/LRR/LRR.C b/src/turbulenceModels/incompressible/RAS/LRR/LRR.C
index 1463556ca27f8dc50a9e911b812822347ffa8379..32733b9a2d196a1565cffba45629b830789b675d 100644
--- a/src/turbulenceModels/incompressible/RAS/LRR/LRR.C
+++ b/src/turbulenceModels/incompressible/RAS/LRR/LRR.C
@@ -49,10 +49,11 @@ LRR::LRR
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/LRR/LRR.H b/src/turbulenceModels/incompressible/RAS/LRR/LRR.H
index 2b916f182a07a119274c8ec23d89e8e739c08051..f359fd0f2eb8085fbebc5937e32405da98f62d31 100644
--- a/src/turbulenceModels/incompressible/RAS/LRR/LRR.H
+++ b/src/turbulenceModels/incompressible/RAS/LRR/LRR.H
@@ -109,7 +109,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/LamBremhorstKE/LamBremhorstKE.C b/src/turbulenceModels/incompressible/RAS/LamBremhorstKE/LamBremhorstKE.C
index 90f9d3dc3d618b4486b9b49946eb7b43c00397e0..4670e24b7a0d253d373305f2a668f05d8b1f9ffd 100644
--- a/src/turbulenceModels/incompressible/RAS/LamBremhorstKE/LamBremhorstKE.C
+++ b/src/turbulenceModels/incompressible/RAS/LamBremhorstKE/LamBremhorstKE.C
@@ -48,10 +48,11 @@ LamBremhorstKE::LamBremhorstKE
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/LamBremhorstKE/LamBremhorstKE.H b/src/turbulenceModels/incompressible/RAS/LamBremhorstKE/LamBremhorstKE.H
index c246518cab91e1da34ab256d07c89939a3bfcd9a..673c1db7c68325c04ba55bf4a38b0ecf7bca12e2 100644
--- a/src/turbulenceModels/incompressible/RAS/LamBremhorstKE/LamBremhorstKE.H
+++ b/src/turbulenceModels/incompressible/RAS/LamBremhorstKE/LamBremhorstKE.H
@@ -86,7 +86,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.C b/src/turbulenceModels/incompressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.C
index b42d67284cb564d1107f9e08e1075c65a2416f00..b8fdf50165a262b6058f996aae7c54e1d5514157 100644
--- a/src/turbulenceModels/incompressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.C
+++ b/src/turbulenceModels/incompressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.C
@@ -49,10 +49,11 @@ LaunderGibsonRSTM::LaunderGibsonRSTM
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.H b/src/turbulenceModels/incompressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.H
index 7df7624f820350db734d521919d6c5018edc4a0e..f6f1153c1d82990f6bb21dc5c576b84918d3c9cc 100644
--- a/src/turbulenceModels/incompressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.H
+++ b/src/turbulenceModels/incompressible/RAS/LaunderGibsonRSTM/LaunderGibsonRSTM.H
@@ -120,7 +120,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/LaunderSharmaKE/LaunderSharmaKE.C b/src/turbulenceModels/incompressible/RAS/LaunderSharmaKE/LaunderSharmaKE.C
index 38c789d3223bcc4dfd3b9c95c2996ebf3bbc40d0..f7b50029863c2a9b4a63b384e1dae117436f17b6 100644
--- a/src/turbulenceModels/incompressible/RAS/LaunderSharmaKE/LaunderSharmaKE.C
+++ b/src/turbulenceModels/incompressible/RAS/LaunderSharmaKE/LaunderSharmaKE.C
@@ -64,10 +64,11 @@ LaunderSharmaKE::LaunderSharmaKE
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/LaunderSharmaKE/LaunderSharmaKE.H b/src/turbulenceModels/incompressible/RAS/LaunderSharmaKE/LaunderSharmaKE.H
index 05cfafa5c80d2636fc7ee5397d560dcf17df2fab..e20f9aaf592f8bca0c045fb1b2726364fb1feeec 100644
--- a/src/turbulenceModels/incompressible/RAS/LaunderSharmaKE/LaunderSharmaKE.H
+++ b/src/turbulenceModels/incompressible/RAS/LaunderSharmaKE/LaunderSharmaKE.H
@@ -102,7 +102,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/LienCubicKE/LienCubicKE.C b/src/turbulenceModels/incompressible/RAS/LienCubicKE/LienCubicKE.C
index eac566e5e5292316ca0485c503287b098c450930..bc501c1334ed83864b1abf8738e13ca607313673 100644
--- a/src/turbulenceModels/incompressible/RAS/LienCubicKE/LienCubicKE.C
+++ b/src/turbulenceModels/incompressible/RAS/LienCubicKE/LienCubicKE.C
@@ -48,10 +48,11 @@ LienCubicKE::LienCubicKE
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     C1_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/LienCubicKE/LienCubicKE.H b/src/turbulenceModels/incompressible/RAS/LienCubicKE/LienCubicKE.H
index d7c616d50b14006c3c8ef0711d4491bab0d55b01..ae6fc56bb2078295af914669cc4d29e41f35f875 100644
--- a/src/turbulenceModels/incompressible/RAS/LienCubicKE/LienCubicKE.H
+++ b/src/turbulenceModels/incompressible/RAS/LienCubicKE/LienCubicKE.H
@@ -99,7 +99,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/LienCubicKELowRe/LienCubicKELowRe.C b/src/turbulenceModels/incompressible/RAS/LienCubicKELowRe/LienCubicKELowRe.C
index 264293e0fad29a675a6e73c8ab2689f24843b5c3..dd2954d96f9d51c8e83a855991d8c7da8d0b97f0 100644
--- a/src/turbulenceModels/incompressible/RAS/LienCubicKELowRe/LienCubicKELowRe.C
+++ b/src/turbulenceModels/incompressible/RAS/LienCubicKELowRe/LienCubicKELowRe.C
@@ -49,10 +49,11 @@ LienCubicKELowRe::LienCubicKELowRe
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     C1_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/LienCubicKELowRe/LienCubicKELowRe.H b/src/turbulenceModels/incompressible/RAS/LienCubicKELowRe/LienCubicKELowRe.H
index 39420789162a1c7fb8ff705f97c4ebaf7659ab3e..975f2670ccdd8d1cf785c568109668c6ea4cf72b 100644
--- a/src/turbulenceModels/incompressible/RAS/LienCubicKELowRe/LienCubicKELowRe.H
+++ b/src/turbulenceModels/incompressible/RAS/LienCubicKELowRe/LienCubicKELowRe.H
@@ -126,7 +126,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/LienLeschzinerLowRe/LienLeschzinerLowRe.C b/src/turbulenceModels/incompressible/RAS/LienLeschzinerLowRe/LienLeschzinerLowRe.C
index ba2483529cf70f099944440a2224c16aebaa13ce..413203d87c27b301de3e7488f2236b7e309df345 100644
--- a/src/turbulenceModels/incompressible/RAS/LienLeschzinerLowRe/LienLeschzinerLowRe.C
+++ b/src/turbulenceModels/incompressible/RAS/LienLeschzinerLowRe/LienLeschzinerLowRe.C
@@ -49,10 +49,11 @@ LienLeschzinerLowRe::LienLeschzinerLowRe
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     C1_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/LienLeschzinerLowRe/LienLeschzinerLowRe.H b/src/turbulenceModels/incompressible/RAS/LienLeschzinerLowRe/LienLeschzinerLowRe.H
index 0cd19ca629f01e58cd966f1e238c8cb886d63dbc..096f92a442bcd96fb562f8728c456d8dca73ab18 100644
--- a/src/turbulenceModels/incompressible/RAS/LienLeschzinerLowRe/LienLeschzinerLowRe.H
+++ b/src/turbulenceModels/incompressible/RAS/LienLeschzinerLowRe/LienLeschzinerLowRe.H
@@ -95,7 +95,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/Make/files b/src/turbulenceModels/incompressible/RAS/Make/files
index 9b95469a648584e4b3311e46e01119a2abc09a49..3712d227bd8ef5db22d301bd83f70513304540be 100644
--- a/src/turbulenceModels/incompressible/RAS/Make/files
+++ b/src/turbulenceModels/incompressible/RAS/Make/files
@@ -44,8 +44,8 @@ derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFv
 derivedFvPatchFields/turbulentMixingLengthDissipationRateInlet/turbulentMixingLengthDissipationRateInletFvPatchScalarField.C
 derivedFvPatchFields/turbulentMixingLengthFrequencyInlet/turbulentMixingLengthFrequencyInletFvPatchScalarField.C
 derivedFvPatchFields/fixedShearStress/fixedShearStressFvPatchVectorField.C
-derivedFvPatchFields/ABLInletEpsilon/ABLInletEpsilonFvPatchScalarField.C
-derivedFvPatchFields/ABLInletVelocity/ABLInletVelocityFvPatchVectorField.C
+derivedFvPatchFields/atmBoundaryLayerInletEpsilon/atmBoundaryLayerInletEpsilonFvPatchScalarField.C
+derivedFvPatchFields/atmBoundaryLayerInletVelocity/atmBoundaryLayerInletVelocityFvPatchVectorField.C
 
 backwardsCompatibility/wallFunctions/backwardsCompatibilityWallFunctions.C
 
diff --git a/src/turbulenceModels/incompressible/RAS/NonlinearKEShih/NonlinearKEShih.C b/src/turbulenceModels/incompressible/RAS/NonlinearKEShih/NonlinearKEShih.C
index f5ece338cfec2b3c7e43c5b44a6c237a166be196..9424f3fb122b45506b8ee1e7ef8433d06c60982a 100644
--- a/src/turbulenceModels/incompressible/RAS/NonlinearKEShih/NonlinearKEShih.C
+++ b/src/turbulenceModels/incompressible/RAS/NonlinearKEShih/NonlinearKEShih.C
@@ -47,10 +47,11 @@ NonlinearKEShih::NonlinearKEShih
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     C1_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/NonlinearKEShih/NonlinearKEShih.H b/src/turbulenceModels/incompressible/RAS/NonlinearKEShih/NonlinearKEShih.H
index 1ca72f44f433c8d7e0e5b4b3b76ad053c0fc95a4..dc3b31f1d8744e8abe9759c90e8998aa30ce7aef 100644
--- a/src/turbulenceModels/incompressible/RAS/NonlinearKEShih/NonlinearKEShih.H
+++ b/src/turbulenceModels/incompressible/RAS/NonlinearKEShih/NonlinearKEShih.H
@@ -102,7 +102,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/RASModel/RASModel.C b/src/turbulenceModels/incompressible/RAS/RASModel/RASModel.C
index 87d50dedd7f04d3d86940f09284065230ba80e4d..2b93114c49f7e9939ea5454dc70eea3bf46b54e2 100644
--- a/src/turbulenceModels/incompressible/RAS/RASModel/RASModel.C
+++ b/src/turbulenceModels/incompressible/RAS/RASModel/RASModel.C
@@ -58,10 +58,11 @@ RASModel::RASModel
     const word& type,
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    turbulenceModel(U, phi, transport),
+    turbulenceModel(U, phi, transport, turbulenceModelName),
 
     IOdictionary
     (
@@ -70,7 +71,7 @@ RASModel::RASModel
             "RASProperties",
             U.time().constant(),
             U.db(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE
         )
     ),
@@ -101,7 +102,8 @@ autoPtr<RASModel> RASModel::New
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 {
     // get model name, but do not register the dictionary
@@ -115,7 +117,7 @@ autoPtr<RASModel> RASModel::New
                 "RASProperties",
                 U.time().constant(),
                 U.db(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -135,7 +137,8 @@ autoPtr<RASModel> RASModel::New
             "("
                 "const volVectorField&, "
                 "const surfaceScalarField&, "
-                "transportModel&"
+                "transportModel&, "
+                "const word&"
             ")"
         )   << "Unknown RASModel type "
             << modelType << nl << nl
@@ -144,7 +147,10 @@ autoPtr<RASModel> RASModel::New
             << exit(FatalError);
     }
 
-    return autoPtr<RASModel>(cstrIter()(U, phi, transport));
+    return autoPtr<RASModel>
+    (
+        cstrIter()(U, phi, transport, turbulenceModelName)
+    );
 }
 
 
@@ -206,7 +212,22 @@ void RASModel::correct()
 
 bool RASModel::read()
 {
-    if (regIOobject::read())
+    //if (regIOobject::read())
+
+    // Bit of trickery : we are both IOdictionary ('RASProperties') and
+    // an regIOobject from the turbulenceModel level. Problem is to distinguish
+    // between the two - we only want to reread the IOdictionary.
+    
+    bool ok = IOdictionary::readData
+    (
+        IOdictionary::readStream
+        (
+            IOdictionary::type()
+        )
+    );
+    IOdictionary::close();
+
+    if (ok)
     {
         lookup("turbulence") >> turbulence_;
 
diff --git a/src/turbulenceModels/incompressible/RAS/RASModel/RASModel.H b/src/turbulenceModels/incompressible/RAS/RASModel/RASModel.H
index 3fb426e4a2054fcdc36334cb4eecffcbde991ff3..1485f9516c78db62f89704ec16bbfb9483511ac8 100644
--- a/src/turbulenceModels/incompressible/RAS/RASModel/RASModel.H
+++ b/src/turbulenceModels/incompressible/RAS/RASModel/RASModel.H
@@ -131,9 +131,10 @@ public:
             (
                 const volVectorField& U,
                 const surfaceScalarField& phi,
-                transportModel& transport
+                transportModel& transport,
+                const word& turbulenceModelName
             ),
-            (U, phi, transport)
+            (U, phi, transport, turbulenceModelName)
         );
 
 
@@ -145,7 +146,8 @@ public:
             const word& type,
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
@@ -156,7 +158,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/RNGkEpsilon/RNGkEpsilon.C b/src/turbulenceModels/incompressible/RAS/RNGkEpsilon/RNGkEpsilon.C
index 8ee789e9bdf2b60adba8de2cbc38ff2e646a8dbe..e927f484214bb3bb875e830f9dbbfef42d9b2616 100644
--- a/src/turbulenceModels/incompressible/RAS/RNGkEpsilon/RNGkEpsilon.C
+++ b/src/turbulenceModels/incompressible/RAS/RNGkEpsilon/RNGkEpsilon.C
@@ -48,10 +48,11 @@ RNGkEpsilon::RNGkEpsilon
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/RNGkEpsilon/RNGkEpsilon.H b/src/turbulenceModels/incompressible/RAS/RNGkEpsilon/RNGkEpsilon.H
index be56746b162198ce5f10155e243ca2cae613b3af..e0d55e02e898069afc583e8335751c12c65cc1ba 100644
--- a/src/turbulenceModels/incompressible/RAS/RNGkEpsilon/RNGkEpsilon.H
+++ b/src/turbulenceModels/incompressible/RAS/RNGkEpsilon/RNGkEpsilon.H
@@ -100,7 +100,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/SpalartAllmaras/SpalartAllmaras.C b/src/turbulenceModels/incompressible/RAS/SpalartAllmaras/SpalartAllmaras.C
index 3d3b3dd1ee30edad364e491121f012ba2905bef4..1c894f2679267618146421c66d3500a53a2f6a3a 100644
--- a/src/turbulenceModels/incompressible/RAS/SpalartAllmaras/SpalartAllmaras.C
+++ b/src/turbulenceModels/incompressible/RAS/SpalartAllmaras/SpalartAllmaras.C
@@ -106,10 +106,11 @@ SpalartAllmaras::SpalartAllmaras
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     sigmaNut_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/SpalartAllmaras/SpalartAllmaras.H b/src/turbulenceModels/incompressible/RAS/SpalartAllmaras/SpalartAllmaras.H
index 6763149306bfd331020df44c4156742a93dea4bf..65bae4e6c688de434b1e0b6011d702d21665807f 100644
--- a/src/turbulenceModels/incompressible/RAS/SpalartAllmaras/SpalartAllmaras.H
+++ b/src/turbulenceModels/incompressible/RAS/SpalartAllmaras/SpalartAllmaras.H
@@ -144,7 +144,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletEpsilon/ABLInletEpsilonFvPatchScalarField.C b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletEpsilon/atmBoundaryLayerInletEpsilonFvPatchScalarField.C
similarity index 72%
rename from src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletEpsilon/ABLInletEpsilonFvPatchScalarField.C
rename to src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletEpsilon/atmBoundaryLayerInletEpsilonFvPatchScalarField.C
index a69a36f140c85afe0aa2fa26a988aa954e9aab86..58a5df9cec432db807e6e4d8d45a27f0c60ed77e 100644
--- a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletEpsilon/ABLInletEpsilonFvPatchScalarField.C
+++ b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletEpsilon/atmBoundaryLayerInletEpsilonFvPatchScalarField.C
@@ -24,7 +24,7 @@ License
 
 \*---------------------------------------------------------------------------*/
 
-#include "ABLInletEpsilonFvPatchScalarField.H"
+#include "atmBoundaryLayerInletEpsilonFvPatchScalarField.H"
 #include "addToRunTimeSelectionTable.H"
 #include "fvPatchFieldMapper.H"
 #include "volFields.H"
@@ -39,7 +39,8 @@ namespace incompressible
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
-ABLInletEpsilonFvPatchScalarField::ABLInletEpsilonFvPatchScalarField
+atmBoundaryLayerInletEpsilonFvPatchScalarField::
+atmBoundaryLayerInletEpsilonFvPatchScalarField
 (
     const fvPatch& p,
     const DimensionedField<scalar, volMesh>& iF
@@ -49,13 +50,15 @@ ABLInletEpsilonFvPatchScalarField::ABLInletEpsilonFvPatchScalarField
     Ustar_(0),
     z_(pTraits<vector>::zero),
     z0_(0),
-    kappa_(0.41)
+    kappa_(0.41),
+    zGround_(0)
 {}
 
 
-ABLInletEpsilonFvPatchScalarField::ABLInletEpsilonFvPatchScalarField
+atmBoundaryLayerInletEpsilonFvPatchScalarField::
+atmBoundaryLayerInletEpsilonFvPatchScalarField
 (
-    const ABLInletEpsilonFvPatchScalarField& ptf,
+    const atmBoundaryLayerInletEpsilonFvPatchScalarField& ptf,
     const fvPatch& p,
     const DimensionedField<scalar, volMesh>& iF,
     const fvPatchFieldMapper& mapper
@@ -65,11 +68,13 @@ ABLInletEpsilonFvPatchScalarField::ABLInletEpsilonFvPatchScalarField
     Ustar_(ptf.Ustar_),
     z_(ptf.z_),
     z0_(ptf.z0_),
-    kappa_(ptf.kappa_)
+    kappa_(ptf.kappa_),
+    zGround_(ptf.zGround_)
 {}
 
 
-ABLInletEpsilonFvPatchScalarField::ABLInletEpsilonFvPatchScalarField
+atmBoundaryLayerInletEpsilonFvPatchScalarField::
+atmBoundaryLayerInletEpsilonFvPatchScalarField
 (
     const fvPatch& p,
     const DimensionedField<scalar, volMesh>& iF,
@@ -80,11 +85,12 @@ ABLInletEpsilonFvPatchScalarField::ABLInletEpsilonFvPatchScalarField
     Ustar_(readScalar(dict.lookup("Ustar"))),
     z_(dict.lookup("z")),
     z0_(readScalar(dict.lookup("z0"))),
-    kappa_(dict.lookupOrDefault<scalar>("kappa", 0.41))
+    kappa_(dict.lookupOrDefault<scalar>("kappa", 0.41)),
+    zGround_(readScalar(dict.lookup("zGround")))
 {
     if (mag(z_) < SMALL)
     {
-        FatalErrorIn("ABLInletEpsilonFvPatchScalarField(dict)")
+        FatalErrorIn("atmBoundaryLayerInletEpsilonFvPatchScalarField(dict)")
             << "z is not correct"
             << abort(FatalError);
     }
@@ -95,9 +101,10 @@ ABLInletEpsilonFvPatchScalarField::ABLInletEpsilonFvPatchScalarField
 }
 
 
-ABLInletEpsilonFvPatchScalarField::ABLInletEpsilonFvPatchScalarField
+atmBoundaryLayerInletEpsilonFvPatchScalarField::
+atmBoundaryLayerInletEpsilonFvPatchScalarField
 (
-    const ABLInletEpsilonFvPatchScalarField& fcvpvf,
+    const atmBoundaryLayerInletEpsilonFvPatchScalarField& fcvpvf,
     const DimensionedField<scalar, volMesh>& iF
 )
 :
@@ -105,22 +112,23 @@ ABLInletEpsilonFvPatchScalarField::ABLInletEpsilonFvPatchScalarField
     Ustar_(fcvpvf.Ustar_),
     z_(fcvpvf.z_),
     z0_(fcvpvf.z0_),
-    kappa_(fcvpvf.kappa_)
+    kappa_(fcvpvf.kappa_),
+    zGround_(fcvpvf.zGround_)
 {}
 
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-void ABLInletEpsilonFvPatchScalarField::updateCoeffs()
+void atmBoundaryLayerInletEpsilonFvPatchScalarField::updateCoeffs()
 {
     const vectorField& c = patch().Cf();
     scalarField coord = (c & z_);
-    scalarField::operator=(pow(Ustar_, 3.0)/(kappa_*(coord + z0_)));
+    scalarField::operator=(pow(Ustar_, 3.0)/(kappa_*(coord - zGround_ + z0_)));
 }
 
 
 // Write
-void ABLInletEpsilonFvPatchScalarField::write(Ostream& os) const
+void atmBoundaryLayerInletEpsilonFvPatchScalarField::write(Ostream& os) const
 {
     fvPatchScalarField::write(os);
     os.writeKeyword("Ustar")
@@ -131,13 +139,19 @@ void ABLInletEpsilonFvPatchScalarField::write(Ostream& os) const
         << z0_ << token::END_STATEMENT << nl;
     os.writeKeyword("kappa")
         << kappa_ << token::END_STATEMENT << nl;
+    os.writeKeyword("zGround")
+        << zGround_ << token::END_STATEMENT << nl;
     writeEntry("value", os);
 }
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-makePatchTypeField(fvPatchScalarField, ABLInletEpsilonFvPatchScalarField);
+makePatchTypeField
+(
+    fvPatchScalarField,
+    atmBoundaryLayerInletEpsilonFvPatchScalarField
+);
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletEpsilon/ABLInletEpsilonFvPatchScalarField.H b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletEpsilon/atmBoundaryLayerInletEpsilonFvPatchScalarField.H
similarity index 78%
rename from src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletEpsilon/ABLInletEpsilonFvPatchScalarField.H
rename to src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletEpsilon/atmBoundaryLayerInletEpsilonFvPatchScalarField.H
index 39560879aa929566299c32045848f7660db21514..89a3cb213bb9c85ee0068f7e930c1fd0c99b2d68 100644
--- a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletEpsilon/ABLInletEpsilonFvPatchScalarField.H
+++ b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletEpsilon/atmBoundaryLayerInletEpsilonFvPatchScalarField.H
@@ -23,7 +23,7 @@ License
     Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 
 Class
-    ABLInletEpsilonFvPatchScalarField
+    atmBoundaryLayerInletEpsilonFvPatchScalarField
 
 Description
     Boundary condition specifies a epsilon inlet for the atmospheric boundary
@@ -31,7 +31,7 @@ Description
     ABLInletVelocity.
 
     @verbatim
-        epsilon = Ustar^3 / (K(z + z0))
+        epsilon = Ustar^3 / (K(z - zGround + z0))
 
     where:
 
@@ -39,6 +39,7 @@ Description
         K is karman's constant
         z is the verical coordinate
         z0 is the surface roughness lenght
+        zGround minium vlaue in z direction
 
     @endverbatim
 
@@ -49,12 +50,12 @@ Description
     Journal of Wind Engineering and Industrial Aerodynamics 95(2007) 355-369.
 
 SourceFiles
-    ABLInletEpsilonFvPatchScalarField.C
+    atmBoundaryLayerInletEpsilonFvPatchScalarField.C
 
 \*---------------------------------------------------------------------------*/
 
-#ifndef ABLInletEpsilonFvPatchScalarField_H
-#define ABLInletEpsilonFvPatchScalarField_H
+#ifndef atmBoundaryLayerInletEpsilonFvPatchScalarField_H
+#define atmBoundaryLayerInletEpsilonFvPatchScalarField_H
 
 #include "fvPatchFields.H"
 #include "fixedValueFvPatchFields.H"
@@ -67,16 +68,16 @@ namespace incompressible
 {
 
 /*---------------------------------------------------------------------------*\
-              Class ABLInletEpsilonFvPatchScalarField Declaration
+        Class atmBoundaryLayerInletEpsilonFvPatchScalarField Declaration
 \*---------------------------------------------------------------------------*/
 
-class ABLInletEpsilonFvPatchScalarField
+class atmBoundaryLayerInletEpsilonFvPatchScalarField
 :
     public fixedValueFvPatchScalarField
 {
     // Private data
 
-        //- Peak velocity magnitude
+        //- Frictional velocity
         scalar Ustar_;
 
         //- Direction of the z-coordinate
@@ -88,34 +89,37 @@ class ABLInletEpsilonFvPatchScalarField
          //- Von Karman constant
         scalar kappa_;
 
+         //- Minimum corrdinate value in z direction
+        scalar zGround_;
+
 public:
 
     //- Runtime type information
-    TypeName("ABLInletEpsilon");
+    TypeName("atmBoundaryLayerInletEpsilon");
 
 
     // Constructors
 
         //- Construct from patch and internal field
-        ABLInletEpsilonFvPatchScalarField
+        atmBoundaryLayerInletEpsilonFvPatchScalarField
         (
             const fvPatch&,
             const DimensionedField<scalar, volMesh>&
         );
 
         //- Construct from patch, internal field and dictionary
-        ABLInletEpsilonFvPatchScalarField
+        atmBoundaryLayerInletEpsilonFvPatchScalarField
         (
             const fvPatch&,
             const DimensionedField<scalar, volMesh>&,
             const dictionary&
         );
 
-        //- Construct by mapping given ABLInletEpsilonFvPatchScalarField
-        //  onto a new patch
-        ABLInletEpsilonFvPatchScalarField
+        //- Construct by mapping given
+        //  atmBoundaryLayerInletEpsilonFvPatchScalarField onto a new patch
+        atmBoundaryLayerInletEpsilonFvPatchScalarField
         (
-            const ABLInletEpsilonFvPatchScalarField&,
+            const atmBoundaryLayerInletEpsilonFvPatchScalarField&,
             const fvPatch&,
             const DimensionedField<scalar, volMesh>&,
             const fvPatchFieldMapper&
@@ -126,14 +130,14 @@ public:
         {
             return tmp<fvPatchScalarField>
             (
-                new ABLInletEpsilonFvPatchScalarField(*this)
+                new atmBoundaryLayerInletEpsilonFvPatchScalarField(*this)
             );
         }
 
         //- Construct as copy setting internal field reference
-        ABLInletEpsilonFvPatchScalarField
+        atmBoundaryLayerInletEpsilonFvPatchScalarField
         (
-            const ABLInletEpsilonFvPatchScalarField&,
+            const atmBoundaryLayerInletEpsilonFvPatchScalarField&,
             const DimensionedField<scalar, volMesh>&
         );
 
@@ -145,7 +149,7 @@ public:
         {
             return tmp<fvPatchScalarField>
             (
-                new ABLInletEpsilonFvPatchScalarField(*this, iF)
+                new atmBoundaryLayerInletEpsilonFvPatchScalarField(*this, iF)
             );
         }
 
diff --git a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletVelocity/ABLInletVelocityFvPatchVectorField.C b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletVelocity/atmBoundaryLayerInletVelocityFvPatchVectorField.C
similarity index 60%
rename from src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletVelocity/ABLInletVelocityFvPatchVectorField.C
rename to src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletVelocity/atmBoundaryLayerInletVelocityFvPatchVectorField.C
index d8e7ae4639bcfa5f896692aa373805a85d480fac..ad712145fc48b9d9ddbebb43876b6c3d64fd4d37 100644
--- a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletVelocity/ABLInletVelocityFvPatchVectorField.C
+++ b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletVelocity/atmBoundaryLayerInletVelocityFvPatchVectorField.C
@@ -24,7 +24,7 @@ License
 
 \*---------------------------------------------------------------------------*/
 
-#include "ABLInletVelocityFvPatchVectorField.H"
+#include "atmBoundaryLayerInletVelocityFvPatchVectorField.H"
 #include "addToRunTimeSelectionTable.H"
 #include "fvPatchFieldMapper.H"
 #include "volFields.H"
@@ -39,7 +39,8 @@ namespace incompressible
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
-ABLInletVelocityFvPatchVectorField::ABLInletVelocityFvPatchVectorField
+atmBoundaryLayerInletVelocityFvPatchVectorField::
+atmBoundaryLayerInletVelocityFvPatchVectorField
 (
     const fvPatch& p,
     const DimensionedField<vector, volMesh>& iF
@@ -50,13 +51,17 @@ ABLInletVelocityFvPatchVectorField::ABLInletVelocityFvPatchVectorField
     n_(pTraits<vector>::zero),
     z_(pTraits<vector>::zero),
     z0_(0),
-    kappa_(0.41)
+    kappa_(0.41),
+    Uref_(0),
+    Href_(0),
+    zGround_(0)
 {}
 
 
-ABLInletVelocityFvPatchVectorField::ABLInletVelocityFvPatchVectorField
+atmBoundaryLayerInletVelocityFvPatchVectorField::
+atmBoundaryLayerInletVelocityFvPatchVectorField
 (
-    const ABLInletVelocityFvPatchVectorField& ptf,
+    const atmBoundaryLayerInletVelocityFvPatchVectorField& ptf,
     const fvPatch& p,
     const DimensionedField<vector, volMesh>& iF,
     const fvPatchFieldMapper& mapper
@@ -67,11 +72,15 @@ ABLInletVelocityFvPatchVectorField::ABLInletVelocityFvPatchVectorField
     n_(ptf.n_),
     z_(ptf.z_),
     z0_(ptf.z0_),
-    kappa_(ptf.kappa_)
+    kappa_(ptf.kappa_),
+    Uref_(ptf.Uref_),
+    Href_(ptf.Href_),
+    zGround_(ptf.zGround_)
 {}
 
 
-ABLInletVelocityFvPatchVectorField::ABLInletVelocityFvPatchVectorField
+atmBoundaryLayerInletVelocityFvPatchVectorField::
+atmBoundaryLayerInletVelocityFvPatchVectorField
 (
     const fvPatch& p,
     const DimensionedField<vector, volMesh>& iF,
@@ -79,29 +88,35 @@ ABLInletVelocityFvPatchVectorField::ABLInletVelocityFvPatchVectorField
 )
 :
     fixedValueFvPatchVectorField(p, iF),
-    Ustar_(readScalar(dict.lookup("Ustar"))),
+    Ustar_(0),
     n_(dict.lookup("n")),
     z_(dict.lookup("z")),
     z0_(readScalar(dict.lookup("z0"))),
-    kappa_(dict.lookupOrDefault<scalar>("kappa", 0.41))
+    kappa_(dict.lookupOrDefault<scalar>("kappa", 0.41)),
+    Uref_(readScalar(dict.lookup("Uref"))),
+    Href_(readScalar(dict.lookup("Href"))),
+    zGround_(readScalar(dict.lookup("zGround")))
 {
-    if (mag(n_) < SMALL || mag(z_) < SMALL)
+    if (mag(n_) < SMALL || mag(z_) < SMALL || mag(z0_) < SMALL)
     {
-        FatalErrorIn("ABLInletVelocityFvPatchVectorField(dict)")
-            << "n or z given with zero size not correct"
+        FatalErrorIn("atmBoundaryLayerInletVelocityFvPatchVectorField(dict)")
+            << "n, z or z0 given are close to zero is not correct"
             << abort(FatalError);
     }
 
     n_ /= mag(n_);
     z_ /= mag(z_);
 
+    Ustar_ = kappa_*Uref_/(log((Href_  + z0_)/min(z0_ , 0.001)));
+
     evaluate();
 }
 
 
-ABLInletVelocityFvPatchVectorField::ABLInletVelocityFvPatchVectorField
+atmBoundaryLayerInletVelocityFvPatchVectorField::
+atmBoundaryLayerInletVelocityFvPatchVectorField
 (
-    const ABLInletVelocityFvPatchVectorField& fcvpvf,
+    const atmBoundaryLayerInletVelocityFvPatchVectorField& fcvpvf,
     const DimensionedField<vector, volMesh>& iF
 )
 :
@@ -110,41 +125,68 @@ ABLInletVelocityFvPatchVectorField::ABLInletVelocityFvPatchVectorField
     n_(fcvpvf.n_),
     z_(fcvpvf.z_),
     z0_(fcvpvf.z0_),
-    kappa_(fcvpvf.kappa_)
+    kappa_(fcvpvf.kappa_),
+    Uref_(fcvpvf.Uref_),
+    Href_(fcvpvf.Href_),
+    zGround_(fcvpvf.zGround_)
 {}
 
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-void ABLInletVelocityFvPatchVectorField::updateCoeffs()
+void atmBoundaryLayerInletVelocityFvPatchVectorField::updateCoeffs()
 {
     const vectorField& c = patch().Cf();
     scalarField coord = (c & z_);
-    vectorField::operator=(n_*(Ustar_/kappa_)*log((coord + z0_)/z0_));
+    scalarField Un(coord.size());
+
+    forAll(coord, i)
+    {
+        if((coord[i] - zGround_) < Href_)
+        {
+            Un[i] = (Ustar_/kappa_)*log((coord[i] - zGround_ + z0_)/z0_);
+        }
+        else
+        {
+            Un[i] = (Uref_);
+        }
+    }
+
+    vectorField::operator=(n_*Un);
+
+    fixedValueFvPatchVectorField::updateCoeffs();
 }
 
 
 // Write
-void ABLInletVelocityFvPatchVectorField::write(Ostream& os) const
+void atmBoundaryLayerInletVelocityFvPatchVectorField::write(Ostream& os) const
 {
     fvPatchVectorField::write(os);
-    os.writeKeyword("Ustar")
-        << Ustar_ << token::END_STATEMENT << nl;
     os.writeKeyword("z0")
         << z0_ << token::END_STATEMENT << nl;
     os.writeKeyword("n")
         << n_ << token::END_STATEMENT << nl;
     os.writeKeyword("z")
         << z_ << token::END_STATEMENT << nl;
-     os.writeKeyword("kappa")
+    os.writeKeyword("kappa")
         << kappa_ << token::END_STATEMENT << nl;
+    os.writeKeyword("Uref")
+        << Uref_ << token::END_STATEMENT << nl;
+    os.writeKeyword("Href")
+        << Href_ << token::END_STATEMENT << nl;
+    os.writeKeyword("zGround")
+        << zGround_ << token::END_STATEMENT << nl;
     writeEntry("value", os);
 }
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-makePatchTypeField(fvPatchVectorField, ABLInletVelocityFvPatchVectorField);
+makePatchTypeField
+(
+    fvPatchVectorField,
+    atmBoundaryLayerInletVelocityFvPatchVectorField
+);
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletVelocity/ABLInletVelocityFvPatchVectorField.H b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletVelocity/atmBoundaryLayerInletVelocityFvPatchVectorField.H
similarity index 77%
rename from src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletVelocity/ABLInletVelocityFvPatchVectorField.H
rename to src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletVelocity/atmBoundaryLayerInletVelocityFvPatchVectorField.H
index 0e7a9167cdb4395f7346339e59666bf0f1a01243..4f5783bb0fb6e560d34c66927c369aedf435846c 100644
--- a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/ABLInletVelocity/ABLInletVelocityFvPatchVectorField.H
+++ b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/atmBoundaryLayerInletVelocity/atmBoundaryLayerInletVelocityFvPatchVectorField.H
@@ -23,7 +23,7 @@ License
     Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 
 Class
-    ABLInletVelocityFvPatchVectorField
+    atmBoundaryLayerInletVelocityFvPatchVectorField
 
 Description
     Boundary condition specifies a atmospheric boundary layer (ABL)
@@ -31,7 +31,7 @@ Description
     flow direction n and direction of the parabolic coordinate z.
 
     @verbatim
-        U = (Ustar/K) ln((z + z0)/z0)
+        U = (Ustar/K) ln((z - zGround + z0)/z0)
 
     where:
 
@@ -39,6 +39,7 @@ Description
         K is karman's constant
         z0 is the surface roughness lenght
         z is the verical coordinate
+        zGround is the minumum coordinate value in z direction.
 
     and:
 
@@ -63,12 +64,12 @@ NOTE: D.M. Hargreaves and N.G. Wright recommend Gamma epsilon in the k-epsilon
       reference
 
 SourceFiles
-    ABLInletVelocityFvPatchVectorField.C
+    atmBoundaryLayerInletVelocityFvPatchVectorField.C
 
 \*---------------------------------------------------------------------------*/
 
-#ifndef ABLInletVelocityFvPatchVectorField_H
-#define ABLInletVelocityFvPatchVectorField_H
+#ifndef atmBoundaryLayerInletVelocityFvPatchVectorField_H
+#define atmBoundaryLayerInletVelocityFvPatchVectorField_H
 
 #include "fvPatchFields.H"
 #include "fixedValueFvPatchFields.H"
@@ -81,16 +82,16 @@ namespace incompressible
 {
 
 /*---------------------------------------------------------------------------*\
-             Class ABLInletVelocityFvPatchVectorField Declaration
+       Class atmBoundaryLayerInletVelocityFvPatchVectorField Declaration
 \*---------------------------------------------------------------------------*/
 
-class ABLInletVelocityFvPatchVectorField
+class atmBoundaryLayerInletVelocityFvPatchVectorField
 :
     public fixedValueFvPatchVectorField
 {
     // Private data
 
-        //- Friction velocity
+        //- Frictional velocity
         scalar Ustar_;
 
         //- Flow direction
@@ -105,34 +106,43 @@ class ABLInletVelocityFvPatchVectorField
         //- Von Karman constant
         scalar kappa_;
 
+        //- Reference velocity
+        scalar Uref_;
+
+        //- Reference hight
+        scalar Href_;
+
+        //- Minimum corrdinate value in z direction
+        scalar zGround_;
+
 public:
 
     //- Runtime type information
-    TypeName("ABLInletVelocity");
+    TypeName("atmBoundaryLayerInletVelocity");
 
 
     // Constructors
 
         //- Construct from patch and internal field
-        ABLInletVelocityFvPatchVectorField
+        atmBoundaryLayerInletVelocityFvPatchVectorField
         (
             const fvPatch&,
             const DimensionedField<vector, volMesh>&
         );
 
         //- Construct from patch, internal field and dictionary
-        ABLInletVelocityFvPatchVectorField
+        atmBoundaryLayerInletVelocityFvPatchVectorField
         (
             const fvPatch&,
             const DimensionedField<vector, volMesh>&,
             const dictionary&
         );
 
-        //- Construct by mapping given ABLInletVelocityFvPatchVectorField
+        //- Construct by mapping given atmBoundaryLayerInletVelocityFvPatchVectorField
         //  onto a new patch
-        ABLInletVelocityFvPatchVectorField
+        atmBoundaryLayerInletVelocityFvPatchVectorField
         (
-            const ABLInletVelocityFvPatchVectorField&,
+            const atmBoundaryLayerInletVelocityFvPatchVectorField&,
             const fvPatch&,
             const DimensionedField<vector, volMesh>&,
             const fvPatchFieldMapper&
@@ -143,14 +153,14 @@ public:
         {
             return tmp<fvPatchVectorField>
             (
-                new ABLInletVelocityFvPatchVectorField(*this)
+                new atmBoundaryLayerInletVelocityFvPatchVectorField(*this)
             );
         }
 
         //- Construct as copy setting internal field reference
-        ABLInletVelocityFvPatchVectorField
+        atmBoundaryLayerInletVelocityFvPatchVectorField
         (
-            const ABLInletVelocityFvPatchVectorField&,
+            const atmBoundaryLayerInletVelocityFvPatchVectorField&,
             const DimensionedField<vector, volMesh>&
         );
 
@@ -162,14 +172,14 @@ public:
         {
             return tmp<fvPatchVectorField>
             (
-                new ABLInletVelocityFvPatchVectorField(*this, iF)
+                new atmBoundaryLayerInletVelocityFvPatchVectorField(*this, iF)
             );
         }
 
 
     // Member functions
 
-        //- Return max value
+        //- Return Ustar
         scalar& Ustar()
         {
             return Ustar_;
@@ -181,7 +191,7 @@ public:
             return n_;
         }
 
-        //- Return y direction
+        //- Return z direction
         vector& z()
         {
             return z_;
diff --git a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.C b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.C
index e90118f7998e6e61e338cc79f8f1ed6ac425ada8..55a309f8abfc932d93cfa3fd9eccbc92491ba934 100644
--- a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.C
+++ b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/epsilonWallFunctions/epsilonWallFunction/epsilonWallFunctionFvPatchScalarField.C
@@ -214,22 +214,13 @@ void epsilonWallFunctionFvPatchScalarField::updateCoeffs()
     {
         label faceCellI = patch().faceCells()[faceI];
 
-        scalar yPlus = Cmu25*y[faceI]*sqrt(k[faceCellI])/nuw[faceI];
-
         epsilon[faceCellI] = Cmu75*pow(k[faceCellI], 1.5)/(kappa_*y[faceI]);
 
-        if (yPlus > yPlusLam_)
-        {
-            G[faceCellI] =
-                (nutw[faceI] + nuw[faceI])
-               *magGradUw[faceI]
-               *Cmu25*sqrt(k[faceCellI])
-               /(kappa_*y[faceI]);
-        }
-        else
-        {
-            G[faceCellI] = 0.0;
-        }
+        G[faceCellI] =
+            (nutw[faceI] + nuw[faceI])
+           *magGradUw[faceI]
+           *Cmu25*sqrt(k[faceCellI])
+           /(kappa_*y[faceI]);
     }
 
     fixedInternalValueFvPatchField<scalar>::updateCoeffs();
diff --git a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUTabulatedWallFunction/nutUTabulatedWallFunctionFvPatchScalarField.C b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUTabulatedWallFunction/nutUTabulatedWallFunctionFvPatchScalarField.C
index 79e9ab8383b234faf8df2a9a72787eed78e7f5ba..d211671ff461b9001266dd4b995834e4492add7d 100644
--- a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUTabulatedWallFunction/nutUTabulatedWallFunctionFvPatchScalarField.C
+++ b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUTabulatedWallFunction/nutUTabulatedWallFunctionFvPatchScalarField.C
@@ -138,7 +138,7 @@ nutUTabulatedWallFunctionFvPatchScalarField
             uPlusTableName_,
             patch().boundaryMesh().mesh().time().constant(),
             patch().boundaryMesh().mesh(),
-            IOobject::MUST_READ,
+            IOobject::MUST_READ_IF_MODIFIED,
             IOobject::NO_WRITE,
             false
         ),
diff --git a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.C b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.C
index 51622da14c91c67d30bc2feee8b7a88cf6adb08a..5bd1ab97b10358b01dea2dc27cf097e75450310f 100644
--- a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.C
+++ b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/omegaWallFunctions/omegaWallFunction/omegaWallFunctionFvPatchScalarField.C
@@ -219,26 +219,17 @@ void omegaWallFunctionFvPatchScalarField::updateCoeffs()
     {
         label faceCellI = patch().faceCells()[faceI];
 
-        scalar yPlus = Cmu25*y[faceI]*sqrt(k[faceCellI])/nuw[faceI];
-
         scalar omegaVis = 6.0*nuw[faceI]/(beta1_*sqr(y[faceI]));
 
         scalar omegaLog = sqrt(k[faceCellI])/(Cmu25*kappa_*y[faceI]);
 
         omega[faceCellI] = sqrt(sqr(omegaVis) + sqr(omegaLog));
 
-        if (yPlus > yPlusLam_)
-        {
-            G[faceCellI] =
-                (nutw[faceI] + nuw[faceI])
-               *magGradUw[faceI]
-               *Cmu25*sqrt(k[faceCellI])
-               /(kappa_*y[faceI]);
-        }
-        else
-        {
-            G[faceCellI] = 0.0;
-        }
+        G[faceCellI] =
+            (nutw[faceI] + nuw[faceI])
+           *magGradUw[faceI]
+           *Cmu25*sqrt(k[faceCellI])
+           /(kappa_*y[faceI]);
     }
 
     fixedInternalValueFvPatchField<scalar>::updateCoeffs();
diff --git a/src/turbulenceModels/incompressible/RAS/kEpsilon/kEpsilon.C b/src/turbulenceModels/incompressible/RAS/kEpsilon/kEpsilon.C
index b6c407d44d44a91ba74fa997c5ee4f82bbb760f4..0bd74b65caad2a18798f0e19510f8a8832a407f7 100644
--- a/src/turbulenceModels/incompressible/RAS/kEpsilon/kEpsilon.C
+++ b/src/turbulenceModels/incompressible/RAS/kEpsilon/kEpsilon.C
@@ -48,10 +48,11 @@ kEpsilon::kEpsilon
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/kEpsilon/kEpsilon.H b/src/turbulenceModels/incompressible/RAS/kEpsilon/kEpsilon.H
index b13666dacfa345b59957320769515c03732517de..0c5139fae0e441262928e5f28b23c25c0bed1ff1 100644
--- a/src/turbulenceModels/incompressible/RAS/kEpsilon/kEpsilon.H
+++ b/src/turbulenceModels/incompressible/RAS/kEpsilon/kEpsilon.H
@@ -94,7 +94,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/kOmega/kOmega.C b/src/turbulenceModels/incompressible/RAS/kOmega/kOmega.C
index e4e8b9b0218c78c50812c9f21adda2b5bc211232..c9611790eb9cdce2879a2fdeacb0a721d7f6ba16 100644
--- a/src/turbulenceModels/incompressible/RAS/kOmega/kOmega.C
+++ b/src/turbulenceModels/incompressible/RAS/kOmega/kOmega.C
@@ -48,10 +48,11 @@ kOmega::kOmega
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/kOmega/kOmega.H b/src/turbulenceModels/incompressible/RAS/kOmega/kOmega.H
index 1027e5eec58f748aa920b66ebf7ac8f55f5baae5..c53dfcb3963d18eccfb2a23c480210c2b4e4f7af 100644
--- a/src/turbulenceModels/incompressible/RAS/kOmega/kOmega.H
+++ b/src/turbulenceModels/incompressible/RAS/kOmega/kOmega.H
@@ -108,7 +108,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.C b/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.C
index d841dd691144d4003b4ec36160e03daa400218a5..5c502cc1b5d2fc41079b3d2202ab38232af40c0c 100644
--- a/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.C
+++ b/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.C
@@ -91,10 +91,11 @@ kOmegaSST::kOmegaSST
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     alphaK1_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.H b/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.H
index c233a52e6c6f1fab937fe310f28c1e8271ee975b..e03442523ec28727c38b6a59d0c7f4744e226605 100644
--- a/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.H
+++ b/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.H
@@ -178,7 +178,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/laminar/laminar.C b/src/turbulenceModels/incompressible/RAS/laminar/laminar.C
index ddd04612417ae0ae89557f9b1acf24dd679d752b..066a68ffa81875b36c1145cede0c7ae81987df07 100644
--- a/src/turbulenceModels/incompressible/RAS/laminar/laminar.C
+++ b/src/turbulenceModels/incompressible/RAS/laminar/laminar.C
@@ -46,10 +46,11 @@ laminar::laminar
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport)
+    RASModel(typeName, U, phi, transport, turbulenceModelName)
 {}
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/laminar/laminar.H b/src/turbulenceModels/incompressible/RAS/laminar/laminar.H
index 8217044927fea5e52ea20164005d1e807ca0a551..34c5120b74d8dda3b9307bb5eed390cb264b0ef7 100644
--- a/src/turbulenceModels/incompressible/RAS/laminar/laminar.H
+++ b/src/turbulenceModels/incompressible/RAS/laminar/laminar.H
@@ -67,7 +67,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/qZeta/qZeta.C b/src/turbulenceModels/incompressible/RAS/qZeta/qZeta.C
index 206db4fdec9b0802e982afe12fe48d5fa7798f0b..b72ea68054c4e10afb08ee91a68120cf005b3f84 100644
--- a/src/turbulenceModels/incompressible/RAS/qZeta/qZeta.C
+++ b/src/turbulenceModels/incompressible/RAS/qZeta/qZeta.C
@@ -74,10 +74,11 @@ qZeta::qZeta
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/qZeta/qZeta.H b/src/turbulenceModels/incompressible/RAS/qZeta/qZeta.H
index c8961d52288dffde028ed53afd5d2473f50ca9ae..0369f9256c83dfc9569576c2148857635d17de5a 100644
--- a/src/turbulenceModels/incompressible/RAS/qZeta/qZeta.H
+++ b/src/turbulenceModels/incompressible/RAS/qZeta/qZeta.H
@@ -100,7 +100,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/RAS/realizableKE/realizableKE.C b/src/turbulenceModels/incompressible/RAS/realizableKE/realizableKE.C
index 53b19dd899ff0a6a2b5cbf97c8fa14c23068ff7f..432c74f1435f4467c86f4f1045d5b73ac954eef8 100644
--- a/src/turbulenceModels/incompressible/RAS/realizableKE/realizableKE.C
+++ b/src/turbulenceModels/incompressible/RAS/realizableKE/realizableKE.C
@@ -89,10 +89,11 @@ realizableKE::realizableKE
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
-    RASModel(typeName, U, phi, transport),
+    RASModel(typeName, U, phi, transport, turbulenceModelName),
 
     Cmu_
     (
diff --git a/src/turbulenceModels/incompressible/RAS/realizableKE/realizableKE.H b/src/turbulenceModels/incompressible/RAS/realizableKE/realizableKE.H
index b1495aa6e871b20598c857659acdc67b587b8cbc..447f022e42aa8acd6fbe520bb43fc35b86adff2d 100644
--- a/src/turbulenceModels/incompressible/RAS/realizableKE/realizableKE.H
+++ b/src/turbulenceModels/incompressible/RAS/realizableKE/realizableKE.H
@@ -119,7 +119,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/turbulenceModel/laminar/laminar.C b/src/turbulenceModels/incompressible/turbulenceModel/laminar/laminar.C
index 01d50d4b220271f3bfe47811eedc777a82b6ed53..b36ce1da1e57bb7307eb67ad7444c3f1115ea58c 100644
--- a/src/turbulenceModels/incompressible/turbulenceModel/laminar/laminar.C
+++ b/src/turbulenceModels/incompressible/turbulenceModel/laminar/laminar.C
@@ -50,10 +50,12 @@ laminar::laminar
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
+
 )
 :
-    turbulenceModel(U, phi, transport)
+    turbulenceModel(U, phi, transport, turbulenceModelName)
 {}
 
 
@@ -63,10 +65,14 @@ autoPtr<laminar> laminar::New
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 {
-    return autoPtr<laminar>(new laminar(U, phi, transport));
+    return autoPtr<laminar>
+    (
+        new laminar(U, phi, transport, turbulenceModelName)
+    );
 }
 
 
diff --git a/src/turbulenceModels/incompressible/turbulenceModel/laminar/laminar.H b/src/turbulenceModels/incompressible/turbulenceModel/laminar/laminar.H
index 6c59eb30e96ace2dd9b936b6984e5c704bd9df21..affe6165fc079dd55be3305ecbd86424a59ebea2 100644
--- a/src/turbulenceModels/incompressible/turbulenceModel/laminar/laminar.H
+++ b/src/turbulenceModels/incompressible/turbulenceModel/laminar/laminar.H
@@ -65,7 +65,9 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
+
         );
 
 
@@ -76,7 +78,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = turbulenceModel::typeName
         );
 
 
diff --git a/src/turbulenceModels/incompressible/turbulenceModel/turbulenceModel.C b/src/turbulenceModels/incompressible/turbulenceModel/turbulenceModel.C
index 1aeea66fd3108af18db59f810b84cc81b9bc14b1..39ee72bf2c44a8f9d82bd187741e0f303860a676 100644
--- a/src/turbulenceModels/incompressible/turbulenceModel/turbulenceModel.C
+++ b/src/turbulenceModels/incompressible/turbulenceModel/turbulenceModel.C
@@ -45,9 +45,21 @@ turbulenceModel::turbulenceModel
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 :
+    regIOobject
+    (
+        IOobject
+        (
+            turbulenceModelName,
+            U.time().constant(),
+            U.db(),
+            IOobject::NO_READ,
+            IOobject::NO_WRITE
+        )
+    ),
     runTime_(U.time()),
     mesh_(U.mesh()),
 
@@ -63,7 +75,8 @@ autoPtr<turbulenceModel> turbulenceModel::New
 (
     const volVectorField& U,
     const surfaceScalarField& phi,
-    transportModel& transport
+    transportModel& transport,
+    const word& turbulenceModelName
 )
 {
     // get model name, but do not register the dictionary
@@ -77,7 +90,7 @@ autoPtr<turbulenceModel> turbulenceModel::New
                 "turbulenceProperties",
                 U.time().constant(),
                 U.db(),
-                IOobject::MUST_READ,
+                IOobject::MUST_READ_IF_MODIFIED,
                 IOobject::NO_WRITE,
                 false
             )
@@ -94,7 +107,7 @@ autoPtr<turbulenceModel> turbulenceModel::New
         FatalErrorIn
         (
             "turbulenceModel::New(const volVectorField&, "
-            "const surfaceScalarField&, transportModel&)"
+            "const surfaceScalarField&, transportModel&, const word&)"
         )   << "Unknown turbulenceModel type "
             << modelType << nl << nl
             << "Valid turbulenceModel types:" << endl
@@ -102,7 +115,10 @@ autoPtr<turbulenceModel> turbulenceModel::New
             << exit(FatalError);
     }
 
-    return autoPtr<turbulenceModel>(cstrIter()(U, phi, transport));
+    return autoPtr<turbulenceModel>
+    (
+        cstrIter()(U, phi, transport, turbulenceModelName)
+    );
 }
 
 
diff --git a/src/turbulenceModels/incompressible/turbulenceModel/turbulenceModel.H b/src/turbulenceModels/incompressible/turbulenceModel/turbulenceModel.H
index c970a6501920524f5fd5322d9e295342a956674c..40f9321b803c5066a066ee5b451562157d9ca6c2 100644
--- a/src/turbulenceModels/incompressible/turbulenceModel/turbulenceModel.H
+++ b/src/turbulenceModels/incompressible/turbulenceModel/turbulenceModel.H
@@ -67,6 +67,8 @@ namespace incompressible
 \*---------------------------------------------------------------------------*/
 
 class turbulenceModel
+:
+    public regIOobject
 {
 
 protected:
@@ -109,9 +111,10 @@ public:
             (
                 const volVectorField& U,
                 const surfaceScalarField& phi,
-                transportModel& transport
+                transportModel& transport,
+                const word& turbulenceModelName
             ),
-            (U, phi, transport)
+            (U, phi, transport, turbulenceModelName)
         );
 
 
@@ -122,7 +125,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = typeName
         );
 
 
@@ -133,7 +137,8 @@ public:
         (
             const volVectorField& U,
             const surfaceScalarField& phi,
-            transportModel& transport
+            transportModel& transport,
+            const word& turbulenceModelName = typeName
         );
 
 
@@ -194,6 +199,12 @@ public:
 
         //- Read LESProperties or RASProperties dictionary
         virtual bool read() = 0;
+
+        //- Default dummy write function
+        virtual bool writeData(Ostream&) const
+        {
+            return true;
+        }
 };
 
 
diff --git a/tutorials/DNS/dnsFoam/boxTurb16/0.org/U b/tutorials/DNS/dnsFoam/boxTurb16/0.org/U
index 9b2701a3ae515953c50901eb7e6c878fc2d1dbe2..2bce99f0db0d8a8b637357739bc5aff47827f6cf 100644
--- a/tutorials/DNS/dnsFoam/boxTurb16/0.org/U
+++ b/tutorials/DNS/dnsFoam/boxTurb16/0.org/U
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/DNS/dnsFoam/boxTurb16/0.org/enstrophy b/tutorials/DNS/dnsFoam/boxTurb16/0.org/enstrophy
index 254013e6c9f63ad74a4d1e7595ee11d4fc6b6f8e..f0b1acde983cf063351cf85ee154a6cd811704f1 100644
--- a/tutorials/DNS/dnsFoam/boxTurb16/0.org/enstrophy
+++ b/tutorials/DNS/dnsFoam/boxTurb16/0.org/enstrophy
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/DNS/dnsFoam/boxTurb16/0.org/p b/tutorials/DNS/dnsFoam/boxTurb16/0.org/p
index 0738f6a86781b8089f5a029ad3195c72c2ca319a..a3f723593b32aea1892b484f6d6204249cb0cc51 100644
--- a/tutorials/DNS/dnsFoam/boxTurb16/0.org/p
+++ b/tutorials/DNS/dnsFoam/boxTurb16/0.org/p
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/DNS/dnsFoam/boxTurb16/0/U b/tutorials/DNS/dnsFoam/boxTurb16/0/U
index 9b2701a3ae515953c50901eb7e6c878fc2d1dbe2..2bce99f0db0d8a8b637357739bc5aff47827f6cf 100644
--- a/tutorials/DNS/dnsFoam/boxTurb16/0/U
+++ b/tutorials/DNS/dnsFoam/boxTurb16/0/U
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/DNS/dnsFoam/boxTurb16/0/enstrophy b/tutorials/DNS/dnsFoam/boxTurb16/0/enstrophy
index 254013e6c9f63ad74a4d1e7595ee11d4fc6b6f8e..f0b1acde983cf063351cf85ee154a6cd811704f1 100644
--- a/tutorials/DNS/dnsFoam/boxTurb16/0/enstrophy
+++ b/tutorials/DNS/dnsFoam/boxTurb16/0/enstrophy
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/DNS/dnsFoam/boxTurb16/0/p b/tutorials/DNS/dnsFoam/boxTurb16/0/p
index 0738f6a86781b8089f5a029ad3195c72c2ca319a..a3f723593b32aea1892b484f6d6204249cb0cc51 100644
--- a/tutorials/DNS/dnsFoam/boxTurb16/0/p
+++ b/tutorials/DNS/dnsFoam/boxTurb16/0/p
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/DNS/dnsFoam/boxTurb16/constant/polyMesh/blockMeshDict b/tutorials/DNS/dnsFoam/boxTurb16/constant/polyMesh/blockMeshDict
index 7758339eba3b086e537720b498c6b6ec3b0790c3..9973b0032f31d670d094decf11334075e4f7793d 100644
--- a/tutorials/DNS/dnsFoam/boxTurb16/constant/polyMesh/blockMeshDict
+++ b/tutorials/DNS/dnsFoam/boxTurb16/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/laplacianFoam/flange/0/T b/tutorials/basic/laplacianFoam/flange/0/T
index fda50237c2108a8092cec11740f615e6cd380956..eb6b0630dfbe3987f6b9f387037eb33d51d38a18 100644
--- a/tutorials/basic/laplacianFoam/flange/0/T
+++ b/tutorials/basic/laplacianFoam/flange/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/laplacianFoam/flange/constant/polyMesh/boundary.org b/tutorials/basic/laplacianFoam/flange/constant/polyMesh/boundary.org
index 77d8d3c4b1b2339b4a3cb784068f9b5883f22650..612c3415e0f942de55bceeea6f18f6703fcfd617 100644
--- a/tutorials/basic/laplacianFoam/flange/constant/polyMesh/boundary.org
+++ b/tutorials/basic/laplacianFoam/flange/constant/polyMesh/boundary.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/potentialFoam/cylinder/0.org/U b/tutorials/basic/potentialFoam/cylinder/0.org/U
index c2b2150d9b3dbc50c1b1c8897fcc1ab8b71c437d..c4ac2d9f945ba014bd2db6919a29d49afb3989d9 100644
--- a/tutorials/basic/potentialFoam/cylinder/0.org/U
+++ b/tutorials/basic/potentialFoam/cylinder/0.org/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/potentialFoam/cylinder/0.org/p b/tutorials/basic/potentialFoam/cylinder/0.org/p
index 3d61ee194e9715cfe4ea28f98c18c75dd3a3cf7a..906f2b8441e7ba525a6455aebfab74600d9ebd6e 100644
--- a/tutorials/basic/potentialFoam/cylinder/0.org/p
+++ b/tutorials/basic/potentialFoam/cylinder/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/potentialFoam/cylinder/0/U b/tutorials/basic/potentialFoam/cylinder/0/U
index c2b2150d9b3dbc50c1b1c8897fcc1ab8b71c437d..c4ac2d9f945ba014bd2db6919a29d49afb3989d9 100644
--- a/tutorials/basic/potentialFoam/cylinder/0/U
+++ b/tutorials/basic/potentialFoam/cylinder/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/potentialFoam/cylinder/0/p b/tutorials/basic/potentialFoam/cylinder/0/p
index 3d61ee194e9715cfe4ea28f98c18c75dd3a3cf7a..906f2b8441e7ba525a6455aebfab74600d9ebd6e 100644
--- a/tutorials/basic/potentialFoam/cylinder/0/p
+++ b/tutorials/basic/potentialFoam/cylinder/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/potentialFoam/cylinder/constant/polyMesh/blockMeshDict b/tutorials/basic/potentialFoam/cylinder/constant/polyMesh/blockMeshDict
index 98f2805eff09d6b6fe8bd9bccf4f50a5e9e3cdcd..0425c44ef2b6ac482f83af276f0ea082077aaf77 100644
--- a/tutorials/basic/potentialFoam/cylinder/constant/polyMesh/blockMeshDict
+++ b/tutorials/basic/potentialFoam/cylinder/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/potentialFoam/pitzDaily/0.org/U b/tutorials/basic/potentialFoam/pitzDaily/0.org/U
index ec085adb4f59eb5cc3f97b7e0d9c0d100e1ccfc4..6ce2a587ad0fc718b51bbc94842bf55bf5df75f7 100644
--- a/tutorials/basic/potentialFoam/pitzDaily/0.org/U
+++ b/tutorials/basic/potentialFoam/pitzDaily/0.org/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/potentialFoam/pitzDaily/0.org/p b/tutorials/basic/potentialFoam/pitzDaily/0.org/p
index db9c0a3a745a0730223b607369c30f015490eff3..f8b316739644c871fcd66559e980f091414e48b2 100644
--- a/tutorials/basic/potentialFoam/pitzDaily/0.org/p
+++ b/tutorials/basic/potentialFoam/pitzDaily/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/potentialFoam/pitzDaily/0/U b/tutorials/basic/potentialFoam/pitzDaily/0/U
index ec085adb4f59eb5cc3f97b7e0d9c0d100e1ccfc4..6ce2a587ad0fc718b51bbc94842bf55bf5df75f7 100644
--- a/tutorials/basic/potentialFoam/pitzDaily/0/U
+++ b/tutorials/basic/potentialFoam/pitzDaily/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/potentialFoam/pitzDaily/0/p b/tutorials/basic/potentialFoam/pitzDaily/0/p
index db9c0a3a745a0730223b607369c30f015490eff3..f8b316739644c871fcd66559e980f091414e48b2 100644
--- a/tutorials/basic/potentialFoam/pitzDaily/0/p
+++ b/tutorials/basic/potentialFoam/pitzDaily/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/potentialFoam/pitzDaily/constant/polyMesh/blockMeshDict b/tutorials/basic/potentialFoam/pitzDaily/constant/polyMesh/blockMeshDict
index 89852b13afd14dcd4d02930bbc4362e086316919..964452a9e6c8c207134f154bdf0a5fdb7164b919 100644
--- a/tutorials/basic/potentialFoam/pitzDaily/constant/polyMesh/blockMeshDict
+++ b/tutorials/basic/potentialFoam/pitzDaily/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/0/T b/tutorials/basic/scalarTransportFoam/pitzDaily/0/T
index ed4cbba8d5bd15dc87bf57fb012a63a6ef87a56c..0d47b7393d942a61eec550613e46b4b81d4decd2 100644
--- a/tutorials/basic/scalarTransportFoam/pitzDaily/0/T
+++ b/tutorials/basic/scalarTransportFoam/pitzDaily/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/0/U b/tutorials/basic/scalarTransportFoam/pitzDaily/0/U
index c8dd4f1a7890160f23709cbcb2cc824d32468574..f5ecaaa1aeabea87faaa0ef0a3a859493e3f716d 100644
--- a/tutorials/basic/scalarTransportFoam/pitzDaily/0/U
+++ b/tutorials/basic/scalarTransportFoam/pitzDaily/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/basic/scalarTransportFoam/pitzDaily/constant/polyMesh/blockMeshDict b/tutorials/basic/scalarTransportFoam/pitzDaily/constant/polyMesh/blockMeshDict
index 89852b13afd14dcd4d02930bbc4362e086316919..964452a9e6c8c207134f154bdf0a5fdb7164b919 100644
--- a/tutorials/basic/scalarTransportFoam/pitzDaily/constant/polyMesh/blockMeshDict
+++ b/tutorials/basic/scalarTransportFoam/pitzDaily/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily/0/Su b/tutorials/combustion/XiFoam/les/pitzDaily/0/Su
index 650d0b954062096331ddd1af8507233be540eca2..3fbfd04efad601d78d4b9e9a39de028e006ff496 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily/0/Su
+++ b/tutorials/combustion/XiFoam/les/pitzDaily/0/Su
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily/0/T b/tutorials/combustion/XiFoam/les/pitzDaily/0/T
index 0d7442b7b599438cdeb4107be2b4eebf1dcbbfb0..5f6bd6c4c3efafdffadb07fbec76eb3070ac632f 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily/0/T
+++ b/tutorials/combustion/XiFoam/les/pitzDaily/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily/0/Tu b/tutorials/combustion/XiFoam/les/pitzDaily/0/Tu
index 2ecafa1cdb2eeda599b81d83d54beebc8f85e061..29395f8940e486b4056b3ad7553776fa686db5e9 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily/0/Tu
+++ b/tutorials/combustion/XiFoam/les/pitzDaily/0/Tu
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily/0/U b/tutorials/combustion/XiFoam/les/pitzDaily/0/U
index c625528d1648cf11570956045bfb20a2db32387b..e51b3a346f46a2525f2e8d617d3fea333315ee70 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily/0/U
+++ b/tutorials/combustion/XiFoam/les/pitzDaily/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily/0/Xi b/tutorials/combustion/XiFoam/les/pitzDaily/0/Xi
index 3ab3f03da4b46a2b2bd5b2200ff5179bb375e5a6..5d71d1eeae47c87084a59bfde40acbdca34b893e 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily/0/Xi
+++ b/tutorials/combustion/XiFoam/les/pitzDaily/0/Xi
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily/0/alphaSgs b/tutorials/combustion/XiFoam/les/pitzDaily/0/alphaSgs
index 145d82f010edc275814c6e8dc9cc94b059de5ad9..acf9170256040e7a5214cf230dcf514e53c3ac87 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily/0/alphaSgs
+++ b/tutorials/combustion/XiFoam/les/pitzDaily/0/alphaSgs
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily/0/b b/tutorials/combustion/XiFoam/les/pitzDaily/0/b
index 231a96a26d35f0a3aa5e3cf44d279f9033036808..3a1dc34da5a6a48165d1ab7a2ee2820abf37674d 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily/0/b
+++ b/tutorials/combustion/XiFoam/les/pitzDaily/0/b
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily/0/k b/tutorials/combustion/XiFoam/les/pitzDaily/0/k
index 8c3df7e4bab021ba2455fdc280e23d4a6702c1d7..f0a968598d87fb7746fd8e950a5171505e29f8c3 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily/0/k
+++ b/tutorials/combustion/XiFoam/les/pitzDaily/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily/0/muSgs b/tutorials/combustion/XiFoam/les/pitzDaily/0/muSgs
index 05bf1b53293ad42e085447b264136dc549337082..1f439921e102ed56642cbdf9e39c1ecc7a2aafa2 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily/0/muSgs
+++ b/tutorials/combustion/XiFoam/les/pitzDaily/0/muSgs
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily/0/p b/tutorials/combustion/XiFoam/les/pitzDaily/0/p
index 4893a741d7d5ff1099704e2076be6b9cf3b4d320..cc2360484baacbb97d98735ab2537d5dc5047223 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily/0/p
+++ b/tutorials/combustion/XiFoam/les/pitzDaily/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily/constant/polyMesh/blockMeshDict b/tutorials/combustion/XiFoam/les/pitzDaily/constant/polyMesh/blockMeshDict
index 5935b5b9bf1c04837233f31fbf2f409b5de396fc..273b2a1d0e74b1564612b0aa474599c5ff724f78 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily/constant/polyMesh/blockMeshDict
+++ b/tutorials/combustion/XiFoam/les/pitzDaily/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Su b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Su
index d3cc26e7d8edcece3ed0f559929d3a42b65dd790..0cabf049d59b1dd2db13805867d0f0860b6ee101 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Su
+++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Su
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/T b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/T
index f8c2f8ec0c30c2a93e9ee7e325f4bb1a6a34fc50..5b58b8a0eecc912b21901dcf620894b8829ae37d 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/T
+++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/T
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Tu b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Tu
index c0fa420d2b62b98d05296879a8b5e8289480a86a..61f387f5dfc9d4519d2762f6dce520d49d367f53 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Tu
+++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Tu
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/U b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/U
index 6067884afc1f8ba65ad62799fad8ba288dc8503b..3fb7f1e42baaca6dd3f2f8da152bf99e7b0fe347 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/U
+++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/U
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Xi b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Xi
index eb94d243a8299f1a42311c97ef06561d3bc3b3e8..ec71d6c1fc5d01036161c0eb8ce432fdba7bca67 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Xi
+++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/Xi
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/alphaSgs b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/alphaSgs
index 3b3abcca8bf70d6ba77f8774cfa16af41350dee9..10e71fe17d6829d9af6f4ec1f78ae611ddc9cdd1 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/alphaSgs
+++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/alphaSgs
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/b b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/b
index 072346a532ce026b329c6d84788bee5d55bb5b17..6805fdd6b4638954f65e668b3881f77e052a6a35 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/b
+++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/b
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/k b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/k
index 862110ed4c789c6277106727b0bf7de2ba4a24d0..fa03d9be8dc19de1be0203793a3a66369707ca9c 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/k
+++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/k
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/muSgs b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/muSgs
index 3894d39183dbecfca54f3e40c7de54595996ab03..83e2c621d33304dc975dcebfd920cf5fd09344c5 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/muSgs
+++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/muSgs
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/p b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/p
index bfd7be5db2f7b4d190e99ed451e14ca016b3374d..a7fe5c2591375328f47c977c639973206d4c54df 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily3D/0/p
+++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/0/p
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/constant/polyMesh/blockMeshDict b/tutorials/combustion/XiFoam/les/pitzDaily3D/constant/polyMesh/blockMeshDict
index 2caf83dfc8a1f876e3913d3c00d9f7a887927cf8..6eac04dd4778c69b439c810ca332e36a45cc93e6 100644
--- a/tutorials/combustion/XiFoam/les/pitzDaily3D/constant/polyMesh/blockMeshDict
+++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Su b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Su
index d2e580c0f43f84a5553d2ece9e630c0ee2b91431..7e94b7be7badafcf81d0724987b5795138286a45 100644
--- a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Su
+++ b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Su
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/T b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/T
index 756840b371ab9d18e84e815ef4840dddd317ac3f..07563246953128d3e05df9e29fdcc20aadc583c8 100644
--- a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/T
+++ b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Tu b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Tu
index ec98da12f2dc84b699f7fe07af785e8fe887ceab..594b9d8f13613d55cf7f92c6f0980f559b3599c4 100644
--- a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Tu
+++ b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Tu
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/U b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/U
index 8451816bf8b9a272f50ba3b166e467bb9c0366af..399882c98aec234a8b5295fe22b6982ed710d33e 100644
--- a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/U
+++ b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Xi b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Xi
index e21fdfd192d5f5e3280622e16d43c016ff7ebf4a..6a6679b493414a11efb008c29ef30c1fec0525ce 100644
--- a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Xi
+++ b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/Xi
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/b b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/b
index 11f03d6cd01ff25e03d6427c3e5a3f9fd5ee7f7a..6d79d7ef46a85720441df410d9558d4a33ad77fc 100644
--- a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/b
+++ b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/b
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/ft b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/ft
index ac78cadd81979e90d4fa7b41272b204295541677..bb2261438e748d3569ae05bbadb3b69b421ff21d 100644
--- a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/ft
+++ b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/ft
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/fu b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/fu
index 7d5810b1767bdcc0e446bf023da83b2ec93d3652..f4de3286b3b055fca386383a60971bdd6b8d746e 100644
--- a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/fu
+++ b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/fu
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/p b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/p
index 0a690886a054c5c1383a803effd26b8e0b2d5df4..0f754753b5241206879d5f130851899b2145588f 100644
--- a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/p
+++ b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/constant/polyMesh/blockMeshDict b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/constant/polyMesh/blockMeshDict
index ac183157082b176abf7f2a97fe41e4dd578c67aa..24d80f61cb25a8ec7a236bda398049b1424340d9 100644
--- a/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/constant/polyMesh/blockMeshDict
+++ b/tutorials/combustion/XiFoam/ras/moriyoshiHomogeneous/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/dieselFoam/aachenBomb/0/N2 b/tutorials/combustion/dieselFoam/aachenBomb/0/N2
index 3c377c50351f1632476d6f7cc28cc6b811d63ca5..f153e95df0d6ca6044f3b38d8acf58e3f6018a0f 100644
--- a/tutorials/combustion/dieselFoam/aachenBomb/0/N2
+++ b/tutorials/combustion/dieselFoam/aachenBomb/0/N2
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/dieselFoam/aachenBomb/0/O2 b/tutorials/combustion/dieselFoam/aachenBomb/0/O2
index d966d53a96c92a17d331ac3f2fe6acbb75d9a476..77a26da9239a05c282ffe9c8d0c225009b483d79 100644
--- a/tutorials/combustion/dieselFoam/aachenBomb/0/O2
+++ b/tutorials/combustion/dieselFoam/aachenBomb/0/O2
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/dieselFoam/aachenBomb/0/T b/tutorials/combustion/dieselFoam/aachenBomb/0/T
index accaf72fb0f0253e8738adfa77242f0298cf48e8..5ce3d1719fc118e69798f1dc36b7b9e0c9e43668 100644
--- a/tutorials/combustion/dieselFoam/aachenBomb/0/T
+++ b/tutorials/combustion/dieselFoam/aachenBomb/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/dieselFoam/aachenBomb/0/U b/tutorials/combustion/dieselFoam/aachenBomb/0/U
index 06ed818a6b5f26239a1ed7831ed8dbea2f99da0c..8b1633e903444f7fc50261e74b2c1362c12d8aac 100644
--- a/tutorials/combustion/dieselFoam/aachenBomb/0/U
+++ b/tutorials/combustion/dieselFoam/aachenBomb/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/dieselFoam/aachenBomb/0/Ydefault b/tutorials/combustion/dieselFoam/aachenBomb/0/Ydefault
index ed460af0e6b5af75981b34f7be037ce4c3cadb43..982cb78702aaa3855423f6221d2cab4928e91ab9 100644
--- a/tutorials/combustion/dieselFoam/aachenBomb/0/Ydefault
+++ b/tutorials/combustion/dieselFoam/aachenBomb/0/Ydefault
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/dieselFoam/aachenBomb/0/ft b/tutorials/combustion/dieselFoam/aachenBomb/0/ft
index f9dbf9d442a005c5f3c35637be5aa16b5f0417a8..cb43f04d74a5fef37dd74ae8d0b515db9f3ad705 100644
--- a/tutorials/combustion/dieselFoam/aachenBomb/0/ft
+++ b/tutorials/combustion/dieselFoam/aachenBomb/0/ft
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/dieselFoam/aachenBomb/0/fu b/tutorials/combustion/dieselFoam/aachenBomb/0/fu
index 5a3a35f68da719245f45e03a335fb319c352d458..58a0d91732ba4e065a9ccf6609221b3396f2f014 100644
--- a/tutorials/combustion/dieselFoam/aachenBomb/0/fu
+++ b/tutorials/combustion/dieselFoam/aachenBomb/0/fu
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/dieselFoam/aachenBomb/0/p b/tutorials/combustion/dieselFoam/aachenBomb/0/p
index 7cc844fdccf0e8a4cd0daa6e4aba92b36a74218c..e73e0d9748f0ddd9ec5f10ba21492537f7a37f77 100644
--- a/tutorials/combustion/dieselFoam/aachenBomb/0/p
+++ b/tutorials/combustion/dieselFoam/aachenBomb/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/dieselFoam/aachenBomb/constant/injectorProperties b/tutorials/combustion/dieselFoam/aachenBomb/constant/injectorProperties
index 1dd31857dba8cfbf9ab1287217cd5480962c4511..223d2839e83e0d3b59c1c8610b9bfdad987a0390 100644
--- a/tutorials/combustion/dieselFoam/aachenBomb/constant/injectorProperties
+++ b/tutorials/combustion/dieselFoam/aachenBomb/constant/injectorProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/dieselFoam/aachenBomb/constant/polyMesh/blockMeshDict b/tutorials/combustion/dieselFoam/aachenBomb/constant/polyMesh/blockMeshDict
index 070a7befc06c66196cb74e32c54cdcace242d01c..f7be24a59f73dba36e7498ae70efdb4cc680a3a0 100644
--- a/tutorials/combustion/dieselFoam/aachenBomb/constant/polyMesh/blockMeshDict
+++ b/tutorials/combustion/dieselFoam/aachenBomb/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/engineFoam/kivaTest/constant/polyMesh/boundary.org b/tutorials/combustion/engineFoam/kivaTest/constant/polyMesh/boundary.org
index dfe1035aab16cf0055d1d6951062743a8152367b..fe21e4cf458f4ce3027f63104e9f1bcf35b163f0 100644
--- a/tutorials/combustion/engineFoam/kivaTest/constant/polyMesh/boundary.org
+++ b/tutorials/combustion/engineFoam/kivaTest/constant/polyMesh/boundary.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/engineFoam/kivaTest/system/fvSolution b/tutorials/combustion/engineFoam/kivaTest/system/fvSolution
index 9c14f182e1c36ed45a5982dda9b8ecabf66da9f1..79eef886e406cda3de17556fb2cd9a625670ba2f 100644
--- a/tutorials/combustion/engineFoam/kivaTest/system/fvSolution
+++ b/tutorials/combustion/engineFoam/kivaTest/system/fvSolution
@@ -46,7 +46,6 @@ PISO
     nCorrectors     2;
     nNonOrthogonalCorrectors 1;
     momentumPredictor yes;
-    fluxGradp       no;
 }
 
 
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/G b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/G
index fd0982491c620462f6851cb538d2be2efe95d6c9..1cb000fd6b651164fe67afd413954bad4ccf8d3c 100644
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/G
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/G
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/IDefault b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/IDefault
index 61b02dea13d844c93a773502a5c9288b99978b97..9b5a4aaba07b50fa4ded7fdbdbf7fa64ee1c168a 100644
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/IDefault
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/IDefault
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/T b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/T
index 1c7d1ebb4d55cb4cfb065e9a471cc237c216ecb0..326c221fcb3c6c78c0b325e2f78e92880aeea86f 100755
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/T
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/U b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/U
index 48e4aab470ddcae4baead5ef0e43b75acc0903d9..cd208831a417067fe0bbb9e0352f1c0e34fde431 100755
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/U
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/alphaSgs b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/alphaSgs
index c840a07a08e78775f21a5ff3ea0cc2cc6b821f97..d280f5f5be175e9d7012f9fb9bc9740290546458 100755
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/alphaSgs
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/alphaSgs
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/b b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/b
index 0fbbd652fef5c361395a5502ae033ccb19005d7d..4dd9299c18f84b06c524651daa021f847bbdf238 100755
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/b
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/b
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/ft b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/ft
index 44b0a149551af8622f9968807576310b0de84173..85daec9f3036793385511f10ca156466e13028c8 100755
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/ft
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/ft
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/fu b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/fu
index e3b3011de317a317c710f4fc6b42d666046f8c91..2f6a283d17eef1cc04a33ab7802af0ff18703799 100755
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/fu
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/fu
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/k b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/k
index 80db42f64f8d054dd7a85b2de03ce68589e01a0f..3c869cb21ce88f96dcfc812f64d9b42f74afd130 100755
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/k
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/muSgs b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/muSgs
index f8b645f718b5ca5fe7094bb6e9b642641f632528..e82c20fd75a68abc8cd8bf73a7dd08400a5df727 100755
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/muSgs
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/muSgs
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p
index d25a0c7e11d1bf93f25afe42aa3f1bcdeaab1f6b..19305abecd564ccbbe3e4041abba47ed6112e41e 100755
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/LESProperties b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/LESProperties
index 17f30efd1fb7fd5e67a17052137394e3de003448..f516bbc03534963171ff0604299e8e097472b4e1 100644
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/LESProperties
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/LESProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.openfoam.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/SpeciesTable b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/SpeciesTable
index 98d27237ea171a717c84e0497a66cbad00a75484..43b9cb32668b63a38acd84dc20537368007b9bab 100644
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/SpeciesTable
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/SpeciesTable
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                 |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/polyMesh/blockMeshDict b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/polyMesh/blockMeshDict
index 0f18c0d733830bc2768ff312ea9078a0c821ce14..84fecf9489cced19c6955b5278e2763fa9eb9cb0 100644
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/polyMesh/blockMeshDict
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/thermophysicalProperties b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/thermophysicalProperties
index 2e4a2e74af5eccb9b5c187a22a7ac761db6e1355..7ee7270c9c49358dfb4b454c652af9689ff89375 100644
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/thermophysicalProperties
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/thermophysicalProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.openfoam.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/turbulenceProperties b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/turbulenceProperties
index d44ea0a37125e0c4a34ba83ae4a6c556f39236d4..a0ced45af58128ad43f899fe9ce74570a8ccab90 100644
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/turbulenceProperties
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/turbulenceProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.openfoam.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/controlDict b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/controlDict
index b2ef1f85d98e7df6dace771df1e228f91b611ee5..31c2ca798c866cb78ada5a2a2efc5ed9f86127f7 100644
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/controlDict
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/controlDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.openfoam.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict
index 1d9cb818fcee777680abc0405e0b685344f13dca..600018cf28bc9e00090d4bd6f10785f908c81c10 100644
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSchemes b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSchemes
index 8b24cb3469fc56cae3a762677be34b696decc0b5..18b578964e9399089513bceddcf48da3cc963a6d 100644
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSchemes
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.openfoam.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution
index ac4b5ee3ed9fb59fec01e8353c90274f565a9e29..b7272e5ab31442539a51c121a807b7dd82a9b982 100644
--- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution
+++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.openfoam.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/CH4 b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/CH4
index dcdd095f09ce778b4f9b289317d1af77e70849bb..1215229094d38dc5cd3e3ca42e7895a3115ab9f6 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/CH4
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/CH4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/N2 b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/N2
index 3a0de95a3cef9fa762991deb700b5d36c2e2e921..8566c3dc243db949c793a897e8e4e9b7ced0772b 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/N2
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/N2
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/O2 b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/O2
index 3a038966c2d56797f6a8e7f9d15a85cd5e1294e4..ee78235a174d03ed782ab826d8be042d03b472cd 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/O2
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/O2
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/T b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/T
index 254322f38e0defb9ce1268bf7b66ddc5a57607f1..770c1f6fff15577da9f79933dd264f22d627540e 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/T
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/U b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/U
index 374e9131d30b557d560def625079a7f768a49e35..7352601cb7d5183c8fe79509f104dcd891f25490 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/U
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/Ydefault b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/Ydefault
index da2957b4c847cd35605ba82e6bde984b5ec709f2..11aff05e315216b702e7396b31132a12a5b84029 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/Ydefault
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/Ydefault
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/alphat b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/alphat
index cf60ba7894adaf942a63ada5a18a086a510ce222..55e1248927f6bb96950efb1b8f0b9e2767da7aab 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/alphat
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/alphat
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/epsilon b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/epsilon
index 52209c27a3d1f591c39186ddab495677b43cad85..0dcc148e10655b1f626f78723a3f5a210221ff37 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/epsilon
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/epsilon
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/k b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/k
index 6b2458ec7657ebe4ab7744bad8fc4bb2dbf68646..ee1ce9c6d016dd2ca1431a98ed41e8a80ab51022 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/k
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/mut b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/mut
index 3fd75130c23483a38dd276b9c826a313c74b4d6f..a09e783af6f0b92a4daca2d91af43ed275b8e90b 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/mut
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/mut
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/p b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/p
index 9de9e6bced1b7d0a14b56f6345d3452602362e9c..78f63564fa8566078778936af378fc7c01dbd3ff 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/p
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/constant/polyMesh/blockMeshDict b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/constant/polyMesh/blockMeshDict
index 87a0f24bdac4d214ca3ab2dd913940539abcb32a..9911942144f982994f4645ee659a458c45f39cd0 100644
--- a/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/constant/polyMesh/blockMeshDict
+++ b/tutorials/combustion/reactingFoam/ras/counterFlowFlame2D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/T b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/T
index 94a83152f759c655ef7d7d7d793a07df462f3b1e..78d45ada8591cacce7034462ea0b92ffa938ec2f 100644
--- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/T
+++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/U b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/U
index 7ae764cdc8fe27f3dcae16e998a0592085c7b461..18f61b36137026efc05ecf55745de1722a63f213 100644
--- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/U
+++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/p b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/p
index a16582984ced87f39b4ff9f54e3963a06ffd0e0a..d7db059aeeef3f515da5b5e4b5d4bf42b1eb139a 100644
--- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/p
+++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/T b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/T
index 13f3623dbad5605a70c17e48e4a64cbb5a055e5c..8d83f66b7afe71734b400821092990b611783992 100644
--- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/T
+++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/U b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/U
index 0d3da1ba78936a126def044a053456659527bd20..fa84a2cdc9a32c9a5154d47c88b9ef284dfc39f1 100644
--- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/U
+++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/p b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/p
index 92841d280b7b7407c04821c0e53fc9a9265e54ff..236ba29395dcd89ee6d6f1926f46a8465423d0bc 100644
--- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/p
+++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/polyMesh/blockMeshDict
index 86b0c61b1c2957dd0baac112098b80b447ff81c2..572455f05294295e160fa12c4ededfcd42aaf2c0 100644
--- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/T b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/T
index 5194ec98dff9afbea94922b95e89f2844c7fcd69..dbaa5ab1cd13426db3b67867a7b2a424242facb2 100644
--- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/T
+++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/U b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/U
index dd6f7a1733c3a61f5563b627059abbdb44fa6b8e..0426d873242d006f6d1faf5b3bff0a08afddbd7d 100644
--- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/U
+++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/p b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/p
index 3e679952bd5950ded3a9b456522e2aa8d3d50216..fb709cba97151e4c33fec6b2947aba2eff4661e6 100644
--- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/p
+++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/pointsHeader b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/pointsHeader
index 083e7714f3ae0e46b8fd16c09bad2e2c40b22d82..ae769b731453a0ad517a9c381372d6809f6c4b6f 100644
--- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/pointsHeader
+++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/pointsHeader
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/polyMesh/blockMeshDict
index f2082350de589d3cd8c28decda24d1aab9f67ff6..9ca19696d5efa6561ece675ee1b22bb450c5d540 100644
--- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/0/Ma b/tutorials/compressible/rhoCentralFoam/forwardStep/0/Ma
index 81a1384e4b0498b30c2ac81decb44fb581963519..6b18131bdbdc0e4b4015a84ab8d379af0a701b72 100644
--- a/tutorials/compressible/rhoCentralFoam/forwardStep/0/Ma
+++ b/tutorials/compressible/rhoCentralFoam/forwardStep/0/Ma
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/0/T b/tutorials/compressible/rhoCentralFoam/forwardStep/0/T
index 007785e3bcb67a688db3b96173a56738eb8cadac..b1300d4bbda0f3303414ac64acecbb7bca3af6d5 100644
--- a/tutorials/compressible/rhoCentralFoam/forwardStep/0/T
+++ b/tutorials/compressible/rhoCentralFoam/forwardStep/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/0/U b/tutorials/compressible/rhoCentralFoam/forwardStep/0/U
index 932d7ae8e1fc3cfa414985e6fe4caedb0d4de153..25e016803cf03c05a5d26e3f4fed5f2305c37a42 100644
--- a/tutorials/compressible/rhoCentralFoam/forwardStep/0/U
+++ b/tutorials/compressible/rhoCentralFoam/forwardStep/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/0/p b/tutorials/compressible/rhoCentralFoam/forwardStep/0/p
index 583933f34ae076e6646f727bc0cd7b062c710ae6..0b64e4439f035e45ea4ce66aec41e75003a79031 100644
--- a/tutorials/compressible/rhoCentralFoam/forwardStep/0/p
+++ b/tutorials/compressible/rhoCentralFoam/forwardStep/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/forwardStep/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoCentralFoam/forwardStep/constant/polyMesh/blockMeshDict
index b85cc7385b0c637e1fb66571a46e851e789e4937..ff13de03c7d10a9e6761ed451e9830578c3ff2a5 100644
--- a/tutorials/compressible/rhoCentralFoam/forwardStep/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoCentralFoam/forwardStep/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/T b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/T
index 98ec2dbd2699b9bf6a15ef632a44da1a66e7edae..675cb6d2ee55d5b797e7e4d5e1bc1b741b3c516a 100644
--- a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/T
+++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/U b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/U
index 99db71dfd9575c01bd3a984b858f7017994290b5..8d3d63fb73c1f1aa3c7020618081135a5bf025da 100644
--- a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/U
+++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/p b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/p
index 9c672841a65594d4cd424a606119fb7f6b68dd36..2378dcf603055c99d240512c95f510fd67e80f3e 100644
--- a/tutorials/compressible/rhoCentralFoam/obliqueShock/0/p
+++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/polyMesh/blockMeshDict
index cbcfc6c55a54fe6ad3c24ff61eba3d75939978ef..593073bcc652cabcccda8a26ef76f06e5d7836bb 100644
--- a/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoCentralFoam/obliqueShock/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/0.org/T b/tutorials/compressible/rhoCentralFoam/shockTube/0.org/T
index 26cd813bf2c51348e82d72e849c0d5f08c9f757e..04e9eb34ed48efe75944420c5c58ac6f12a6cd8e 100644
--- a/tutorials/compressible/rhoCentralFoam/shockTube/0.org/T
+++ b/tutorials/compressible/rhoCentralFoam/shockTube/0.org/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/0.org/U b/tutorials/compressible/rhoCentralFoam/shockTube/0.org/U
index 501712894305dd82b2396ae139fec221d35a1466..989a9aa6c4016abce119cb0bd297496e5d46ec65 100644
--- a/tutorials/compressible/rhoCentralFoam/shockTube/0.org/U
+++ b/tutorials/compressible/rhoCentralFoam/shockTube/0.org/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/0.org/p b/tutorials/compressible/rhoCentralFoam/shockTube/0.org/p
index 7a9a0ce1aeb6f0acae1e2e87a5a6b14d861d062d..2ac9b83800383db32455ef32f7f03183cbef534d 100644
--- a/tutorials/compressible/rhoCentralFoam/shockTube/0.org/p
+++ b/tutorials/compressible/rhoCentralFoam/shockTube/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/0/T b/tutorials/compressible/rhoCentralFoam/shockTube/0/T
index 26cd813bf2c51348e82d72e849c0d5f08c9f757e..04e9eb34ed48efe75944420c5c58ac6f12a6cd8e 100644
--- a/tutorials/compressible/rhoCentralFoam/shockTube/0/T
+++ b/tutorials/compressible/rhoCentralFoam/shockTube/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/0/U b/tutorials/compressible/rhoCentralFoam/shockTube/0/U
index 501712894305dd82b2396ae139fec221d35a1466..989a9aa6c4016abce119cb0bd297496e5d46ec65 100644
--- a/tutorials/compressible/rhoCentralFoam/shockTube/0/U
+++ b/tutorials/compressible/rhoCentralFoam/shockTube/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/0/p b/tutorials/compressible/rhoCentralFoam/shockTube/0/p
index 7a9a0ce1aeb6f0acae1e2e87a5a6b14d861d062d..2ac9b83800383db32455ef32f7f03183cbef534d 100644
--- a/tutorials/compressible/rhoCentralFoam/shockTube/0/p
+++ b/tutorials/compressible/rhoCentralFoam/shockTube/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/shockTube/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoCentralFoam/shockTube/constant/polyMesh/blockMeshDict
index 5de374c371781f8f88812929995a6a8cde2ed330..84f6d25381c765ce614138a0cf3317aa19441795 100644
--- a/tutorials/compressible/rhoCentralFoam/shockTube/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoCentralFoam/shockTube/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/T b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/T
index 74c9fa43c01ddaba7616d26d9b51ae6044687fcf..ab439e5da6c1997cde048225b6306ce76b761351 100644
--- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/T
+++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/U b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/U
index c903efcbb174380bb8489a9f970e3633dbb083ae..a6d47e78c41f194494cc0e69583e137ad82f329f 100644
--- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/U
+++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/p b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/p
index 583933f34ae076e6646f727bc0cd7b062c710ae6..0b64e4439f035e45ea4ce66aec41e75003a79031 100644
--- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/p
+++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/polyMesh/blockMeshDict
index c9d3dd16eb214dc087dd41d6a55c0e9bf7cd8427..2b1abb18980be68e55a1422107ccc8e01a2cce02 100644
--- a/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoCentralFoam/wedge15Ma5/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/B b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/B
index 94cbead26d3a54c0a6fbbe76dadeb2e097b7a8b5..7247fcdbef32943109bfb5f8262b549ac649b6a3 100644
--- a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/B
+++ b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/B
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/T b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/T
index 10dca5a78cd2e3690a64ae21131954a1a2d73c62..e507e0334270261c5ef13eb70170fde574cd72ba 100644
--- a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/T
+++ b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/U b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/U
index 1cbf4b00ef4790f101d16a28af1f9f965ff9f39e..a7a2e67efa61374395e80331cd8e81b5e205ac30 100644
--- a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/U
+++ b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/k b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/k
index 7f07f9dd1c3fc678f88ab2333a677e8cfeb2bc82..8b7e616bd1c0dc641081a4538d8aec8d38ca76a9 100644
--- a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/k
+++ b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/muSgs b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/muSgs
index 3d660931766f22dc73eeb090e4f3c9900e707c16..c329a43522ef93c2c14f65c451ecc278dff1e473 100644
--- a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/muSgs
+++ b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/muSgs
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/muTilda b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/muTilda
index aa318f8418ea79eb1387646e36bad13813976961..34fc080cf7a05fafe9d5b8e29965f3d8a6b1dd30 100644
--- a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/muTilda
+++ b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/muTilda
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/p b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/p
index 4893a741d7d5ff1099704e2076be6b9cf3b4d320..cc2360484baacbb97d98735ab2537d5dc5047223 100644
--- a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/p
+++ b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/constant/polyMesh/blockMeshDict
index 89852b13afd14dcd4d02930bbc4362e086316919..964452a9e6c8c207134f154bdf0a5fdb7164b919 100644
--- a/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoPimpleFoam/les/pitzDaily/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/T b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/T
index e1df94398773b013813d4f9f37769c8587889a1c..4600a6cc79ac54e263926ceb1506bd57ed158b2d 100644
--- a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/T
+++ b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/U b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/U
index fa9053408e12e351500e5e5a3ff182636f830329..300f2217166569cea29e0908e54e338194cb2fc9 100644
--- a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/U
+++ b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/p b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/p
index 9dc24513e7996ec136fea6c7a1c20423a85cf988..0a670cc92eb7cf8c06c891c9c311700a7666c0ca 100644
--- a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/p
+++ b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/polyMesh/blockMeshDict
index 0438819b2509cf399923c3a2ce92ea0999735aea..5863a04e716efd2404a54afd54635946689ab1c9 100644
--- a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/polyMesh/blockMeshDict.m4 b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/polyMesh/blockMeshDict.m4
index 6d6d0669392b2396160799c4747d2e9f6c2c54d2..1eabb3e673c02b1156cf21d58af2035e8254b3f8 100644
--- a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/polyMesh/blockMeshDict.m4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/porousZones b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/porousZones
index 634799837eaf7009528df07d027deafc7c6cc1f4..e081bbf9e388af3d134a2214050aa8b20e8fb2ee 100644
--- a/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/porousZones
+++ b/tutorials/compressible/rhoPimpleFoam/ras/angledDuct/constant/porousZones
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/T b/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/T
index e93d5c74482b1fe80eb94bc65943a3fc77edf13b..2fdcf77f745a7dd87439afc9add8894fb03c33ce 100644
--- a/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/T
+++ b/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/U b/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/U
index 4c2a23c3d1ef5e620fbf4a7bcb6b55d5f5d1c7d2..745a9e12ffb8d83dcec4b4b03614ce7e6696238c 100644
--- a/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/U
+++ b/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/p b/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/p
index f3d5040762012331506751f81d14ae28beb37ac1..4b749d4c7480bb2f87e40e65fc258ad642d70709 100644
--- a/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/p
+++ b/tutorials/compressible/rhoPimpleFoam/ras/cavity/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/T b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/T
index c8760070627a095b7b08401dea7b53162fc5efd5..11aacec25878e3cd9fa7656b6e832e32a369dcef 100644
--- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/T
+++ b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/U b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/U
index ee6588db42363bdd3e5bb01d5ffbe353e241ba0a..7576a5dc544ea31314c3763429ed75bff2628bcd 100644
--- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/U
+++ b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/p b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/p
index de53bf93f6d62bd02269a9004e782ccd70c0ed3c..89b97cd69d5b036e26a6f75ba0760c512eb923c0 100644
--- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/p
+++ b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/MRFZones b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/MRFZones
index bff11fb77f1dbc6c68f903566b10f52ae6b6648d..00f3baa8b4d8936c58ce9df0a622244d813dc3d4 100644
--- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/MRFZones
+++ b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/MRFZones
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict
index ef73b0c7b75531001c82f6b5b19cefa98298e5d4..d00ff96582b01cb35c8819f31a1d1f9be9b39b76 100644
--- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4 b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
index dccc042d22493ca6d40e25d7cb8ba8c76f8857aa..9f72950a33660e87d04dd8a9a63651fccef66a2d 100644
--- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/porousZones b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/porousZones
index e7986b4d348fbc45c5ca68d87a78a78043636f9f..85f3ddcc32c192c3d4b939b07556e8e1fef1ddc1 100644
--- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/porousZones
+++ b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/constant/porousZones
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/T b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/T
index e1df94398773b013813d4f9f37769c8587889a1c..4600a6cc79ac54e263926ceb1506bd57ed158b2d 100644
--- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/T
+++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/U b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/U
index 88f509425865e94093e76cca468b5839e437ab77..0b3a166e5b3849bd3c69dc41444b2b9c3d08af3a 100644
--- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/U
+++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/p b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/p
index 9dc24513e7996ec136fea6c7a1c20423a85cf988..0a670cc92eb7cf8c06c891c9c311700a7666c0ca 100644
--- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/p
+++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict
index 0438819b2509cf399923c3a2ce92ea0999735aea..5863a04e716efd2404a54afd54635946689ab1c9 100644
--- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4 b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4
index 6d6d0669392b2396160799c4747d2e9f6c2c54d2..1eabb3e673c02b1156cf21d58af2035e8254b3f8 100644
--- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/porousZones b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/porousZones
index 43602a72a6b0fed8c3528eb0791f130bcab38fcc..5494cc7427145953924df2a0d4cd0b7f13e0bd94 100644
--- a/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/porousZones
+++ b/tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/constant/porousZones
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSimplecFoam/squareBend/0/T b/tutorials/compressible/rhoSimplecFoam/squareBend/0/T
index c8a138aa58790f15280607c4f5efcbb6af718458..2e8687cf0108660bfaf1e25aec719d0a8d03c17c 100644
--- a/tutorials/compressible/rhoSimplecFoam/squareBend/0/T
+++ b/tutorials/compressible/rhoSimplecFoam/squareBend/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSimplecFoam/squareBend/0/U b/tutorials/compressible/rhoSimplecFoam/squareBend/0/U
index 971e760d3de41121061402f49b9b5f48606e05df..8b6eee4ba58d68ae372cee28b1d37e58944e5b47 100644
--- a/tutorials/compressible/rhoSimplecFoam/squareBend/0/U
+++ b/tutorials/compressible/rhoSimplecFoam/squareBend/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSimplecFoam/squareBend/0/p b/tutorials/compressible/rhoSimplecFoam/squareBend/0/p
index fa45b63e2ce0c795081c3adcd857d0ec8ff1ba3b..cb8900c8271ff1d12e84af7141f64fff96e8ebf5 100644
--- a/tutorials/compressible/rhoSimplecFoam/squareBend/0/p
+++ b/tutorials/compressible/rhoSimplecFoam/squareBend/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSimplecFoam/squareBend/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoSimplecFoam/squareBend/constant/polyMesh/blockMeshDict
index f8b06e3446c6677dfb854db4183fb39cb55b4a9d..723e1a8948b1cd56760582a2aae9abf21eb51809 100644
--- a/tutorials/compressible/rhoSimplecFoam/squareBend/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoSimplecFoam/squareBend/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSonicFoam/forwardStep/0/T b/tutorials/compressible/rhoSonicFoam/forwardStep/0/T
index 74c9fa43c01ddaba7616d26d9b51ae6044687fcf..ab439e5da6c1997cde048225b6306ce76b761351 100644
--- a/tutorials/compressible/rhoSonicFoam/forwardStep/0/T
+++ b/tutorials/compressible/rhoSonicFoam/forwardStep/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSonicFoam/forwardStep/0/U b/tutorials/compressible/rhoSonicFoam/forwardStep/0/U
index 488db5a6749ca13acb1a0c0e45649c6ece6d7958..ea567fe8794d4536291de8b1b2bbabfc6bc9747e 100644
--- a/tutorials/compressible/rhoSonicFoam/forwardStep/0/U
+++ b/tutorials/compressible/rhoSonicFoam/forwardStep/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSonicFoam/forwardStep/0/p b/tutorials/compressible/rhoSonicFoam/forwardStep/0/p
index 583933f34ae076e6646f727bc0cd7b062c710ae6..0b64e4439f035e45ea4ce66aec41e75003a79031 100644
--- a/tutorials/compressible/rhoSonicFoam/forwardStep/0/p
+++ b/tutorials/compressible/rhoSonicFoam/forwardStep/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSonicFoam/forwardStep/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoSonicFoam/forwardStep/constant/polyMesh/blockMeshDict
index 43f728fbec3385ee835012de7c14ba04e7f84ce7..d3a3349ed66b500b655a8b2b95fdcbb976812e86 100644
--- a/tutorials/compressible/rhoSonicFoam/forwardStep/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoSonicFoam/forwardStep/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSonicFoam/shockTube/0.org/T b/tutorials/compressible/rhoSonicFoam/shockTube/0.org/T
index 26cd813bf2c51348e82d72e849c0d5f08c9f757e..04e9eb34ed48efe75944420c5c58ac6f12a6cd8e 100644
--- a/tutorials/compressible/rhoSonicFoam/shockTube/0.org/T
+++ b/tutorials/compressible/rhoSonicFoam/shockTube/0.org/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSonicFoam/shockTube/0.org/U b/tutorials/compressible/rhoSonicFoam/shockTube/0.org/U
index 501712894305dd82b2396ae139fec221d35a1466..989a9aa6c4016abce119cb0bd297496e5d46ec65 100644
--- a/tutorials/compressible/rhoSonicFoam/shockTube/0.org/U
+++ b/tutorials/compressible/rhoSonicFoam/shockTube/0.org/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSonicFoam/shockTube/0.org/magU b/tutorials/compressible/rhoSonicFoam/shockTube/0.org/magU
index 0fd4b44e6f05f324058b5dc3db3bf4dfda9ca281..4a82eb7719cec924e71db5d1dbfb80cb5c37858a 100644
--- a/tutorials/compressible/rhoSonicFoam/shockTube/0.org/magU
+++ b/tutorials/compressible/rhoSonicFoam/shockTube/0.org/magU
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSonicFoam/shockTube/0.org/p b/tutorials/compressible/rhoSonicFoam/shockTube/0.org/p
index 7a9a0ce1aeb6f0acae1e2e87a5a6b14d861d062d..2ac9b83800383db32455ef32f7f03183cbef534d 100644
--- a/tutorials/compressible/rhoSonicFoam/shockTube/0.org/p
+++ b/tutorials/compressible/rhoSonicFoam/shockTube/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSonicFoam/shockTube/0/magU b/tutorials/compressible/rhoSonicFoam/shockTube/0/magU
index 0fd4b44e6f05f324058b5dc3db3bf4dfda9ca281..4a82eb7719cec924e71db5d1dbfb80cb5c37858a 100644
--- a/tutorials/compressible/rhoSonicFoam/shockTube/0/magU
+++ b/tutorials/compressible/rhoSonicFoam/shockTube/0/magU
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhoSonicFoam/shockTube/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhoSonicFoam/shockTube/constant/polyMesh/blockMeshDict
index c9bce43fbbb7a81570510d7ef7d5611927e0390c..2cca973a7b5d0da84dcf43682a61c029c7cde0cd 100644
--- a/tutorials/compressible/rhoSonicFoam/shockTube/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhoSonicFoam/shockTube/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhopSonicFoam/shockTube/0.org/T b/tutorials/compressible/rhopSonicFoam/shockTube/0.org/T
index 26cd813bf2c51348e82d72e849c0d5f08c9f757e..04e9eb34ed48efe75944420c5c58ac6f12a6cd8e 100644
--- a/tutorials/compressible/rhopSonicFoam/shockTube/0.org/T
+++ b/tutorials/compressible/rhopSonicFoam/shockTube/0.org/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhopSonicFoam/shockTube/0.org/U b/tutorials/compressible/rhopSonicFoam/shockTube/0.org/U
index 501712894305dd82b2396ae139fec221d35a1466..989a9aa6c4016abce119cb0bd297496e5d46ec65 100644
--- a/tutorials/compressible/rhopSonicFoam/shockTube/0.org/U
+++ b/tutorials/compressible/rhopSonicFoam/shockTube/0.org/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhopSonicFoam/shockTube/0.org/p b/tutorials/compressible/rhopSonicFoam/shockTube/0.org/p
index 7a9a0ce1aeb6f0acae1e2e87a5a6b14d861d062d..2ac9b83800383db32455ef32f7f03183cbef534d 100644
--- a/tutorials/compressible/rhopSonicFoam/shockTube/0.org/p
+++ b/tutorials/compressible/rhopSonicFoam/shockTube/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhopSonicFoam/shockTube/0/T b/tutorials/compressible/rhopSonicFoam/shockTube/0/T
index 26cd813bf2c51348e82d72e849c0d5f08c9f757e..04e9eb34ed48efe75944420c5c58ac6f12a6cd8e 100644
--- a/tutorials/compressible/rhopSonicFoam/shockTube/0/T
+++ b/tutorials/compressible/rhopSonicFoam/shockTube/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhopSonicFoam/shockTube/0/U b/tutorials/compressible/rhopSonicFoam/shockTube/0/U
index 501712894305dd82b2396ae139fec221d35a1466..989a9aa6c4016abce119cb0bd297496e5d46ec65 100644
--- a/tutorials/compressible/rhopSonicFoam/shockTube/0/U
+++ b/tutorials/compressible/rhopSonicFoam/shockTube/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhopSonicFoam/shockTube/0/p b/tutorials/compressible/rhopSonicFoam/shockTube/0/p
index 7a9a0ce1aeb6f0acae1e2e87a5a6b14d861d062d..2ac9b83800383db32455ef32f7f03183cbef534d 100644
--- a/tutorials/compressible/rhopSonicFoam/shockTube/0/p
+++ b/tutorials/compressible/rhopSonicFoam/shockTube/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhopSonicFoam/shockTube/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhopSonicFoam/shockTube/constant/polyMesh/blockMeshDict
index 5de374c371781f8f88812929995a6a8cde2ed330..84f6d25381c765ce614138a0cf3317aa19441795 100644
--- a/tutorials/compressible/rhopSonicFoam/shockTube/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhopSonicFoam/shockTube/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/T b/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/T
index 74c9fa43c01ddaba7616d26d9b51ae6044687fcf..ab439e5da6c1997cde048225b6306ce76b761351 100644
--- a/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/T
+++ b/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/U b/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/U
index ad82f1f256f93c64ee6e73d3406015a6eddd43c8..3235e3c3f7458ca0559159d370c3c1c49b226b90 100644
--- a/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/U
+++ b/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/p b/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/p
index 9ec17cbfc065817c530856d6e79983008cce7a18..57da73d4f0c9b37938987b965c0880fcdd8de407 100644
--- a/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/p
+++ b/tutorials/compressible/rhopSonicFoam/wedge15Ma5/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/rhopSonicFoam/wedge15Ma5/constant/polyMesh/blockMeshDict b/tutorials/compressible/rhopSonicFoam/wedge15Ma5/constant/polyMesh/blockMeshDict
index c9d3dd16eb214dc087dd41d6a55c0e9bf7cd8427..2b1abb18980be68e55a1422107ccc8e01a2cce02 100644
--- a/tutorials/compressible/rhopSonicFoam/wedge15Ma5/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/rhopSonicFoam/wedge15Ma5/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/T b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/T
index 74c9fa43c01ddaba7616d26d9b51ae6044687fcf..ab439e5da6c1997cde048225b6306ce76b761351 100644
--- a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/T
+++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/U b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/U
index 488db5a6749ca13acb1a0c0e45649c6ece6d7958..ea567fe8794d4536291de8b1b2bbabfc6bc9747e 100644
--- a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/U
+++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/p b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/p
index 5e993bac23829489dfa2bb5d0bfa288ae698c9f3..f919e8ed31d93332aba8bf40242bdd148c88b50e 100644
--- a/tutorials/compressible/sonicFoam/laminar/forwardStep/0/p
+++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/polyMesh/blockMeshDict b/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/polyMesh/blockMeshDict
index 43f728fbec3385ee835012de7c14ba04e7f84ce7..d3a3349ed66b500b655a8b2b95fdcbb976812e86 100644
--- a/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/sonicFoam/laminar/forwardStep/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/T b/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/T
index 26cd813bf2c51348e82d72e849c0d5f08c9f757e..04e9eb34ed48efe75944420c5c58ac6f12a6cd8e 100644
--- a/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/T
+++ b/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/U b/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/U
index 501712894305dd82b2396ae139fec221d35a1466..989a9aa6c4016abce119cb0bd297496e5d46ec65 100644
--- a/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/U
+++ b/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/magU b/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/magU
index 0fd4b44e6f05f324058b5dc3db3bf4dfda9ca281..4a82eb7719cec924e71db5d1dbfb80cb5c37858a 100644
--- a/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/magU
+++ b/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/magU
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/p b/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/p
index 7a9a0ce1aeb6f0acae1e2e87a5a6b14d861d062d..2ac9b83800383db32455ef32f7f03183cbef534d 100644
--- a/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/p
+++ b/tutorials/compressible/sonicFoam/laminar/shockTube/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/0/T b/tutorials/compressible/sonicFoam/laminar/shockTube/0/T
index 26cd813bf2c51348e82d72e849c0d5f08c9f757e..04e9eb34ed48efe75944420c5c58ac6f12a6cd8e 100644
--- a/tutorials/compressible/sonicFoam/laminar/shockTube/0/T
+++ b/tutorials/compressible/sonicFoam/laminar/shockTube/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/0/U b/tutorials/compressible/sonicFoam/laminar/shockTube/0/U
index 501712894305dd82b2396ae139fec221d35a1466..989a9aa6c4016abce119cb0bd297496e5d46ec65 100644
--- a/tutorials/compressible/sonicFoam/laminar/shockTube/0/U
+++ b/tutorials/compressible/sonicFoam/laminar/shockTube/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/0/magU b/tutorials/compressible/sonicFoam/laminar/shockTube/0/magU
index 0fd4b44e6f05f324058b5dc3db3bf4dfda9ca281..4a82eb7719cec924e71db5d1dbfb80cb5c37858a 100644
--- a/tutorials/compressible/sonicFoam/laminar/shockTube/0/magU
+++ b/tutorials/compressible/sonicFoam/laminar/shockTube/0/magU
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/0/p b/tutorials/compressible/sonicFoam/laminar/shockTube/0/p
index 7a9a0ce1aeb6f0acae1e2e87a5a6b14d861d062d..2ac9b83800383db32455ef32f7f03183cbef534d 100644
--- a/tutorials/compressible/sonicFoam/laminar/shockTube/0/p
+++ b/tutorials/compressible/sonicFoam/laminar/shockTube/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/laminar/shockTube/constant/polyMesh/blockMeshDict b/tutorials/compressible/sonicFoam/laminar/shockTube/constant/polyMesh/blockMeshDict
index c9bce43fbbb7a81570510d7ef7d5611927e0390c..2cca973a7b5d0da84dcf43682a61c029c7cde0cd 100644
--- a/tutorials/compressible/sonicFoam/laminar/shockTube/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/sonicFoam/laminar/shockTube/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/T b/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/T
index 41259fbd7cd4ef878370700c601d62d2a56b0f77..a488a851d7ae7540720de7a4557a056d4eb98a1e 100644
--- a/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/T
+++ b/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/U b/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/U
index c1e2d42a81d26f26e1ef76d03ba071ebabb8bdbc..3d45213e747f6da606cb078e15dd20e2b7674984 100644
--- a/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/U
+++ b/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/p b/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/p
index ff971336468b1ac09b040596e0dc763eddd4b0b6..6bfbcbc5202bd9cdf81d2d7aa56e86bc4322f036 100644
--- a/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/p
+++ b/tutorials/compressible/sonicFoam/ras/nacaAirfoil/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/ras/nacaAirfoil/constant/polyMesh/boundary.org b/tutorials/compressible/sonicFoam/ras/nacaAirfoil/constant/polyMesh/boundary.org
index d033035f97c0dfd75388cf456ecffa9c18667d97..cf0c785ac05bf7bb6a9661996b163956707f7156 100644
--- a/tutorials/compressible/sonicFoam/ras/nacaAirfoil/constant/polyMesh/boundary.org
+++ b/tutorials/compressible/sonicFoam/ras/nacaAirfoil/constant/polyMesh/boundary.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/ras/prism/0/T b/tutorials/compressible/sonicFoam/ras/prism/0/T
index 97bca6a5fc806032c4fc8c89854556bdaa9422df..a7d30232908c56c71db305ac729c225447f901f3 100644
--- a/tutorials/compressible/sonicFoam/ras/prism/0/T
+++ b/tutorials/compressible/sonicFoam/ras/prism/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/ras/prism/0/U b/tutorials/compressible/sonicFoam/ras/prism/0/U
index 1f0102c348df3cf7dda8a53fac7fd4467d0243a7..fc2e64ae1e2d663970325b008f2499a489c82671 100644
--- a/tutorials/compressible/sonicFoam/ras/prism/0/U
+++ b/tutorials/compressible/sonicFoam/ras/prism/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/ras/prism/0/p b/tutorials/compressible/sonicFoam/ras/prism/0/p
index be0a9f3334e643e694cfb97e0850b697e644f2b1..4fefb77017332252427eb0e4fd41354509d43b57 100644
--- a/tutorials/compressible/sonicFoam/ras/prism/0/p
+++ b/tutorials/compressible/sonicFoam/ras/prism/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicFoam/ras/prism/constant/polyMesh/blockMeshDict b/tutorials/compressible/sonicFoam/ras/prism/constant/polyMesh/blockMeshDict
index 5422cfc5a63c88eca1c74a3c48a28fa108d920fd..f167766b853fae3329879d19057500f3c9a1458a 100644
--- a/tutorials/compressible/sonicFoam/ras/prism/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/sonicFoam/ras/prism/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/U b/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/U
index 9610e2068b2d06070610fd305677358c473cf858..1d20bd2da2182620e61c4800f873aa4e3010ba46 100644
--- a/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/U
+++ b/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/p b/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/p
index 0084d6dc3f7f1d4f976365730b690c402319fec9..ed95d613b8e0eba066280de50fab22864a0e5c28 100644
--- a/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/p
+++ b/tutorials/compressible/sonicLiquidFoam/decompressionTank/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/polyMesh/blockMeshDict b/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/polyMesh/blockMeshDict
index 1dd311e1c2ac3a3b81e7ba1bc06007e0aa185479..17d703a3a041490196c030347956838af01d06bb 100644
--- a/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/polyMesh/blockMeshDict
+++ b/tutorials/compressible/sonicLiquidFoam/decompressionTank/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/boundaryT b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/boundaryT
index ece1ab678bf98765b9167650337a833cdc6662bd..a6bf1f0650bdf60623ce4efffd936ade5c58a523 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/boundaryT
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/boundaryT
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  dev                                   |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/boundaryU b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/boundaryU
index c75e5506a6ffcc4f0e74d4f75805144e7183260d..565d0f91bb1f6f78f06cbb197c7a81865b433e83 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/boundaryU
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/boundaryU
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  dev                                   |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/dsmcRhoN b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/dsmcRhoN
index 2494f1643f1b6d201b7a9ff35e6e4b07de66fe35..6abc56f15ce65e416d7534e728215f2b3540d1a9 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/dsmcRhoN
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/dsmcRhoN
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  dev                                   |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/fD b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/fD
index bcc188d7b5a790a122ed4667767c6eeb45d6f929..3f123353d0f36f4c1d8453f34c8571c1bce9ef04 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/fD
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/fD
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  dev                                   |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/iDof b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/iDof
index 1dd93605f14168df6fea5446e1fe7fdf01c9052e..998dceab966306d07dbe4ad5472c3e4d4d81655b 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/iDof
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/iDof
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  dev                                   |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/internalE b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/internalE
index b5e11bb73855edbfea417b5ce73b338d433d2fcc..8afabc293fb09ca8927e525258a2f841513a079e 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/internalE
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/internalE
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  dev                                   |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/linearKE b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/linearKE
index 4edb0c49dcbad0d7f929b94aca49811d361999f0..50e8fd12e502c0eee97d2014d063100f300f5b69 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/linearKE
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/linearKE
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  dev                                   |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/momentum b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/momentum
index 1b17cb300b1101ba9193c0976630601dadcfc5af..57bd3fbe675dfe90ea5e185d0fbcae41ffaaf3ed 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/momentum
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/momentum
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  dev                                   |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/q b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/q
index e4cb992d829e294268b4721d21cf028bf7eac1ac..eb9e3655654db824589730e435c6b53c588d2d7e 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/q
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/q
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  dev                                   |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/rhoM b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/rhoM
index 2eb277f9c6aac08e1175469ed8856cf23d8fa8c0..9e95c235a09d7fa9dd82221119adc2221fb59fcd 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/rhoM
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/rhoM
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  dev                                   |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/rhoN b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/rhoN
index 7d6a69919866eba37b88df23e2b8131f0002db76..c712cbfca92db9e6bcb11d58a727ef5a9db7ccef 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/rhoN
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/0/rhoN
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  dev                                   |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/constant/polyMesh/blockMeshDict b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/constant/polyMesh/blockMeshDict
index 18351b2877d03dfdae46a66f2faad61e12efffc7..97bf4695307c5f5caabeeea7f9893db19aa9781d 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/constant/polyMesh/blockMeshDict
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/boundaryT b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/boundaryT
index b4415cdcaccbdad11761f5b35880b539283c3764..2cfde8992df9086d57f578ca115a28ca30dd45fe 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/boundaryT
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/boundaryT
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/boundaryU b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/boundaryU
index c4a7ffe6977d05cd0a9ad4731efde3bef00985ac..0d9e96d66e73b7ca1eaa85e54ca2dfa918939172 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/boundaryU
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/boundaryU
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/dsmcRhoN b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/dsmcRhoN
index 823194202066146076c20c8518ef01248073a964..d83c09b2269aa1e0f9179a66db871ccbb1c1ea75 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/dsmcRhoN
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/dsmcRhoN
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/fD b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/fD
index fbc135df53158591819197c95a7b73e48c2fdc6a..5c7e8435f4907cf018c773b4978e6e9bb3e76c9c 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/fD
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/fD
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/iDof b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/iDof
index 04bb9394b0ad172d2206f5decbe13cd286c4ad31..f6a14ca9581e0bb00d13407fe780872b1bbe41b7 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/iDof
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/iDof
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/internalE b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/internalE
index ff19c819e408f2b2489ba616610d6d65978be8d2..58c7a464f20376b4d8aa5df1d774fc7af506ed39 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/internalE
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/internalE
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/linearKE b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/linearKE
index e8c080b09df389c1512d3de5a3c3e76dcbbf1953..e1a071e627c5d36320659d28c22dd12ffe132b1d 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/linearKE
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/linearKE
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/momentum b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/momentum
index 53327c5862c5576307a4ad56e78f13855179a33d..f597df58049d634525a4160328672773bd767b3b 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/momentum
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/momentum
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/q b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/q
index 4a8b2d2c3e720bde4612ddf0c06b0fe16482ff30..906229f0fd8943b564b74fab42298e11e44c5695 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/q
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/q
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/rhoM b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/rhoM
index 730a121aa8ed50764f7ddad3bfd4549881e93460..02dc5b642e6ba57fd41c34a40e7ae64e15de4763 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/rhoM
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/rhoM
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/rhoN b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/rhoN
index b52b74dc0069d2aca4e64dfaacae04da6a3535c1..3d3e599d1c221c73676347da880a2b694a4bc981 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/rhoN
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/0/rhoN
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/constant/polyMesh/blockMeshDict b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/constant/polyMesh/blockMeshDict
index eafb3dc32affde3d63fdc39fa483e09ecb34614d..69cde6440d9d6fe2f16f467f7ed70b02a3c434a0 100644
--- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/constant/polyMesh/blockMeshDict
+++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/boundaryT b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/boundaryT
index 196febe80309169829fd303101e5d351f6e66fa5..562a25c503b4b6154d0dbd548ebe771bf60f0cc4 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/boundaryT
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/boundaryT
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/boundaryU b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/boundaryU
index 91eab0e837f893343c17a126fcf4d8735721011e..497cf3201ae458f300a473dc19f97c89471e4009 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/boundaryU
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/boundaryU
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/dsmcRhoN b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/dsmcRhoN
index b005545e6642ae19e72cd8cfc83d79e24dfe6f46..c17242ed6179fb8d9623dd0c5b4b75c4c29a9961 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/dsmcRhoN
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/dsmcRhoN
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/fD b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/fD
index fae3c26dc8992afad2a8a7004da3a4d6d0c4b7aa..5cb9bf628748999d5af948ffef73ef202a2e0ff8 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/fD
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/fD
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/iDof b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/iDof
index 1e13af9370f63157d67336a43f8506b935b100bd..2d6fc415cabc41043c45f1e90ffc0e88ce587c84 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/iDof
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/iDof
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/internalE b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/internalE
index 976ec30e748377cdf28804e7eafffd9678af758d..fc66ad0a443ad0c0b13ad1292862036aa976db5e 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/internalE
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/internalE
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/linearKE b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/linearKE
index b26e99313c337f33fdd5fb3a6014ddfc4be6bf1f..71e0100e21a2981b170fa32907a0524c6cddfc7d 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/linearKE
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/linearKE
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/momentum b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/momentum
index 05d234bd2a9faeea9e3be9f3704f6c70332adf85..c33b2e6c9cb278fb8a8d29d23e0a6d04ede0126e 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/momentum
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/momentum
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/q b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/q
index 5e954626a4b63af5d87c28bbc1b61bd7ed04fd7b..d6461db437c09dee918048b84b8f1cb62af1ace7 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/q
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/q
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/rhoM b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/rhoM
index 7ec6f3368f6ffb0e880a51f0cf7caf0d5fe7dd08..c9f47a595d632f4b2c79d49543be91aa1c698e3c 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/rhoM
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/rhoM
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/rhoN b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/rhoN
index f847c22cd09bcd571c103f2dd0ccb8512cf97fbc..1e1977851a3aa896efb806cc41f85988883e7c52 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/rhoN
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/0/rhoN
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/constant/polyMesh/blockMeshDict b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/constant/polyMesh/blockMeshDict
index b9ec0f2ebfb2e6fe53e5c4e1280491c4971b2a56..bd60593f88f6c8e8395772a51f81fcc4c7fdd4cb 100644
--- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/constant/polyMesh/blockMeshDict
+++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/boundaryT b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/boundaryT
index f587cd73801a22ca0080a46e5b85625d271dbe53..024d218ec786cbd017a76bf8d2e9bf727d15ea97 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/boundaryT
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/boundaryT
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/boundaryU b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/boundaryU
index 415380b9891c6c4b7afd1a4f69009f4ce2e0d38e..c292565bd132413237db3295e94a9c5636d55145 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/boundaryU
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/boundaryU
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/dsmcRhoN b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/dsmcRhoN
index 07c6a1b456e23d56b39e27de03e9849d624402ef..bad10b7276b2ce9c1a597215c297a032e75f1071 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/dsmcRhoN
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/dsmcRhoN
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/fD b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/fD
index 646849b96e5abba41f92fde621167fa11d4f9b4b..cf079de827aba930fb4334bd7ad18d999de34b64 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/fD
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/fD
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/iDof b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/iDof
index 1ce7e3b052bc821b0cf23b7fcd0763629c6f3a6d..5967f899185707c22fcffdbc27f22bfbabd40247 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/iDof
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/iDof
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/internalE b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/internalE
index b13d432e3a228a010213250f39d4cbd86f65d0e2..52220cd583f2a875f793439aaf55515963579dfd 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/internalE
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/internalE
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/linearKE b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/linearKE
index 189311cb1dc5f9a7113727652d214f5848cf20de..abedbe96dce06f262039b34296582ef600b2865a 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/linearKE
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/linearKE
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/momentum b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/momentum
index 979ab3893adf9dafe1e93e7e67b54da395ff846b..6563ccf963ebfe36dc04157ac6247515c99cf9c8 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/momentum
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/momentum
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/q b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/q
index 5de7659935206a2a837b4b10f48d80687caaff9f..bb772f8afcae226ee941b6b5a8a6e91d770fd75c 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/q
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/q
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/rhoM b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/rhoM
index 3f9855fdb9335f40fe545f272565e0c65ec8c410..ba2c19c3d823f39d8e489fdb2821b2a93212d4d2 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/rhoM
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/rhoM
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/rhoN b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/rhoN
index f4305a74a9951d9be82c32326084b6f25d273922..d74c7e6568d42fb2d91cd222e61456e37ab53a78 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/rhoN
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/0/rhoN
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/constant/polyMesh/blockMeshDict b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/constant/polyMesh/blockMeshDict
index 5ef67b3d5842cf3e8e113eeec14aa3fe3378cece..37d08d80d2fb28e0600a357f681db17b2635f0a5 100644
--- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/constant/polyMesh/blockMeshDict
+++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/K b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/0/U
similarity index 68%
rename from tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/K
rename to tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/0/U
index 4068676987cd2dd76f0d037797f8ff5c731ba2eb..786c02fc0c7a7b2bca257e8a9539753967f29975 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/K
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/0/U
@@ -2,27 +2,35 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
     format      ascii;
-    class       volScalarField;
-    object      K;
+    class       volVectorField;
+    object      U;
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-dimensions      [1 1 -3 -1 0 0 0];
+dimensions      [0 1 -1 0 0 0 0];
 
-internalField   uniform 80;
+internalField   uniform (0 0 0);
 
 boundaryField
 {
-    ".*"
+    periodicX
     {
-        type            calculated;
+        type            cyclic;
+    }
+    periodicY
+    {
+        type            cyclic;
+    }
+    periodicZ
+    {
+        type            cyclic;
     }
 }
 
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/moleculeProperties b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/moleculeProperties
index 947047da6982639a71483731c9f28e4def1dc794..434cdea83b046941c07d4aa02e71f7396176d43a 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/moleculeProperties
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/moleculeProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/polyMesh/blockMeshDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/polyMesh/blockMeshDict
index 769ffba243754c2466291c72b8dde6433f8f3127..8a432d8218a393fbc4a6a57c760751a451340401 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/polyMesh/blockMeshDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/controlDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/controlDict
index 6846736f6be63f7fef67c1ec70d2371768e06f04..4da03ed3f3d31013c6d47b623d09966dff06787b 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/controlDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/controlDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/decomposeParDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/decomposeParDict
index 78b5c29d385f4802fa7361fb70cad21c03e3e0be..1c829f6d4cba56254968da7c6ddb6150881c6195 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/decomposeParDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/decomposeParDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdEquilibrationDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdEquilibrationDict
index 992b7b3d47c0724e161aba0d375a28a93c3fbc40..33e684a3ee52bbf54d5e57aad0231aedcea077ea 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdEquilibrationDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdEquilibrationDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdInitialiseDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdInitialiseDict
index 0c0439ca09b7b4a102d6d685929d1b9b43e341b4..32ad6ab7f31ffd17adc1016b43d4c9a46a344c89 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdInitialiseDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/mdInitialiseDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/potentialDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/potentialDict
index 5d6aca13c1c4e2808648446fc82b4d59bd9b8f80..bf7767259ecc97a86cc9b98c2b30b640147aeda1 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/potentialDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/potentialDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 n|    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/cp b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/0/U
similarity index 68%
rename from tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/cp
rename to tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/0/U
index 84aab72ae1cdbe89a2ad06c7c6b3fafa51c33b87..786c02fc0c7a7b2bca257e8a9539753967f29975 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/cp
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/0/U
@@ -2,27 +2,35 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
     format      ascii;
-    class       volScalarField;
-    object      cp;
+    class       volVectorField;
+    object      U;
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-dimensions      [0 2 -2 -1 0 0 0];
+dimensions      [0 1 -1 0 0 0 0];
 
-internalField   uniform 450;
+internalField   uniform (0 0 0);
 
 boundaryField
 {
-    ".*"
+    periodicX
     {
-        type            calculated;
+        type            cyclic;
+    }
+    periodicY
+    {
+        type            cyclic;
+    }
+    periodicZ
+    {
+        type            cyclic;
     }
 }
 
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/moleculeProperties b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/moleculeProperties
index b7167f77ac3abc6a586bc3ba80a3d305c8268c37..f62302881c4fe53d3bdd8b9f12c8dee18f6f46a2 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/moleculeProperties
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/moleculeProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/polyMesh/blockMeshDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/polyMesh/blockMeshDict
index bb24cc7054e57d7638f7ab9d42cc07f7ea301c7c..6ca693e6a022f774f4bc5019325de72dff234b7c 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/polyMesh/blockMeshDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/controlDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/controlDict
index dda6c1a4de2e523c4439c28d1964d89e285dd042..ad34ce0b2c39e1fdd0f4ac11995a2c45e60ca92f 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/controlDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/controlDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/decomposeParDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/decomposeParDict
index 3d0485eefa85f372c1c40e4e0f794b3f438f1896..9e252f9135df6627734a8d474e3b55b5fd5c9fbb 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/decomposeParDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/decomposeParDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdEquilibrationDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdEquilibrationDict
index aa3060834feef98f2c9dee01a27d9e59c0533c9a..68019a7f1e615c4857d6b8132f8b485aca901ebe 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdEquilibrationDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdEquilibrationDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdInitialiseDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdInitialiseDict
index 2c2f42d851a6791c199cc31706648efd460cbaca..d4b32368717e1b8ee98c05456d76380fdb5bf7a1 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdInitialiseDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/mdInitialiseDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/potentialDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/potentialDict
index c1af478bcc0e7a7c9ab704f0b329656bc0590bc2..98ae840006b1aedf4011ea4703303fef65b8a3d9 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/potentialDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/potentialDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/0/U b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/0/U
index b9dc8a00f4cdb6a111635e8b620ffc2011f275cc..188b54d50d390e8c6b7a85d3b97e03f868fcf7ce 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/0/U
+++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/moleculeProperties b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/moleculeProperties
index 14f7fb31776018dbf0cc7b39404f60d028ea8f69..83a924ce2b7a96f884e8da8acd408e4666674361 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/moleculeProperties
+++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/moleculeProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/polyMesh/blockMeshDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/polyMesh/blockMeshDict
index 11d54e00c527d7d561ed18e4cf9f6d6ae6a1e5c3..d4c6546e3e29e467a90ee21543d13fa68b2a50c8 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/polyMesh/blockMeshDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/controlDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/controlDict
index 708791f4ec1587ff7e038013329ad2ad9e194c12..7e5b2dcfa9c7dc1a2baa89783adffe6b7e3dfee9 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/controlDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/controlDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict
index 8c5e563a6480a70440f16fe47e3de779079cc501..061d98f166e750b68618d1b19bc5424f4c9d09ed 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdEquilibrationDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdEquilibrationDict
index aa3060834feef98f2c9dee01a27d9e59c0533c9a..68019a7f1e615c4857d6b8132f8b485aca901ebe 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdEquilibrationDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdEquilibrationDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdInitialiseDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdInitialiseDict
index 5b10f0048d158d3cbf45caddebe09a32998bacd8..2373141f8a2c163665e0743624752e77a66a994f 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdInitialiseDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/mdInitialiseDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/potentialDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/potentialDict
index c1af478bcc0e7a7c9ab704f0b329656bc0590bc2..98ae840006b1aedf4011ea4703303fef65b8a3d9 100644
--- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/potentialDict
+++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/potentialDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/phi b/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/phi
index 301b230f427860b64ac2c98d6d61df73e791f5cb..ca10e4a9f621b8617709c70ff8a2fdadc37fbd11 100644
--- a/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/phi
+++ b/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/phi
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/rho b/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/rho
index ab4ad199e69ce699a12894b0f85d43a699868756..f0abe5c74aefd2a26ba279638c12e29ff9f4a91a 100644
--- a/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/rho
+++ b/tutorials/electromagnetics/electrostaticFoam/chargedWire/0/rho
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/electromagnetics/electrostaticFoam/chargedWire/constant/polyMesh/blockMeshDict b/tutorials/electromagnetics/electrostaticFoam/chargedWire/constant/polyMesh/blockMeshDict
index 5cc96fdb79679bcdbd0c7cd24e591879b918a305..caa5da75d903f743279f05938abdd3fc2b0f4be5 100644
--- a/tutorials/electromagnetics/electrostaticFoam/chargedWire/constant/polyMesh/blockMeshDict
+++ b/tutorials/electromagnetics/electrostaticFoam/chargedWire/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/0/B b/tutorials/electromagnetics/mhdFoam/hartmann/0/B
index 7027728c0a64984169818edcda258de98d80b595..3ce5a237b34928024dbf4c4b50aad003616ada57 100644
--- a/tutorials/electromagnetics/mhdFoam/hartmann/0/B
+++ b/tutorials/electromagnetics/mhdFoam/hartmann/0/B
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/0/U b/tutorials/electromagnetics/mhdFoam/hartmann/0/U
index 9ddff27844014d6cc1e898c1c06e6f1f4ae49dfb..f269e2a862d90a40239531c4b65266f372cc467a 100644
--- a/tutorials/electromagnetics/mhdFoam/hartmann/0/U
+++ b/tutorials/electromagnetics/mhdFoam/hartmann/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/0/p b/tutorials/electromagnetics/mhdFoam/hartmann/0/p
index 61a8a91555470a255ed3e810f93cd23b3c1add78..da9131c4243f33b8eae25eef4fc254ee1c3feaf4 100644
--- a/tutorials/electromagnetics/mhdFoam/hartmann/0/p
+++ b/tutorials/electromagnetics/mhdFoam/hartmann/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/0/pB b/tutorials/electromagnetics/mhdFoam/hartmann/0/pB
index 0d7b5a060d108b6ece370352da0bc0dd4cfcb9be..f3e16d564e955343889f4952f1ac482d02e79747 100644
--- a/tutorials/electromagnetics/mhdFoam/hartmann/0/pB
+++ b/tutorials/electromagnetics/mhdFoam/hartmann/0/pB
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/electromagnetics/mhdFoam/hartmann/constant/polyMesh/blockMeshDict b/tutorials/electromagnetics/mhdFoam/hartmann/constant/polyMesh/blockMeshDict
index 885c2b67dedd7b56b0cca67572bceeda157d3eab..aa90c2b886eeb3076fab7630ad9b00c6f6d1b754 100644
--- a/tutorials/electromagnetics/mhdFoam/hartmann/constant/polyMesh/blockMeshDict
+++ b/tutorials/electromagnetics/mhdFoam/hartmann/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/financial/financialFoam/europeanCall/0/V b/tutorials/financial/financialFoam/europeanCall/0/V
index 43902e350fb44f071eac8b0512eaeea98c6d93f3..3eea666e14fd2501f03b05a3faeb41288e4517a6 100644
--- a/tutorials/financial/financialFoam/europeanCall/0/V
+++ b/tutorials/financial/financialFoam/europeanCall/0/V
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/financial/financialFoam/europeanCall/constant/polyMesh/blockMeshDict b/tutorials/financial/financialFoam/europeanCall/constant/polyMesh/blockMeshDict
index 4a90e62405e0c7c5fcabf2f03012ecea50df7199..544668f72159f9b840af8da42efc0bb2238cf8b2 100644
--- a/tutorials/financial/financialFoam/europeanCall/constant/polyMesh/blockMeshDict
+++ b/tutorials/financial/financialFoam/europeanCall/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/T b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/T
index 76b8877c7e780d42f65a1520dcaba50fa64795d8..0a7701acf8cf9afcd9056c41195d58d0afa803ae 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/T
+++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/T.org b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/T.org
index 76b8877c7e780d42f65a1520dcaba50fa64795d8..0a7701acf8cf9afcd9056c41195d58d0afa803ae 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/T.org
+++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/T.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/U b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/U
index 2d20d38354d7c5b03739f6103d0ab251e6b85183..3f054f0a23d177540befdf3efc2607f5154d85f2 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/U
+++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/alphat b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/alphat
index 5398bd05954b8f8ab9aad002275c0a267cc39825..fcaa8d0c1dd5f6bcf88248540939fa15760f20d3 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/alphat
+++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/alphat
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/p b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/p
index fa5d55a2b2e0dd4e562a4f57baa0e9ed58f40c47..12d1bdf61ad58d1919b88e88b9622240337063a2 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/p
+++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/polyMesh/blockMeshDict b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
index e6ba59b71ddabe665b681333294b610a8a558636..84848b66f0cb86e8f82bcb07c200fb0af599401f 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
+++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/transportProperties b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/transportProperties
index 12e263d48c07d0911bf71ff2a17676c737c4eff9..edc9d789a473b319e49eeae9140e7f682b940ffa 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/transportProperties
+++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/constant/transportProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/T b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/T
index 18610a300b685b169a045233b2775105e8767351..c4031678832c6ae81dd0f7fd24b522bc0a0c9d3d 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/T
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/T.org b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/T.org
index 18610a300b685b169a045233b2775105e8767351..c4031678832c6ae81dd0f7fd24b522bc0a0c9d3d 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/T.org
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/T.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/U b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/U
index 2d20d38354d7c5b03739f6103d0ab251e6b85183..3f054f0a23d177540befdf3efc2607f5154d85f2 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/U
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/alphat b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/alphat
index 5398bd05954b8f8ab9aad002275c0a267cc39825..fcaa8d0c1dd5f6bcf88248540939fa15760f20d3 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/alphat
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/alphat
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/p b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/p
index fa5d55a2b2e0dd4e562a4f57baa0e9ed58f40c47..12d1bdf61ad58d1919b88e88b9622240337063a2 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/p
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/polyMesh/blockMeshDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
index e6ba59b71ddabe665b681333294b610a8a558636..84848b66f0cb86e8f82bcb07c200fb0af599401f 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/polyMesh/boundary b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/polyMesh/boundary
index b66c382b6a97cb8be2343bf548a944f463442571..0d4d0e498dae524c835cc1addc9707eb5af47fb3 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/polyMesh/boundary
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/polyMesh/boundary
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
+|  \\    /   O peration     | Version:  dev                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/transportProperties b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/transportProperties
index 12e263d48c07d0911bf71ff2a17676c737c4eff9..edc9d789a473b319e49eeae9140e7f682b940ffa 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/transportProperties
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/constant/transportProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSchemes b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSchemes
index 5471bec4f451227282ac89b5ddfb9630349ba144..7547301c0a7334bde4b0ed2bce5c4ca1cef58c2f 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSchemes
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSchemes
@@ -32,8 +32,6 @@ divSchemes
     div(phi,T)      Gauss upwind;
     div(phi,k)      Gauss upwind;
     div(phi,epsilon) Gauss upwind;
-    div(phi,R)      Gauss upwind;
-    div(R)          Gauss linear;
     div((nuEff*dev(grad(U).T()))) Gauss linear;
 }
 
@@ -41,7 +39,7 @@ laplacianSchemes
 {
     default         none;
     laplacian(nuEff,U) Gauss linear corrected;
-    laplacian((1|A(U)),p) Gauss linear corrected;
+    laplacian((1|A(U)),p_rgh) Gauss linear corrected;
     laplacian(kappaEff,T) Gauss linear corrected;
     laplacian(DkEff,k) Gauss linear corrected;
     laplacian(DepsilonEff,epsilon) Gauss linear corrected;
@@ -61,7 +59,7 @@ snGradSchemes
 fluxRequired
 {
     default         no;
-    p               ;
+    p_rgh           ;
 }
 
 
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution
index e27eae3fe5b223494feb9a9495a571f3b98de2d8..672d6cc22c6f43eb60c16adf4386f3c37e6e26a2 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/system/fvSolution
@@ -17,7 +17,7 @@ FoamFile
 
 solvers
 {
-    p
+    p_rgh
     {
         solver          PCG;
         preconditioner  DIC;
@@ -37,14 +37,15 @@ solvers
 SIMPLE
 {
     nNonOrthogonalCorrectors 0;
-    pRefCell        0;
+    p_rghRefCell    0;
+    p_rghRefValue   0;
     pRefValue       0;
 }
 
 relaxationFactors
 {
     rho             1;
-    p               0.7;
+    p_rgh           0.7;
     U               0.2;
     T               0.7;
     "(k|epsilon|R)" 0.7;
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/T b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/T
index a63d9d4ad9222c0b97a121130d60f561ac80810e..7ef0fa06e2bf99b087a861bb1d541a8f045abff0 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/T
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/U b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/U
index 3d3a738a377b00ff034663164408f9453e54ec05..3403ec4715db52fb23a44e5aaacce0cb5faf03ce 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/U
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/alphat b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/alphat
index e425ac8eb5b7c3ad917d1fa8f4c33b94d601afc9..42d75c5d3edcbfb14a945f0ae7d66a0053f07598 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/alphat
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/alphat
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/p b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/p
index a3743ec6591a7e42dddec7b8699a812fff831bc5..de044e160322a78b9ef0c197b25047475fceba24 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/p
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/polyMesh/blockMeshDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/polyMesh/blockMeshDict
index eec7278da05642c3e09c68c1b651f59070267b0d..03b5b6722eb4da7337f54418a29df3e33383c165 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/polyMesh/blockMeshDict
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/polyMesh/boundary b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/polyMesh/boundary
index ed36d6f6c4c706abc259b9dd50efb83f6f373b2b..e0608ea9d7b00eb29a16f26a0976246582e1df1a 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/polyMesh/boundary
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/polyMesh/boundary
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
+|  \\    /   O peration     | Version:  dev                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/transportProperties b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/transportProperties
index 12e263d48c07d0911bf71ff2a17676c737c4eff9..edc9d789a473b319e49eeae9140e7f682b940ffa 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/transportProperties
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/transportProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/triSurface/fridgeA.eMesh b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/triSurface/fridgeA.eMesh
index 5ee3242eb38c54322743376defb1257c5af32d48..ed62a3046c0acd3a0e8b7907539fffc2bec5fa64 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/triSurface/fridgeA.eMesh
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/constant/triSurface/fridgeA.eMesh
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/controlDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/controlDict
index 9ed612f7fd0484aa79daaeaae11575d6e3e91d4b..5d61414e9e5329228104fc823e74ca2055853d2f 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/controlDict
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/controlDict
@@ -23,7 +23,7 @@ startTime       0;
 
 stopAt          endTime;
 
-endTime         1000;
+endTime         2000;
 
 deltaT          1;
 
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSchemes b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSchemes
index 5471bec4f451227282ac89b5ddfb9630349ba144..c08ba97414e464b0853a590232b34e669c0ed3e3 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSchemes
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSchemes
@@ -40,12 +40,12 @@ divSchemes
 laplacianSchemes
 {
     default         none;
-    laplacian(nuEff,U) Gauss linear corrected;
-    laplacian((1|A(U)),p) Gauss linear corrected;
-    laplacian(kappaEff,T) Gauss linear corrected;
-    laplacian(DkEff,k) Gauss linear corrected;
-    laplacian(DepsilonEff,epsilon) Gauss linear corrected;
-    laplacian(DREff,R) Gauss linear corrected;
+    laplacian(nuEff,U) Gauss linear limited 0.333;
+    laplacian((1|A(U)),p_rgh) Gauss linear limited 0.333;
+    laplacian(kappaEff,T) Gauss linear limited 0.333;
+    laplacian(DkEff,k) Gauss linear limited 0.333;
+    laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333;
+    laplacian(DREff,R) Gauss linear limited 0.333;
 }
 
 interpolationSchemes
@@ -55,13 +55,13 @@ interpolationSchemes
 
 snGradSchemes
 {
-    default         corrected;
+    default         limited 0.333;
 }
 
 fluxRequired
 {
     default         no;
-    p               ;
+    p_rgh           ;
 }
 
 
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution
index b04fdc8e05f2646b25729b64eddd88d68a620f66..0e0e41fd800967f867d74c9c7060b65b8e897847 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/fvSolution
@@ -17,7 +17,7 @@ FoamFile
 
 solvers
 {
-    p
+    p_rgh
     {
         solver          PCG;
         preconditioner  DIC;
@@ -25,7 +25,7 @@ solvers
         relTol          0.01;
     }
 
-    "(U|T|k|epsilon|R)"
+    "(U|T|k|epsilon)"
     {
         solver          PBiCG;
         preconditioner  DILU;
@@ -37,17 +37,17 @@ solvers
 SIMPLE
 {
     nNonOrthogonalCorrectors 0;
-    pRefCell        0;
+    p_rghRefCell    0;
+    p_rghRefValue   0;
     pRefValue       0;
 }
 
 relaxationFactors
 {
-    rho             1;
-    p               0.3;
-    U               0.7;
+    p_rgh           0.8;
+    U               0.2;
     T               0.7;
-    "(k|epsilon|R)" 0.7;
+    "(k|epsilon)"   0.7;
 }
 
 
diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/snappyHexMeshDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/snappyHexMeshDict
index 4c921888160634dd27f7603a95d5b828521f7341..6f6506f595d78426b018fd98d885b82be0073d39 100644
--- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/snappyHexMeshDict
+++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/snappyHexMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/T b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/T
index 8d91e2e9f1124b71ad6cbb03305baa9cf40cb89a..75ad17a3a43e63187e33fce7258be0e76714984f 100644
--- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/T
+++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/T.org b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/T.org
index 8d91e2e9f1124b71ad6cbb03305baa9cf40cb89a..75ad17a3a43e63187e33fce7258be0e76714984f 100644
--- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/T.org
+++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/T.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/U b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/U
index 2d20d38354d7c5b03739f6103d0ab251e6b85183..3f054f0a23d177540befdf3efc2607f5154d85f2 100644
--- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/U
+++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/p b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/p
index 60476789b96d7bb407921a9f67df1d88bde8abec..c93d03abc69ff2671ea9e3881f68f0c2887b1bec 100644
--- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/p
+++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/polyMesh/blockMeshDict b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
index e6ba59b71ddabe665b681333294b610a8a558636..84848b66f0cb86e8f82bcb07c200fb0af599401f 100644
--- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
+++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/polyMesh/boundary b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/polyMesh/boundary
index 3d13809c69fb293defe12d6b57e7948511a2aa96..7cba6d73ec3f51a6b3060c296fcc3634d9e16846 100644
--- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/polyMesh/boundary
+++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/constant/polyMesh/boundary
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
+|  \\    /   O peration     | Version:  dev                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSchemes b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSchemes
index 517ebe571ff909252e2a8706f196144db76d11f5..8a7b5900c1a825797b9fc39e773ad6ad114c2f40 100644
--- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSchemes
+++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSchemes
@@ -39,7 +39,7 @@ laplacianSchemes
 {
     default         none;
     laplacian(muEff,U) Gauss linear uncorrected;
-    laplacian((rho*(1|A(U))),p) Gauss linear uncorrected;
+    laplacian((rho*(1|A(U))),p_rgh) Gauss linear uncorrected;
     laplacian(alphaEff,h) Gauss linear uncorrected;
     laplacian(DkEff,k) Gauss linear uncorrected;
     laplacian(DepsilonEff,epsilon) Gauss linear uncorrected;
@@ -59,7 +59,7 @@ snGradSchemes
 fluxRequired
 {
     default         no;
-    p;
+    p_rgh;
 }
 
 
diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution
index 451f5da1aa16dc28ff7cc1e0e9ed9b9b696034b7..2b7472975c740808b0b7b80d93701cba10cd7aca 100644
--- a/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution
+++ b/tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity/system/fvSolution
@@ -17,11 +17,11 @@ FoamFile
 
 solvers
 {
-    p
+    p_rgh
     {
         solver           GAMG;
         tolerance        1e-7;
-        relTol           0.1;
+        relTol           0.01;
 
         smoother         DICGaussSeidel;
 
@@ -42,16 +42,18 @@ solvers
 
 SIMPLE
 {
+    momentumPredictor yes;
     nNonOrthogonalCorrectors 0;
-    pRefCell        0;
+    p_rghRefCell    0;
+    p_rghRefValue   100000;
     pRefValue       100000;
     convergence     1e-04;
 }
 
 relaxationFactors
 {
-    p               0.3;
-    U               0.7;
+    p_rgh           0.9;
+    U               0.3;
     h               0.7;
     "(k|epsilon|omega)" 0.7;
 }
diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/T b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/T
index 76b8877c7e780d42f65a1520dcaba50fa64795d8..0a7701acf8cf9afcd9056c41195d58d0afa803ae 100644
--- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/T
+++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/T.org b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/T.org
index 76b8877c7e780d42f65a1520dcaba50fa64795d8..0a7701acf8cf9afcd9056c41195d58d0afa803ae 100644
--- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/T.org
+++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/T.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/U b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/U
index 2d20d38354d7c5b03739f6103d0ab251e6b85183..3f054f0a23d177540befdf3efc2607f5154d85f2 100644
--- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/U
+++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/p b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/p
index 60476789b96d7bb407921a9f67df1d88bde8abec..c93d03abc69ff2671ea9e3881f68f0c2887b1bec 100644
--- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/p
+++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/constant/polyMesh/blockMeshDict b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
index e6ba59b71ddabe665b681333294b610a8a558636..84848b66f0cb86e8f82bcb07c200fb0af599401f 100644
--- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
+++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/G b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/G
index 6139ef5da8ac0923e8705812e26b03323c200739..44a41769a9dd386184575d112e948e0790ca5c89 100644
--- a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/G
+++ b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/G
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/T b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/T
index 513a57a47aebda443516fb055dc8bbd50f6ef263..026b3aa7665cd5d0a5b9c3c5e0c4256c8f441f1c 100644
--- a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/T
+++ b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/U b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/U
index 68b5a4fa26490a6f53ed121de52fffbcf7b97092..9a2a7f88bf6604fbbaf948c6b83740061274e472 100644
--- a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/U
+++ b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/p b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/p
index f1dea8c18989c78a05ad64ed102298c10f42d1d6..8ac4cd06242b79f1f994da332d1033080ef46d41 100644
--- a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/p
+++ b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/constant/polyMesh/blockMeshDict b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/constant/polyMesh/blockMeshDict
index 4e67bfd893d1236ad447c9cbaa6fa3a04d70a9c3..153904f7560becae2a45e43cb313d8952a743a16 100644
--- a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/constant/polyMesh/blockMeshDict
+++ b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoom/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/G b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/G
index 6139ef5da8ac0923e8705812e26b03323c200739..44a41769a9dd386184575d112e948e0790ca5c89 100644
--- a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/G
+++ b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/G
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/IDefault b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/IDefault
index 9f2e99587e8a40c74464e53f4875dfbebe2e0482..44c3e87c9b282224bd406b79816872bf835daa8f 100644
--- a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/IDefault
+++ b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/IDefault
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/T b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/T
index 513a57a47aebda443516fb055dc8bbd50f6ef263..026b3aa7665cd5d0a5b9c3c5e0c4256c8f441f1c 100644
--- a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/T
+++ b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/U b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/U
index 68b5a4fa26490a6f53ed121de52fffbcf7b97092..9a2a7f88bf6604fbbaf948c6b83740061274e472 100644
--- a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/U
+++ b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/p b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/p
index f1dea8c18989c78a05ad64ed102298c10f42d1d6..8ac4cd06242b79f1f994da332d1033080ef46d41 100644
--- a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/p
+++ b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/constant/polyMesh/blockMeshDict b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/constant/polyMesh/blockMeshDict
index 4e67bfd893d1236ad447c9cbaa6fa3a04d70a9c3..153904f7560becae2a45e43cb313d8952a743a16 100644
--- a/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/constant/polyMesh/blockMeshDict
+++ b/tutorials/heatTransfer/buoyantSimpleRadiationFoam/hotRadiationRoomFvDOM/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/T b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/T
index c6ae16042a23970bf06cb47a4d916c97d04ececb..beaf073ba5c2808588348655605434eb50fb31da 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/T
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/U b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/U
index 42ab6a0a093e32a475a47cec7682dc47d2b91093..153de0bd0921a770a0124ad4de42a729fcb34615 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/U
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/p b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/p
index 0233591ba356bbb9965aa9b06fe11aac419d1c5a..64f7bcda23c1b7e13fcd7760fa78faf79d2f3b4d 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/p
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/rho b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/rho
deleted file mode 100644
index e8c31261f17caace5f88ee78dd69ce48770986ce..0000000000000000000000000000000000000000
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/0/rho
+++ /dev/null
@@ -1,29 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       volScalarField;
-    object      rho;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-dimensions      [1 -3 0 0 0 0 0];
-
-internalField   uniform 8000;
-
-boundaryField
-{
-    ".*"
-    {
-        type            calculated;
-    }
-}
-
-// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/Allrun b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/Allrun
index 8a25708db643118931960623480808d1988d5974..da52a21b6f4cecc413cd9786ec72f11b6798d65c 100755
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/Allrun
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/Allrun
@@ -5,27 +5,21 @@ cd ${0%/*} || exit 1    # run from this directory
 # Source tutorial run functions
 . $WM_PROJECT_DIR/bin/tools/RunFunctions
 
-rm -rf constant/polyMesh/sets
-
 runApplication blockMesh
 runApplication setSet -batch makeCellSets.setSet
-
-rm -f constant/polyMesh/sets/*_old
-
-runApplication setsToZones -noFlipMap
 runApplication splitMeshRegions -cellZones -overwrite
 
 # remove fluid fields from solid regions (important for post-processing)
 for i in heater leftSolid rightSolid
 do
-   rm -f 0*/$i/{mut,alphat,epsilon,k,p,p,U}
+   rm -f 0*/$i/{mut,alphat,epsilon,k,p,U}
 done
 
-# remove solid fields from fluid regions (important for post-processing)
-for i in bottomAir topAir
-do
-   rm -f 0*/$i/{cp,K,rho}
-done
+## remove solid fields from fluid regions (important for post-processing)
+#for i in bottomAir topAir
+#do
+#   rm -f 0*/$i/{cp,K,rho}
+#done
 
 for i in bottomAir topAir heater leftSolid rightSolid
 do
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/RASProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/RASProperties
index 0d135f28e9f77d83787cf6240d8ebc961aa3be47..2e7d3413fc149e0ab287f79da33b11fd8d6e24a0 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/RASProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/RASProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/thermophysicalProperties
index c2d48ee2b07a5e07c946f1f9b253e0f5da364b75..fcb0e7a6a93592cc8e413c7b8a99834c1c90f686 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/thermophysicalProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/thermophysicalProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/turbulenceProperties
index 9edb2bbd94bab3c47940647b1052ed861e056d6a..a8317a372fc1afdfbb4f657f5bf11948a7314e48 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/turbulenceProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/bottomAir/turbulenceProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/heater/solidThermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/heater/solidThermophysicalProperties
new file mode 100644
index 0000000000000000000000000000000000000000..c27f08c9f16e4ab325456ceee37ca55ece67442e
--- /dev/null
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/heater/solidThermophysicalProperties
@@ -0,0 +1,76 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    object      solidThermophysicalProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+thermoType constSolidThermo;
+//thermoType interpolatedSolidThermo;
+//thermoType directionalSolidThermo;
+
+constSolidThermoCoeffs
+{
+    //- constant properties
+
+    rho rho [1 -3  0  0 0 0 0] 8000;
+    cp  cp  [0  2 -2 -1 0 0 0] 450;
+    K   K   [1  1 -3 -1 0 0 0] 80;
+
+    // N/A
+    Hf  Hf  [0  2 -2  0 0 0 0] 1;
+    emissivity  emissivity  [0 0 0 0 0 0 0] 1;
+}
+
+
+interpolatedSolidThermoCoeffs
+{
+    //- interpolated properties
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+    KValues             (80 40);
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+
+directionalSolidThermoCoeffs
+{
+    //- does interpolation and directional K in coordinate system.
+    //  Specify multiple values, one for each temperature. Properties are
+    //  interpolated according to the local temperature.
+
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+
+    KValues             ((40 40 40) (40 40 40));
+    
+    coordinateSystem
+    {
+        origin  (-0.000062 0.000019 0.000039);
+        coordinateRotation
+        {
+            type    axes;
+            e1      (1 0 0);
+            e3      (-3.1807824E-6 -0.99813473 0.0610505);
+        }
+    }
+
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/leftSolid/solidThermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/leftSolid/solidThermophysicalProperties
new file mode 120000
index 0000000000000000000000000000000000000000..1da00bc6bdb7d81d0cfa13ba04762efad0bdeaa8
--- /dev/null
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/leftSolid/solidThermophysicalProperties
@@ -0,0 +1 @@
+../heater/solidThermophysicalProperties
\ No newline at end of file
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/polyMesh/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/polyMesh/blockMeshDict
index 06d8984cac79bcf4f38f35fa074db015f33fe978..51e6fe0e74daae29c929ccd40188c0a86c808773 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/polyMesh/blockMeshDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/polyMesh/boundary b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/polyMesh/boundary
index 5bf895b5429d2189877727d9b1cef5907c47ae5d..73459cea0720d03956f9bd6cfb7f59f4d60a5d64 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/polyMesh/boundary
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/polyMesh/boundary
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
+|  \\    /   O peration     | Version:  dev                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/rightSolid/solidThermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/rightSolid/solidThermophysicalProperties
new file mode 120000
index 0000000000000000000000000000000000000000..1da00bc6bdb7d81d0cfa13ba04762efad0bdeaa8
--- /dev/null
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/rightSolid/solidThermophysicalProperties
@@ -0,0 +1 @@
+../heater/solidThermophysicalProperties
\ No newline at end of file
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/RASProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/RASProperties
index 29aa27e2378121b1620e293c24e384922b046665..09a9a55851d05da7dc6c64a6e800b9f5d0fe7a0e 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/RASProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/RASProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  dev                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/thermophysicalProperties
index af8ff6f5eb4a073a1d890d8c385db0a1cd3fdedb..ae93c0c12f8dd59a0c0182c80fc6f8152fe9b049 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/thermophysicalProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/thermophysicalProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  dev                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/turbulenceProperties
index e009ce86dad347dba559dac50a0c90718781edcb..e63bbc50815e89dfc7ef93352a3228a18620220d 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/turbulenceProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/topAir/turbulenceProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  dev                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/makeCellSets.setSet b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/makeCellSets.setSet
index 84c52f85b36fd8d8f90b07b24898b7b8857add26..7e0c2bd5227ae42537bc60e7e21977eec679862a 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/makeCellSets.setSet
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/makeCellSets.setSet
@@ -1,11 +1,16 @@
 cellSet heater new boxToCell (-0.01    0 -100 )(0.01 0.01 100)
 cellSet heater add boxToCell (-0.01 -100 -0.01)(0.01 0.01 0.01)
+cellZoneSet heater new setToCellZone heater
 cellSet leftSolid new boxToCell (-100 0 -100 )(-0.01 0.01 100)
+cellZoneSet leftSolid new setToCellZone leftSolid
 cellSet rightSolid new boxToCell (0.01 0 -100 )(100 0.01 100)
+cellZoneSet rightSolid new setToCellZone rightSolid
 cellSet topAir new boxToCell (-100 0.01 -100 )(100 100 100)
+cellZoneSet topAir new setToCellZone topAir
 cellSet bottomAir clear
 cellSet bottomAir add cellToCell heater
 cellSet bottomAir add cellToCell leftSolid
 cellSet bottomAir add cellToCell rightSolid
 cellSet bottomAir add cellToCell topAir
 cellSet bottomAir invert
+cellZoneSet bottomAir new setToCellZone bottomAir
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/changeDictionaryDict
index b9a8773586c82ac5d800e20139fde5154662b03a..d3fa852bd9b1551b755956930f2512f5f9edf34e 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -55,9 +55,10 @@ dictionaryReplacement
 
             "bottomAir_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               basicThermo;
+                KName           none;
                 value           uniform 300;
             }
         }
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/fvSchemes
index cedcc3c61167fc381f40b263c8743d9cc76629c6..14b6f258e20a17205afb28bd366ce13fe9cc475e 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/fvSolution
index 16947842afa6f8a069354291de55d8810a5c1d5c..49a947de37aab3a5fc105b441d35bba93af5f1dc 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomAir/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict
index 846a89461bb117e4aa5094170f07ecccc900dcbf..f8844db5ce851b4e8104a0c7236bc7a44f90ffc8 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict
@@ -15,7 +15,7 @@ FoamFile
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-libs            ("libOpenFOAM.so" "libcompressibleTurbulenceModel.so" "libcompressibleRASModels.so");
+libs            ("libcompressibleTurbulenceModel.so" "libcompressibleRASModels.so");
 
 application     chtMultiRegionFoam;
 
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSchemes
index 7662a20c90a6cd9bdfe1b69c7ce6a893baee27e0..e46addeb9a1a305f7e78ea125894a096b3a8e7b8 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                  |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSolution
index fd0e7cced2f2fa02d008a6052d4ac1060e3af1dc..034233532a9f1f0f03af5b2f0fdc6b62a192225f 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/changeDictionaryDict
index b2b1284ef3acd8b67e074a7fb7f6564cfa231b13..ac0d8cdbd413c6ed53c52da3fa96d72064f8b7be 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -45,9 +45,10 @@ dictionaryReplacement
             }
             "heater_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               solidThermo;
+                KName           none;
                 value           uniform 300;
             }
             minY
@@ -58,47 +59,6 @@ dictionaryReplacement
         }
     }
 
-    rho
-    {
-        internalField   uniform 8000;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            calculated;
-                value           uniform 8000;
-            }
-        }
-    }
-
-    K
-    {
-        internalField   uniform 80;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 80;
-            }
-        }
-    }
-
-    cp
-    {
-        internalField   uniform 450;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 450;
-            }
-        }
-    }
 }
 
 // ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSchemes
index 74053b0ab3ded29a9bb6536d918e55e092273405..655585fe6bec30b02d225fae8bef530fbc10ac76 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSolution
index 19370a0e39c4b42a7a58941a05170e9a33a37b4f..3ea75f5e695b3da7074a475689aba91f12b08642 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict
index 05d3011024a3585fd845a854e340007df876be93..b3453c48f5cab4d7bed22941a8b328e802bfc255 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -41,55 +41,14 @@ dictionaryReplacement
             }
             "leftSolid_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               solidThermo;
+                KName           none;
                 value           uniform 300;
             }
         }
     }
-
-    rho
-    {
-        internalField   uniform 8000;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            calculated;
-                value           uniform 8000;
-            }
-        }
-    }
-
-    K
-    {
-        internalField   uniform 80;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 80;
-            }
-        }
-    }
-
-    cp
-    {
-        internalField   uniform 450;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 450;
-            }
-        }
-    }
 }
 
 // ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSchemes
index 74053b0ab3ded29a9bb6536d918e55e092273405..655585fe6bec30b02d225fae8bef530fbc10ac76 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSolution
index 19370a0e39c4b42a7a58941a05170e9a33a37b4f..3ea75f5e695b3da7074a475689aba91f12b08642 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict
index 7e1adc24b3cbe56cb8ee32acec7530b08a38633f..f6822937d8e34c5584d90420027b5cb5be1824d5 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -41,55 +41,14 @@ dictionaryReplacement
             }
             "rightSolid_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               solidThermo;
+                KName           none;
                 value           uniform 300;
             }
         }
     }
-
-    rho
-    {
-        internalField   uniform 8000;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            calculated;
-                value           uniform 8000;
-            }
-        }
-    }
-
-    K
-    {
-        internalField   uniform 80;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 80;
-            }
-        }
-    }
-
-    cp
-    {
-        internalField   uniform 450;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 450;
-            }
-        }
-    }
 }
 
 // ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSchemes
index 74053b0ab3ded29a9bb6536d918e55e092273405..655585fe6bec30b02d225fae8bef530fbc10ac76 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSolution
index 19370a0e39c4b42a7a58941a05170e9a33a37b4f..3ea75f5e695b3da7074a475689aba91f12b08642 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/changeDictionaryDict
index 6e9192301de24ef41cc000f14ef9ab40bc7a659f..5dc9ca91e63721e3b94b8179783b8f3d6d43897c 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -66,9 +66,10 @@ dictionaryReplacement
 
             "topAir_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               basicThermo;
+                KName           none;
                 value           uniform 300;
             }
         }
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSchemes
index cedcc3c61167fc381f40b263c8743d9cc76629c6..14b6f258e20a17205afb28bd366ce13fe9cc475e 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution
index 27f5cfb1dd778872ef6c12a8acdda71bfa29a298..c2e710a010ad47420c3749ac71566b3146634a77 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/K b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/K
deleted file mode 100644
index 4068676987cd2dd76f0d037797f8ff5c731ba2eb..0000000000000000000000000000000000000000
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/K
+++ /dev/null
@@ -1,29 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       volScalarField;
-    object      K;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-dimensions      [1 1 -3 -1 0 0 0];
-
-internalField   uniform 80;
-
-boundaryField
-{
-    ".*"
-    {
-        type            calculated;
-    }
-}
-
-// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/T b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/T
index c6ae16042a23970bf06cb47a4d916c97d04ececb..beaf073ba5c2808588348655605434eb50fb31da 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/T
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/U b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/U
index 42ab6a0a093e32a475a47cec7682dc47d2b91093..153de0bd0921a770a0124ad4de42a729fcb34615 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/U
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/cp b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/cp
deleted file mode 100644
index 84aab72ae1cdbe89a2ad06c7c6b3fafa51c33b87..0000000000000000000000000000000000000000
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/cp
+++ /dev/null
@@ -1,29 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       volScalarField;
-    object      cp;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-dimensions      [0 2 -2 -1 0 0 0];
-
-internalField   uniform 450;
-
-boundaryField
-{
-    ".*"
-    {
-        type            calculated;
-    }
-}
-
-// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/p b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/p
index 0233591ba356bbb9965aa9b06fe11aac419d1c5a..64f7bcda23c1b7e13fcd7760fa78faf79d2f3b4d 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/p
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/rho b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/rho
deleted file mode 100644
index e8c31261f17caace5f88ee78dd69ce48770986ce..0000000000000000000000000000000000000000
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/rho
+++ /dev/null
@@ -1,29 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       volScalarField;
-    object      rho;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-dimensions      [1 -3 0 0 0 0 0];
-
-internalField   uniform 8000;
-
-boundaryField
-{
-    ".*"
-    {
-        type            calculated;
-    }
-}
-
-// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/Allrun b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/Allrun
index d5e265222269f536aa06f4d0a7b83d82a9920163..1bb6bd8b53aaedddaeb174778b8503936e45fdb4 100755
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/Allrun
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/Allrun
@@ -9,19 +9,19 @@ rm -rf constant/polyMesh/sets
 
 runApplication blockMesh
 runApplication snappyHexMesh -overwrite
-runApplication splitMeshRegions -cellZones
+runApplication splitMeshRegions -cellZones -overwrite
 
 # remove fluid fields from solid regions (important for post-processing)
 for i in heater leftSolid rightSolid
 do
-   rm -f 0*/$i/{mut,alphat,epsilon,k,p,p,U}
+   rm -f 0*/$i/{mut,alphat,epsilon,k,p,U}
 done
 
-# remove solid fields from fluid regions (important for post-processing)
-for i in bottomAir topAir
-do
-   rm -f 0*/$i/{cp,K,rho}
-done
+# No solid fields to remove from fluid regions (important for post-processing)
+#for i in bottomAir topAir
+#do
+#   rm -f 0*/$i/{cp,K,rho}
+#done
 
 for i in bottomAir topAir heater leftSolid rightSolid
 do
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/RASProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/RASProperties
index 7af714ce80c2673f10284a9774bec65cb2708b01..2e7d3413fc149e0ab287f79da33b11fd8d6e24a0 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/RASProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/RASProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -14,9 +14,9 @@ FoamFile
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-RASModel kEpsilon;
+RASModel laminar;
 
-turbulence      off;
+turbulence      on;
 
 printCoeffs     on;
 
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/thermophysicalProperties
index c2d48ee2b07a5e07c946f1f9b253e0f5da364b75..fcb0e7a6a93592cc8e413c7b8a99834c1c90f686 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/thermophysicalProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/thermophysicalProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/turbulenceProperties
index 9edb2bbd94bab3c47940647b1052ed861e056d6a..a8317a372fc1afdfbb4f657f5bf11948a7314e48 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/turbulenceProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/bottomAir/turbulenceProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/heater/solidThermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/heater/solidThermophysicalProperties
new file mode 100644
index 0000000000000000000000000000000000000000..c27f08c9f16e4ab325456ceee37ca55ece67442e
--- /dev/null
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/heater/solidThermophysicalProperties
@@ -0,0 +1,76 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    object      solidThermophysicalProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+thermoType constSolidThermo;
+//thermoType interpolatedSolidThermo;
+//thermoType directionalSolidThermo;
+
+constSolidThermoCoeffs
+{
+    //- constant properties
+
+    rho rho [1 -3  0  0 0 0 0] 8000;
+    cp  cp  [0  2 -2 -1 0 0 0] 450;
+    K   K   [1  1 -3 -1 0 0 0] 80;
+
+    // N/A
+    Hf  Hf  [0  2 -2  0 0 0 0] 1;
+    emissivity  emissivity  [0 0 0 0 0 0 0] 1;
+}
+
+
+interpolatedSolidThermoCoeffs
+{
+    //- interpolated properties
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+    KValues             (80 40);
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+
+directionalSolidThermoCoeffs
+{
+    //- does interpolation and directional K in coordinate system.
+    //  Specify multiple values, one for each temperature. Properties are
+    //  interpolated according to the local temperature.
+
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+
+    KValues             ((40 40 40) (40 40 40));
+    
+    coordinateSystem
+    {
+        origin  (-0.000062 0.000019 0.000039);
+        coordinateRotation
+        {
+            type    axes;
+            e1      (1 0 0);
+            e3      (-3.1807824E-6 -0.99813473 0.0610505);
+        }
+    }
+
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/leftSolid/solidThermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/leftSolid/solidThermophysicalProperties
new file mode 100644
index 0000000000000000000000000000000000000000..c27f08c9f16e4ab325456ceee37ca55ece67442e
--- /dev/null
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/leftSolid/solidThermophysicalProperties
@@ -0,0 +1,76 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    object      solidThermophysicalProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+thermoType constSolidThermo;
+//thermoType interpolatedSolidThermo;
+//thermoType directionalSolidThermo;
+
+constSolidThermoCoeffs
+{
+    //- constant properties
+
+    rho rho [1 -3  0  0 0 0 0] 8000;
+    cp  cp  [0  2 -2 -1 0 0 0] 450;
+    K   K   [1  1 -3 -1 0 0 0] 80;
+
+    // N/A
+    Hf  Hf  [0  2 -2  0 0 0 0] 1;
+    emissivity  emissivity  [0 0 0 0 0 0 0] 1;
+}
+
+
+interpolatedSolidThermoCoeffs
+{
+    //- interpolated properties
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+    KValues             (80 40);
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+
+directionalSolidThermoCoeffs
+{
+    //- does interpolation and directional K in coordinate system.
+    //  Specify multiple values, one for each temperature. Properties are
+    //  interpolated according to the local temperature.
+
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+
+    KValues             ((40 40 40) (40 40 40));
+    
+    coordinateSystem
+    {
+        origin  (-0.000062 0.000019 0.000039);
+        coordinateRotation
+        {
+            type    axes;
+            e1      (1 0 0);
+            e3      (-3.1807824E-6 -0.99813473 0.0610505);
+        }
+    }
+
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/polyMesh/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/polyMesh/blockMeshDict
index 33ec044c079bff5993ab7f35f801c0f697e4ceae..51e6fe0e74daae29c929ccd40188c0a86c808773 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/polyMesh/blockMeshDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -16,7 +16,7 @@ FoamFile
 
 convertToMeters 1;
 
-vertices        
+vertices
 (
     (-0.1 -0.04  -0.05)
     ( 0.1 -0.04  -0.05)
@@ -28,18 +28,18 @@ vertices
     (-0.1  0.04   0.05)
 );
 
-blocks          
+blocks
 (
     hex (0 1 2 3 4 5 6 7) (30 10 10) simpleGrading (1 1 1)
 );
 
-edges           
+edges
 (
 );
 
-patches         
+patches
 (
-    wall maxY 
+    wall maxY
     (
         (3 7 6 2)
     )
@@ -65,7 +65,7 @@ patches
     )
 );
 
-mergePatchPairs 
+mergePatchPairs
 (
 );
 
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/polyMesh/boundary b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/polyMesh/boundary
index 5a51a31831906ebf7008e7bd32c61cc023b56c99..591514a953ad0e084033a52d980bc76e9760f15e 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/polyMesh/boundary
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/polyMesh/boundary
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
+|  \\    /   O peration     | Version:  dev                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/rightSolid/solidThermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/rightSolid/solidThermophysicalProperties
new file mode 100644
index 0000000000000000000000000000000000000000..c27f08c9f16e4ab325456ceee37ca55ece67442e
--- /dev/null
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/rightSolid/solidThermophysicalProperties
@@ -0,0 +1,76 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    object      solidThermophysicalProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+thermoType constSolidThermo;
+//thermoType interpolatedSolidThermo;
+//thermoType directionalSolidThermo;
+
+constSolidThermoCoeffs
+{
+    //- constant properties
+
+    rho rho [1 -3  0  0 0 0 0] 8000;
+    cp  cp  [0  2 -2 -1 0 0 0] 450;
+    K   K   [1  1 -3 -1 0 0 0] 80;
+
+    // N/A
+    Hf  Hf  [0  2 -2  0 0 0 0] 1;
+    emissivity  emissivity  [0 0 0 0 0 0 0] 1;
+}
+
+
+interpolatedSolidThermoCoeffs
+{
+    //- interpolated properties
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+    KValues             (80 40);
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+
+directionalSolidThermoCoeffs
+{
+    //- does interpolation and directional K in coordinate system.
+    //  Specify multiple values, one for each temperature. Properties are
+    //  interpolated according to the local temperature.
+
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+
+    KValues             ((40 40 40) (40 40 40));
+    
+    coordinateSystem
+    {
+        origin  (-0.000062 0.000019 0.000039);
+        coordinateRotation
+        {
+            type    axes;
+            e1      (1 0 0);
+            e3      (-3.1807824E-6 -0.99813473 0.0610505);
+        }
+    }
+
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/RASProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/RASProperties
index 7af714ce80c2673f10284a9774bec65cb2708b01..09a9a55851d05da7dc6c64a6e800b9f5d0fe7a0e 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/RASProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/RASProperties
@@ -1,8 +1,8 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|  \\    /   O peration     | Version:  dev                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -14,9 +14,9 @@ FoamFile
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-RASModel kEpsilon;
+RASModel laminar;
 
-turbulence      off;
+turbulence      on;
 
 printCoeffs     on;
 
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/thermophysicalProperties
index c2d48ee2b07a5e07c946f1f9b253e0f5da364b75..ae93c0c12f8dd59a0c0182c80fc6f8152fe9b049 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/thermophysicalProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/thermophysicalProperties
@@ -1,8 +1,8 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|  \\    /   O peration     | Version:  dev                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/turbulenceProperties
index 9edb2bbd94bab3c47940647b1052ed861e056d6a..e63bbc50815e89dfc7ef93352a3228a18620220d 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/turbulenceProperties
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/turbulenceProperties
@@ -1,8 +1,8 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|  \\    /   O peration     | Version:  dev                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/makeCellSets.setSet b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/makeCellSets.setSet
deleted file mode 100644
index 84c52f85b36fd8d8f90b07b24898b7b8857add26..0000000000000000000000000000000000000000
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/makeCellSets.setSet
+++ /dev/null
@@ -1,11 +0,0 @@
-cellSet heater new boxToCell (-0.01    0 -100 )(0.01 0.01 100)
-cellSet heater add boxToCell (-0.01 -100 -0.01)(0.01 0.01 0.01)
-cellSet leftSolid new boxToCell (-100 0 -100 )(-0.01 0.01 100)
-cellSet rightSolid new boxToCell (0.01 0 -100 )(100 0.01 100)
-cellSet topAir new boxToCell (-100 0.01 -100 )(100 100 100)
-cellSet bottomAir clear
-cellSet bottomAir add cellToCell heater
-cellSet bottomAir add cellToCell leftSolid
-cellSet bottomAir add cellToCell rightSolid
-cellSet bottomAir add cellToCell topAir
-cellSet bottomAir invert
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/changeDictionaryDict
index 60db2d7cffa8ef5379a0048f8c126ee9c1f050a3..fea74b83155dd40c170c85ee08da875df05cdc97 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -16,52 +16,25 @@ FoamFile
 
 dictionaryReplacement
 {
-    U
+    boundary
     {
-        internalField   uniform (0 0 0);
-        boundaryField
+        minX
         {
-            minX
-            {
-                type            fixedValue;
-                value           uniform (0 0 0);
-            }
-            maxX
-            {
-                type            fixedValue;
-                value           uniform (0 0 0);
-            }
-
-            minY
-            {
-                type            fixedValue;
-                value           uniform (0 0 0);
-            }
-
-            minZ
-            {
-                type            fixedValue;
-                value           uniform (0 0 0);
-            }
-
-            maxZ
-            {
-                type            fixedValue;
-                value           uniform (0 0 0);
-            }
+            type            wall;
+        }
+        maxX
+        {
+            type            wall;
+        }
+    }
 
-            bottomAir_to_leftSolid
-            {
-                type            fixedValue;
-                value           uniform (0 0 0);
+    U
+    {
+        internalField   uniform (0.01 0 0);
 
-            }
-            bottomAir_to_heater
-            {
-                type            fixedValue;
-                value           uniform (0 0 0);
-            }
-            bottomAir_to_rightSolid
+        boundaryField
+        {
+            ".*"
             {
                 type            fixedValue;
                 value           uniform (0 0 0);
@@ -71,47 +44,21 @@ dictionaryReplacement
 
     T
     {
+        internalField   uniform 300;
+
         boundaryField
         {
-            minX
-            {
-                type            zeroGradient;
-            }
-            maxX
-            {
-                type            zeroGradient;
-            }
-            minY
-            {
-                type            zeroGradient;
-            }
-            minZ
+            ".*"
             {
                 type            zeroGradient;
             }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            bottomAir_to_leftSolid
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-            }
-            bottomAir_to_heater
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-            }
-            bottomAir_to_rightSolid
+
+            "bottomAir_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               basicThermo;
+                KName           none;
                 value           uniform 300;
             }
         }
@@ -125,47 +72,9 @@ dictionaryReplacement
 
         boundaryField
         {
-            minX
-            {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-            maxX
+            ".*"
             {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-
-            minY
-            {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-
-            minZ
-            {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-
-            bottomAir_to_leftSolid
-            {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-            bottomAir_to_heater
-            {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-            bottomAir_to_rightSolid
-            {
-                type            zeroGradient;
+                type            compressible::epsilonWallFunction;
                 value           uniform 0.01;
             }
         }
@@ -174,49 +83,12 @@ dictionaryReplacement
     k
     {
         internalField   uniform 0.1;
+
         boundaryField
         {
-            minX
-            {
-                type            zeroGradient;
-                value           uniform 0.1;
-            }
-            maxX
-            {
-                type            zeroGradient;
-                value           uniform 0.1;
-            }
-
-            minY
-            {
-                type            zeroGradient;
-                value           uniform 0.1;
-            }
-
-            minZ
-            {
-                type            zeroGradient;
-                value           uniform 0.1;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-                value           uniform 0.1;
-            }
-
-            bottomAir_to_leftSolid
-            {
-                type            zeroGradient;
-                value           uniform 0.1;
-            }
-            bottomAir_to_heater
+            ".*"
             {
-                type            zeroGradient;
-                value           uniform 0.1;
-            }
-            bottomAir_to_rightSolid
-            {
-                type            zeroGradient;
+                type            compressible::kqRWallFunction;
                 value           uniform 0.1;
             }
         }
@@ -224,53 +96,17 @@ dictionaryReplacement
 
     p
     {
-        internalField   uniform 1E5;
+        internalField   uniform 100000;
 
         boundaryField
         {
-            minX
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-            maxX
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-            minY
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-            minZ
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-            maxZ
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-            bottomAir_to_leftSolid
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-            bottomAir_to_heater
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-            bottomAir_to_rightSolid
+            ".*"
             {
                 type            buoyantPressure;
                 value           1e5;
             }
         }
     }
-
 }
 
 // ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSchemes
index cedcc3c61167fc381f40b263c8743d9cc76629c6..14b6f258e20a17205afb28bd366ce13fe9cc475e 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution
index a2f76a21ca2233f2d049cf01c448ec0876fe66b0..17e88546c2a20f01771c4623903840232762526c 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict
index 2f3a0001ef6d7821fc97e0879ba365d2b4b5588e..0751139283d5a758941a6906cf3a6087c6236931 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict
@@ -15,9 +15,9 @@ FoamFile
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-libs            ("libOpenFOAM.so" "libcompressibleTurbulenceModel.so" "libcompressibleRASModels.so");
+libs            ("libcompressibleTurbulenceModel.so" "libcompressibleRASModels.so");
 
-application     snappyHexMesh;
+application     chtMultiRegionFoam;
 
 startFrom       latestTime;
 
@@ -30,9 +30,8 @@ endTime         200;
 deltaT          0.001;
 
 writeControl    adjustableRunTime;
+
 writeInterval   50;
-//writeControl    timeStep;
-//writeInterval   100;
 
 purgeWrite      0;
 
@@ -50,6 +49,8 @@ runTimeModifiable true;
 
 maxCo           0.3;
 
+maxDi          10.0;
+
 adjustTimeStep  yes;
 
 
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..14d2b1bfdd56ceed0e21db6796cab3e8268d926d 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
@@ -22,8 +22,8 @@ numberOfSubdomains  4;
 //- Keep owner and neighbour on same processor for faces in zones:
 // preserveFaceZones (heater solid1 solid3);
 
-method          scotch;
-// method          hierarchical;
+// method          scotch;
+method          hierarchical;
 // method          simple;
 // method          metis;
 // method          manual;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSchemes
index 75c18cb478419f8b772c6d415556643327d29429..db9c8ba2c3ac9dd4d7e2b63f1891194b9c2b6497 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSolution
index fd0e7cced2f2fa02d008a6052d4ac1060e3af1dc..034233532a9f1f0f03af5b2f0fdc6b62a192225f 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/changeDictionaryDict
index 8e65b465fb3aacc9db508d048e3448c483be0ba0..ac0d8cdbd413c6ed53c52da3fa96d72064f8b7be 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -16,169 +16,49 @@ FoamFile
 
 dictionaryReplacement
 {
-    T
+    boundary
     {
-        internalField   uniform 300;
-
-        boundaryField
+        minY
         {
-            minY
-            {
-                type            fixedValue;
-                value           uniform 500;
-            }
-
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-
-            heater_to_bottomAir
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-
-            }
-            heater_to_leftSolid
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-            }
-            heater_to_rightSolid
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-            }
-            heater_to_topAir
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-            }
+            type            patch;
         }
-    }
-
-    rho
-    {
-        internalField   uniform 8000;
-
-        boundaryField
+        minZ
         {
-            minY
-            {
-                type            zeroGradient;
-            }
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            heater_to_bottomAir
-            {
-                type            zeroGradient;
-            }
-            heater_to_leftSolid
-            {
-                type            zeroGradient;
-            }
-            heater_to_rightSolid
-            {
-                type            zeroGradient;
-            }
-            heater_to_topAir
-            {
-                type            zeroGradient;
-            }
+            type            patch;
         }
-    }
-
-    K
-    {
-        internalField   uniform 80;
-
-        boundaryField
+        maxZ
         {
-            minY
-            {
-                type            zeroGradient;
-            }
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            heater_to_bottomAir
-            {
-                type            zeroGradient;
-            }
-            heater_to_leftSolid
-            {
-                type            zeroGradient;
-            }
-            heater_to_rightSolid
-            {
-                type            zeroGradient;
-            }
-            heater_to_topAir
-            {
-                type            zeroGradient;
-            }
+            type            patch;
         }
     }
 
-    cp
+    T
     {
-        internalField   uniform 450;
+        internalField   uniform 300;
 
         boundaryField
         {
-            minY
-            {
-                type            zeroGradient;
-            }
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            heater_to_bottomAir
-            {
-                type            zeroGradient;
-            }
-            heater_to_leftSolid
+            ".*"
             {
                 type            zeroGradient;
+                value           uniform 300;
             }
-            heater_to_rightSolid
+            "heater_to_.*"
             {
-                type            zeroGradient;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
+                neighbourFieldName T;
+                K               solidThermo;
+                KName           none;
+                value           uniform 300;
             }
-            heater_to_topAir
+            minY
             {
-                type            zeroGradient;
+                type            fixedValue;
+                value           uniform 500;
             }
         }
     }
+
 }
 
 // ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSchemes
index 74053b0ab3ded29a9bb6536d918e55e092273405..655585fe6bec30b02d225fae8bef530fbc10ac76 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSolution
index 19370a0e39c4b42a7a58941a05170e9a33a37b4f..3ea75f5e695b3da7074a475689aba91f12b08642 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/changeDictionaryDict
index 0ff29fa63a47d2af0ddc95852e0bcc10e95ea88f..b3453c48f5cab4d7bed22941a8b328e802bfc255 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -16,144 +16,36 @@ FoamFile
 
 dictionaryReplacement
 {
-    T
-    {
-        internalField   uniform 300;
-
-        boundaryField
-        {
-            minX
-            {
-                type            zeroGradient;
-            }
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            leftSolid_to_bottomAir
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-
-            }
-            leftSolid_to_heater
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-            }
-            leftSolid_to_topAir
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-            }
-        }
-    }
-
-    rho
+    boundary
     {
-        internalField   uniform 8000;
-
-        boundaryField
+        minZ
         {
-            minX
-            {
-                type            zeroGradient;
-            }
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            leftSolid_to_bottomAir
-            {
-                type            zeroGradient;
-            }
-            leftSolid_to_heater
-            {
-                type            zeroGradient;
-            }
-            leftSolid_to_topAir
-            {
-                type            zeroGradient;
-            }
+            type            patch;
         }
-    }
-
-    K
-    {
-        internalField   uniform 80;
-
-        boundaryField
+        maxZ
         {
-            minX
-            {
-                type            zeroGradient;
-            }
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            leftSolid_to_bottomAir
-            {
-                type            zeroGradient;
-            }
-            leftSolid_to_heater
-            {
-                type            zeroGradient;
-            }
-            leftSolid_to_topAir
-            {
-                type            zeroGradient;
-            }
+            type            patch;
         }
     }
 
-    cp
+    T
     {
-        internalField   uniform 450;
+        internalField   uniform 300;
 
         boundaryField
         {
-            minX
-            {
-                type            zeroGradient;
-            }
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            leftSolid_to_bottomAir
-            {
-                type            zeroGradient;
-            }
-            leftSolid_to_heater
+            ".*"
             {
                 type            zeroGradient;
+                value           uniform 300;
             }
-            leftSolid_to_topAir
+            "leftSolid_to_.*"
             {
-                type            zeroGradient;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
+                neighbourFieldName T;
+                K               solidThermo;
+                KName           none;
+                value           uniform 300;
             }
         }
     }
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSchemes
index 74053b0ab3ded29a9bb6536d918e55e092273405..655585fe6bec30b02d225fae8bef530fbc10ac76 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSolution
index 19370a0e39c4b42a7a58941a05170e9a33a37b4f..3ea75f5e695b3da7074a475689aba91f12b08642 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/changeDictionaryDict
index 18df13896bb7b7d0382b903b7d268ef5851403e0..f6822937d8e34c5584d90420027b5cb5be1824d5 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -16,143 +16,36 @@ FoamFile
 
 dictionaryReplacement
 {
-    T
+    boundary
     {
-        internalField   uniform 300;
-
-        boundaryField
+        minZ
         {
-            maxX
-            {
-                type            zeroGradient;
-            }
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            rightSolid_to_heater
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-            }
-            rightSolid_to_bottomAir
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-            }
-            rightSolid_to_topAir
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-            }
+            type            patch;
         }
-    }
-
-    rho
-    {
-        internalField   uniform 8000;
-
-        boundaryField
+        maxZ
         {
-            maxX
-            {
-                type            zeroGradient;
-            }
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            rightSolid_to_bottomAir
-            {
-                type            zeroGradient;
-            }
-            rightSolid_to_heater
-            {
-                type            zeroGradient;
-            }
-            rightSolid_to_topAir
-            {
-                type            zeroGradient;
-            }
+            type            patch;
         }
     }
 
-    K
-    {
-        internalField   uniform 80;
-
-        boundaryField
-        {
-            maxX
-            {
-                type            zeroGradient;
-            }
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            rightSolid_to_bottomAir
-            {
-                type            zeroGradient;
-            }
-            rightSolid_to_heater
-            {
-                type            zeroGradient;
-            }
-            rightSolid_to_topAir
-            {
-                type            zeroGradient;
-            }
-        }
-    }
-
-    cp
+    T
     {
-        internalField   uniform 450;
+        internalField   uniform 300;
 
         boundaryField
         {
-            maxX
-            {
-                type            zeroGradient;
-            }
-            minZ
-            {
-                type            zeroGradient;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-            }
-            rightSolid_to_bottomAir
-            {
-                type            zeroGradient;
-            }
-            rightSolid_to_heater
+            ".*"
             {
                 type            zeroGradient;
+                value           uniform 300;
             }
-            rightSolid_to_topAir
+            "rightSolid_to_.*"
             {
-                type            zeroGradient;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
+                neighbourFieldName T;
+                K               solidThermo;
+                KName           none;
+                value           uniform 300;
             }
         }
     }
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSchemes
index 74053b0ab3ded29a9bb6536d918e55e092273405..655585fe6bec30b02d225fae8bef530fbc10ac76 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSolution
index 19370a0e39c4b42a7a58941a05170e9a33a37b4f..3ea75f5e695b3da7074a475689aba91f12b08642 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/snappyHexMeshDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/snappyHexMeshDict
index 5c92e704da138a5ab9f4d2dd4ba7597ec8f42797..10ddad813a695b8d668bee3956b509c7614073c6 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/snappyHexMeshDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/snappyHexMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/changeDictionaryDict
index 943461dcb55883c9b321452ac558f9aef30d23f7..5dc9ca91e63721e3b94b8179783b8f3d6d43897c 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -18,52 +18,25 @@ dictionaryReplacement
 {
     U
     {
-        internalField   uniform ( 0.01 0 0 );
+        internalField   uniform (0.01 0 0);
+
         boundaryField
         {
-            minX
-            {
-                type            fixedValue;
-                value           uniform (0.01 0 0);
-            }
-            maxX
-            {
-                type            inletOutlet;
-                inletValue      uniform (0 0 0);
-            }
-
-            maxY
-            {
-                type            fixedValue;
-                value           uniform (0 0 0);
-            }
-
-            minZ
-            {
-                type            fixedValue;
-                value           uniform (0 0 0);
-            }
-            maxZ
+            ".*"
             {
                 type            fixedValue;
                 value           uniform (0 0 0);
             }
-
-            topAir_to_leftSolid
-            {
-                type            fixedValue;
-                value           uniform (0 0 0);
-
-            }
-            topAir_to_heater
+            minX
             {
                 type            fixedValue;
-                value           uniform (0 0 0);
+                value           uniform ( 0.01 0 0 );
             }
-            topAir_to_rightSolid
+            maxX
             {
-                type            fixedValue;
-                value           uniform (0 0 0);
+                type            inletOutlet;
+                inletValue      uniform ( 0 0 0 );
+                value           uniform ( 0 0 0 );
             }
         }
     }
@@ -74,11 +47,11 @@ dictionaryReplacement
 
         boundaryField
         {
-            maxY
+            ".*"
             {
-                type            fixedValue;
-                value           uniform 300;
+                type            zeroGradient;
             }
+
             minX
             {
                 type            fixedValue;
@@ -86,39 +59,17 @@ dictionaryReplacement
             }
             maxX
             {
-                type            fixedValue;
-                value           uniform 300;
-            }
-            minZ
-            {
-                type            fixedValue;
-                value           uniform 300;
-            }
-            maxZ
-            {
-                type            fixedValue;
+                type            inletOutlet;
+                inletValue      uniform 300;
                 value           uniform 300;
             }
-            topAir_to_leftSolid
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
 
-            }
-            topAir_to_heater
-            {
-                type            compressible::turbulentTemperatureCoupledBaffle;
-                neighbourFieldName T;
-                K               K;
-                value           uniform 300;
-            }
-            topAir_to_rightSolid
+            "topAir_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               basicThermo;
+                KName           none;
                 value           uniform 300;
             }
         }
@@ -126,55 +77,25 @@ dictionaryReplacement
 
     epsilon
     {
-        // Set the value on all bc to non-zero. Not used in simulation
-        // since zeroGradient; only used in initialisation.
+        internalField   uniform 0.01;
+
         boundaryField
         {
-            minX
+            ".*"
             {
-                type            fixedValue;
-                value           uniform 0.01;
-            }
-            maxX
-            {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-
-            minY
-            {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-            maxY
-            {
-                type            zeroGradient;
+                type            compressible::epsilonWallFunction;
                 value           uniform 0.01;
             }
 
-            minZ
-            {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-            topAir_to_leftSolid
-            {
-                type            zeroGradient;
-                value           uniform 0.01;
-            }
-            topAir_to_heater
+            minX
             {
-                type            zeroGradient;
+                type            fixedValue;
                 value           uniform 0.01;
             }
-            topAir_to_rightSolid
+            maxX
             {
-                type            zeroGradient;
+                type            inletOutlet;
+                inletValue      uniform 0.01;
                 value           uniform 0.01;
             }
         }
@@ -183,50 +104,24 @@ dictionaryReplacement
     k
     {
         internalField   uniform 0.1;
+
         boundaryField
         {
-            minX
-            {
-                type            fixedValue;
-                value           uniform 0.1;
-            }
-
-            maxX
-            {
-                type            zeroGradient;
-                value           uniform 0.1;
-            }
-
-            maxY
+            ".*"
             {
-                type            zeroGradient;
+                type            compressible::kqRWallFunction;
                 value           uniform 0.1;
             }
 
-            minZ
-            {
-                type            zeroGradient;
-                value           uniform 0.1;
-            }
-            maxZ
-            {
-                type            zeroGradient;
-                value           uniform 0.1;
-            }
-
-            topAir_to_leftSolid
-            {
-                type            zeroGradient;
-                value           uniform 0.1;
-            }
-            topAir_to_heater
+            minX
             {
-                type            zeroGradient;
+                type            fixedValue;
                 value           uniform 0.1;
             }
-            topAir_to_rightSolid
+            maxX
             {
-                type            zeroGradient;
+                type            inletOutlet;
+                inletValue      uniform 0.1;
                 value           uniform 0.1;
             }
         }
@@ -234,59 +129,23 @@ dictionaryReplacement
 
     p
     {
-        internalField   uniform 1E5;
+        internalField   uniform 100000;
 
         boundaryField
         {
-            minX
+            ".*"
             {
                 type            buoyantPressure;
                 value           1e5;
             }
+
             maxX
             {
                 type            waveTransmissive;
-                //field           p;
-                phi             phi;
-                rho             rho;
-                psi             psi;
-                gamma           1.4;    // cp/cv
-                fieldInf        1e5;
-                lInf            0.40;   // double length of domain
-                value           uniform 1e5;
-            }
-
-            maxY
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-
-            minZ
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-            maxZ
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-
-            topAir_to_leftSolid
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-            topAir_to_heater
-            {
-                type            buoyantPressure;
-                value           1e5;
-            }
-            topAir_to_rightSolid
-            {
-                type            buoyantPressure;
-                value           1e5;
+                gamma           1.4;
+                fieldInf        100000;
+                lInf            0.4;
+                value           uniform 100000;
             }
         }
     }
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSchemes b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSchemes
index cedcc3c61167fc381f40b263c8743d9cc76629c6..14b6f258e20a17205afb28bd366ce13fe9cc475e 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution
index 27f5cfb1dd778872ef6c12a8acdda71bfa29a298..c2e710a010ad47420c3749ac71566b3146634a77 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/K b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/K
deleted file mode 100644
index 4068676987cd2dd76f0d037797f8ff5c731ba2eb..0000000000000000000000000000000000000000
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/K
+++ /dev/null
@@ -1,29 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       volScalarField;
-    object      K;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-dimensions      [1 1 -3 -1 0 0 0];
-
-internalField   uniform 80;
-
-boundaryField
-{
-    ".*"
-    {
-        type            calculated;
-    }
-}
-
-// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/T b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/T
index c6ae16042a23970bf06cb47a4d916c97d04ececb..beaf073ba5c2808588348655605434eb50fb31da 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/T
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/U b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/U
index 42ab6a0a093e32a475a47cec7682dc47d2b91093..153de0bd0921a770a0124ad4de42a729fcb34615 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/U
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/cp b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/cp
deleted file mode 100644
index 84aab72ae1cdbe89a2ad06c7c6b3fafa51c33b87..0000000000000000000000000000000000000000
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/cp
+++ /dev/null
@@ -1,29 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       volScalarField;
-    object      cp;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-dimensions      [0 2 -2 -1 0 0 0];
-
-internalField   uniform 450;
-
-boundaryField
-{
-    ".*"
-    {
-        type            calculated;
-    }
-}
-
-// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/p b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/p
index 0233591ba356bbb9965aa9b06fe11aac419d1c5a..64f7bcda23c1b7e13fcd7760fa78faf79d2f3b4d 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/p
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/rho b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/rho
deleted file mode 100644
index e8c31261f17caace5f88ee78dd69ce48770986ce..0000000000000000000000000000000000000000
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/rho
+++ /dev/null
@@ -1,29 +0,0 @@
-/*--------------------------------*- C++ -*----------------------------------*\
-| =========                 |                                                 |
-| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
-|    \\/     M anipulation  |                                                 |
-\*---------------------------------------------------------------------------*/
-FoamFile
-{
-    version     2.0;
-    format      ascii;
-    class       volScalarField;
-    object      rho;
-}
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-dimensions      [1 -3 0 0 0 0 0];
-
-internalField   uniform 8000;
-
-boundaryField
-{
-    ".*"
-    {
-        type            calculated;
-    }
-}
-
-// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/Allrun b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/Allrun
index 78bae403a804a3a7b8f3a8faab9ba80f5c8cf013..0ba7339dbc20d28a0601f3ecdb0d70edab2f3d61 100755
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/Allrun
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/Allrun
@@ -5,27 +5,21 @@ cd ${0%/*} || exit 1    # run from this directory
 # Source tutorial run functions
 . $WM_PROJECT_DIR/bin/tools/RunFunctions
 
-rm -rf constant/polyMesh/sets
-
 runApplication blockMesh
 runApplication setSet -batch makeCellSets.setSet
-
-rm -f constant/polyMesh/sets/*_old
-
-runApplication setsToZones -noFlipMap
 runApplication splitMeshRegions -cellZones -overwrite
 
 # remove fluid fields from solid regions (important for post-processing)
 for i in heater leftSolid rightSolid
 do
-   rm -f 0*/$i/{mut,alphat,epsilon,k,p,p,U}
+   rm -f 0*/$i/{mut,alphat,epsilon,k,p,U}
 done
 
-# remove solid fields from fluid regions (important for post-processing)
-for i in bottomAir topAir
-do
-   rm -f 0*/$i/{cp,K,rho}
-done
+## remove solid fields from fluid regions (important for post-processing)
+#for i in bottomAir topAir
+#do
+#   rm -f 0*/$i/{cp,K,rho}
+#done
 
 for i in bottomAir topAir heater leftSolid rightSolid
 do
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/RASProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/RASProperties
index 0d135f28e9f77d83787cf6240d8ebc961aa3be47..2e7d3413fc149e0ab287f79da33b11fd8d6e24a0 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/RASProperties
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/RASProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/thermophysicalProperties
index c2d48ee2b07a5e07c946f1f9b253e0f5da364b75..fcb0e7a6a93592cc8e413c7b8a99834c1c90f686 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/thermophysicalProperties
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/thermophysicalProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/turbulenceProperties
index 9edb2bbd94bab3c47940647b1052ed861e056d6a..a8317a372fc1afdfbb4f657f5bf11948a7314e48 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/turbulenceProperties
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/bottomAir/turbulenceProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/heater/solidThermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/heater/solidThermophysicalProperties
new file mode 100644
index 0000000000000000000000000000000000000000..c27f08c9f16e4ab325456ceee37ca55ece67442e
--- /dev/null
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/heater/solidThermophysicalProperties
@@ -0,0 +1,76 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    object      solidThermophysicalProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+thermoType constSolidThermo;
+//thermoType interpolatedSolidThermo;
+//thermoType directionalSolidThermo;
+
+constSolidThermoCoeffs
+{
+    //- constant properties
+
+    rho rho [1 -3  0  0 0 0 0] 8000;
+    cp  cp  [0  2 -2 -1 0 0 0] 450;
+    K   K   [1  1 -3 -1 0 0 0] 80;
+
+    // N/A
+    Hf  Hf  [0  2 -2  0 0 0 0] 1;
+    emissivity  emissivity  [0 0 0 0 0 0 0] 1;
+}
+
+
+interpolatedSolidThermoCoeffs
+{
+    //- interpolated properties
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+    KValues             (80 40);
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+
+directionalSolidThermoCoeffs
+{
+    //- does interpolation and directional K in coordinate system.
+    //  Specify multiple values, one for each temperature. Properties are
+    //  interpolated according to the local temperature.
+
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+
+    KValues             ((40 40 40) (40 40 40));
+    
+    coordinateSystem
+    {
+        origin  (-0.000062 0.000019 0.000039);
+        coordinateRotation
+        {
+            type    axes;
+            e1      (1 0 0);
+            e3      (-3.1807824E-6 -0.99813473 0.0610505);
+        }
+    }
+
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/leftSolid/solidThermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/leftSolid/solidThermophysicalProperties
new file mode 100644
index 0000000000000000000000000000000000000000..c27f08c9f16e4ab325456ceee37ca55ece67442e
--- /dev/null
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/leftSolid/solidThermophysicalProperties
@@ -0,0 +1,76 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    object      solidThermophysicalProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+thermoType constSolidThermo;
+//thermoType interpolatedSolidThermo;
+//thermoType directionalSolidThermo;
+
+constSolidThermoCoeffs
+{
+    //- constant properties
+
+    rho rho [1 -3  0  0 0 0 0] 8000;
+    cp  cp  [0  2 -2 -1 0 0 0] 450;
+    K   K   [1  1 -3 -1 0 0 0] 80;
+
+    // N/A
+    Hf  Hf  [0  2 -2  0 0 0 0] 1;
+    emissivity  emissivity  [0 0 0 0 0 0 0] 1;
+}
+
+
+interpolatedSolidThermoCoeffs
+{
+    //- interpolated properties
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+    KValues             (80 40);
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+
+directionalSolidThermoCoeffs
+{
+    //- does interpolation and directional K in coordinate system.
+    //  Specify multiple values, one for each temperature. Properties are
+    //  interpolated according to the local temperature.
+
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+
+    KValues             ((40 40 40) (40 40 40));
+    
+    coordinateSystem
+    {
+        origin  (-0.000062 0.000019 0.000039);
+        coordinateRotation
+        {
+            type    axes;
+            e1      (1 0 0);
+            e3      (-3.1807824E-6 -0.99813473 0.0610505);
+        }
+    }
+
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/polyMesh/blockMeshDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/polyMesh/blockMeshDict
index 06d8984cac79bcf4f38f35fa074db015f33fe978..51e6fe0e74daae29c929ccd40188c0a86c808773 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/polyMesh/blockMeshDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/polyMesh/boundary b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/polyMesh/boundary
index 0ffd003789c61e810c4b3412af58b04fe0f01bba..73459cea0720d03956f9bd6cfb7f59f4d60a5d64 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/polyMesh/boundary
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/polyMesh/boundary
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6.x                                 |
+|  \\    /   O peration     | Version:  dev                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/rightSolid/solidThermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/rightSolid/solidThermophysicalProperties
new file mode 100644
index 0000000000000000000000000000000000000000..c27f08c9f16e4ab325456ceee37ca55ece67442e
--- /dev/null
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/rightSolid/solidThermophysicalProperties
@@ -0,0 +1,76 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+    version     2.0;
+    format      ascii;
+    class       dictionary;
+    object      solidThermophysicalProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+thermoType constSolidThermo;
+//thermoType interpolatedSolidThermo;
+//thermoType directionalSolidThermo;
+
+constSolidThermoCoeffs
+{
+    //- constant properties
+
+    rho rho [1 -3  0  0 0 0 0] 8000;
+    cp  cp  [0  2 -2 -1 0 0 0] 450;
+    K   K   [1  1 -3 -1 0 0 0] 80;
+
+    // N/A
+    Hf  Hf  [0  2 -2  0 0 0 0] 1;
+    emissivity  emissivity  [0 0 0 0 0 0 0] 1;
+}
+
+
+interpolatedSolidThermoCoeffs
+{
+    //- interpolated properties
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+    KValues             (80 40);
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+
+directionalSolidThermoCoeffs
+{
+    //- does interpolation and directional K in coordinate system.
+    //  Specify multiple values, one for each temperature. Properties are
+    //  interpolated according to the local temperature.
+
+
+    TValues             (100 1000);
+    rhoValues           (1700 1700);
+    cpValues            (1700 1700);
+
+    KValues             ((40 40 40) (40 40 40));
+    
+    coordinateSystem
+    {
+        origin  (-0.000062 0.000019 0.000039);
+        coordinateRotation
+        {
+            type    axes;
+            e1      (1 0 0);
+            e3      (-3.1807824E-6 -0.99813473 0.0610505);
+        }
+    }
+
+    HfValues            (1 1);
+    emissivityValues    (1 1);
+}
+
+// ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/RASProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/RASProperties
index 29aa27e2378121b1620e293c24e384922b046665..09a9a55851d05da7dc6c64a6e800b9f5d0fe7a0e 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/RASProperties
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/RASProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  dev                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/thermophysicalProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/thermophysicalProperties
index af8ff6f5eb4a073a1d890d8c385db0a1cd3fdedb..ae93c0c12f8dd59a0c0182c80fc6f8152fe9b049 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/thermophysicalProperties
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/thermophysicalProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  dev                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/turbulenceProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/turbulenceProperties
index e009ce86dad347dba559dac50a0c90718781edcb..e63bbc50815e89dfc7ef93352a3228a18620220d 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/turbulenceProperties
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/topAir/turbulenceProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  dev                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/makeCellSets.setSet b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/makeCellSets.setSet
index 84c52f85b36fd8d8f90b07b24898b7b8857add26..7e0c2bd5227ae42537bc60e7e21977eec679862a 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/makeCellSets.setSet
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/makeCellSets.setSet
@@ -1,11 +1,16 @@
 cellSet heater new boxToCell (-0.01    0 -100 )(0.01 0.01 100)
 cellSet heater add boxToCell (-0.01 -100 -0.01)(0.01 0.01 0.01)
+cellZoneSet heater new setToCellZone heater
 cellSet leftSolid new boxToCell (-100 0 -100 )(-0.01 0.01 100)
+cellZoneSet leftSolid new setToCellZone leftSolid
 cellSet rightSolid new boxToCell (0.01 0 -100 )(100 0.01 100)
+cellZoneSet rightSolid new setToCellZone rightSolid
 cellSet topAir new boxToCell (-100 0.01 -100 )(100 100 100)
+cellZoneSet topAir new setToCellZone topAir
 cellSet bottomAir clear
 cellSet bottomAir add cellToCell heater
 cellSet bottomAir add cellToCell leftSolid
 cellSet bottomAir add cellToCell rightSolid
 cellSet bottomAir add cellToCell topAir
 cellSet bottomAir invert
+cellZoneSet bottomAir new setToCellZone bottomAir
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/bottomAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/bottomAir/changeDictionaryDict
index b9a8773586c82ac5d800e20139fde5154662b03a..d3fa852bd9b1551b755956930f2512f5f9edf34e 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/bottomAir/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/bottomAir/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -55,9 +55,10 @@ dictionaryReplacement
 
             "bottomAir_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               basicThermo;
+                KName           none;
                 value           uniform 300;
             }
         }
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/bottomAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/bottomAir/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/bottomAir/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/bottomAir/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/controlDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/controlDict
index 9c7f38afcf09f843147423e7e6c97ba6faa3230b..6d3568bdf457d65de576ab1398be545691d93dd1 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/controlDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/controlDict
@@ -15,7 +15,9 @@ FoamFile
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-application     chtMultiRegionSimpleFoam;
+libs            ("libcompressibleTurbulenceModel.so" "libcompressibleRASModels.so");
+
+application     chtMultiRegionFoam;
 
 startFrom       startTime;
 
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/fvSchemes
index 7662a20c90a6cd9bdfe1b69c7ce6a893baee27e0..e46addeb9a1a305f7e78ea125894a096b3a8e7b8 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                  |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/fvSolution
index ddc551d45ed6a34fe4a48fc2dd7b9d6b7b6d0395..064b9b08f6552253ba4192c241af3edf45bb5db3 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/changeDictionaryDict
index b2b1284ef3acd8b67e074a7fb7f6564cfa231b13..ac0d8cdbd413c6ed53c52da3fa96d72064f8b7be 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -45,9 +45,10 @@ dictionaryReplacement
             }
             "heater_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               solidThermo;
+                KName           none;
                 value           uniform 300;
             }
             minY
@@ -58,47 +59,6 @@ dictionaryReplacement
         }
     }
 
-    rho
-    {
-        internalField   uniform 8000;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            calculated;
-                value           uniform 8000;
-            }
-        }
-    }
-
-    K
-    {
-        internalField   uniform 80;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 80;
-            }
-        }
-    }
-
-    cp
-    {
-        internalField   uniform 450;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 450;
-            }
-        }
-    }
 }
 
 // ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/fvSchemes
index aadaf61f87dfe02d79d38dc07030e8742940d1f4..c2eadba0fb42f1e8e589c21f446c76927be779fe 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/fvSolution
index 5cf50f1f1e80285001192a673d37b7eba3d02e22..e4c42fc4202511f216778ce5796a7b3541eba433 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/heater/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict
index 05d3011024a3585fd845a854e340007df876be93..b3453c48f5cab4d7bed22941a8b328e802bfc255 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/leftSolid/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -41,55 +41,14 @@ dictionaryReplacement
             }
             "leftSolid_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               solidThermo;
+                KName           none;
                 value           uniform 300;
             }
         }
     }
-
-    rho
-    {
-        internalField   uniform 8000;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            calculated;
-                value           uniform 8000;
-            }
-        }
-    }
-
-    K
-    {
-        internalField   uniform 80;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 80;
-            }
-        }
-    }
-
-    cp
-    {
-        internalField   uniform 450;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 450;
-            }
-        }
-    }
 }
 
 // ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/leftSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/leftSolid/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/leftSolid/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/leftSolid/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict
index 7e1adc24b3cbe56cb8ee32acec7530b08a38633f..f6822937d8e34c5584d90420027b5cb5be1824d5 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/rightSolid/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -41,55 +41,14 @@ dictionaryReplacement
             }
             "rightSolid_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               solidThermo;
+                KName           none;
                 value           uniform 300;
             }
         }
     }
-
-    rho
-    {
-        internalField   uniform 8000;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            calculated;
-                value           uniform 8000;
-            }
-        }
-    }
-
-    K
-    {
-        internalField   uniform 80;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 80;
-            }
-        }
-    }
-
-    cp
-    {
-        internalField   uniform 450;
-
-        boundaryField
-        {
-            ".*"
-            {
-                type            zeroGradient;
-                value           uniform 450;
-            }
-        }
-    }
 }
 
 // ************************************************************************* //
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/rightSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/rightSolid/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/rightSolid/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/rightSolid/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/changeDictionaryDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/changeDictionaryDict
index 5c811e67833c750a30b249275b25a1037164898c..3d573494065ba238ae0e63ea76b0712a64178d12 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/changeDictionaryDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/changeDictionaryDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -66,9 +66,10 @@ dictionaryReplacement
 
             "topAir_to_.*"
             {
-                type            compressible::turbulentTemperatureCoupledBaffle;
+                type            compressible::turbulentTemperatureCoupledBaffleMixed;
                 neighbourFieldName T;
-                K               K;
+                K               basicThermo;
+                KName           none;
                 value           uniform 300;
             }
         }
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/decomposeParDict
index aad15ee459b6e01cdf6fabba08eb2fa5b8c2a4dd..d8deb33bf49e426cdd8254c5dcc8d22dbe34e6a4 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/decomposeParDict
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/fvSchemes b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/fvSchemes
index fde798231995881b8bd8b5add82b3f989c0e8d04..a6dff430789ae889f7e1ab9def1037a5d0ad7310 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/fvSchemes
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/fvSolution b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/fvSolution
index e620dcb6521dcf5731286f837d1ae4a573955872..65446b252a127f3f377f411a5bf3f715f4fb8fd6 100644
--- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/fvSolution
+++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/topAir/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/icoFoam/cavity/constant/polyMesh/blockMeshDict b/tutorials/icoFoam/cavity/constant/polyMesh/blockMeshDict
index 8cd967d0a920980d81bab51aba197dadb0e5e4cc..7e7c4a0e50022fa6f181a926e54b5e08bdcc9475 100644
--- a/tutorials/icoFoam/cavity/constant/polyMesh/blockMeshDict
+++ b/tutorials/icoFoam/cavity/constant/polyMesh/blockMeshDict
@@ -1,8 +1,8 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.5                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
@@ -16,7 +16,7 @@ FoamFile
 
 convertToMeters 0.1;
 
-vertices        
+vertices
 (
     (0 0 0)
     (1 0 0)
@@ -28,35 +28,35 @@ vertices
     (0 1 0.1)
 );
 
-blocks          
+blocks
 (
     hex (0 1 2 3 4 5 6 7) (20 20 1) simpleGrading (1 1 1)
 );
 
-edges           
+edges
 (
 );
 
-//patches         
+//patches
 //(
-//    wall movingWall 
+//    wall movingWall
 //    (
 //        (3 7 6 2)
 //    )
-//    wall fixedWalls 
+//    wall fixedWalls
 //    (
 //        (0 4 7 3)
 //        (2 6 5 1)
 //        (1 5 4 0)
 //    )
-//    empty frontAndBack 
+//    empty frontAndBack
 //    (
 //        (0 3 2 1)
 //        (4 5 6 7)
 //    )
 //);
 
-boundary         
+boundary
 (
     movingWall
     {
@@ -78,7 +78,7 @@ boundary
         );
     }
 
-    frontAndBack 
+    frontAndBack
     {
         type empty;
         faces
@@ -90,7 +90,7 @@ boundary
 );
 
 
-mergePatchPairs 
+mergePatchPairs
 (
 );
 
diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/0/U b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/0/U
index ee6588db42363bdd3e5bb01d5ffbe353e241ba0a..7576a5dc544ea31314c3763429ed75bff2628bcd 100644
--- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/0/U
+++ b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/0/p b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/0/p
index f5153f11ad84352b8290acf2e28a0c94269f5a4e..211f49a0c10fd5aaa58526225e6fb073c6b88cd0 100644
--- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/0/p
+++ b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/MRFZones b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/MRFZones
index e995f6f4484b66e516dd350e303d08af441f0698..8ace7c09a3793552e667b1ebe8d4fe73ffcaaf67 100644
--- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/MRFZones
+++ b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/MRFZones
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict
index 552afa40de33acd0f931aaace5feb215741d4fbf..7081624ee2501a94f545fdb1d0d51e5182744959 100644
--- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4 b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
index 5175a4176531b0622e2fdc2862edce8f7fbf7115..1b90bac98f8d484b5e7b57a337e215036c0f8f39 100644
--- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/R b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/R
index 4c521594c6711856b11639ea6ec40772c60731f1..b33acb446549352bcb70e86398a5bbd07f1aaac3 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/R
+++ b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/R
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/U b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/U
index c9e313803e47db09d64aba5279d1322b0be93b3e..784fbb9baa37e3a795e50348f861d51fb576db32 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/U
+++ b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/U
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/epsilon b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/epsilon
index 52126ce75462a71b644cfec5e8f8ea033d16ac58..8fb76ffd9a01f1661df0d31b620b8d0eebc380d1 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/epsilon
+++ b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/epsilon
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/k b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/k
index c0be82cd30a7929e2c1b0e1f5f7878b712aae3b5..6a96cf0b24065021391804a2d90f75aa6fcc379c 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/k
+++ b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/k
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/nuTilda b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/nuTilda
index a9534f20fbf342e18599551d8ebe3cd6839529ef..5c1b09dbe5259881199cc252431dfd7e96108315 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/nuTilda
+++ b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/0/nuTilda
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/constant/polyMesh/blockMeshDict b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/constant/polyMesh/blockMeshDict
index 4bb886708ff62152e851f01ef89241fe633cf6b2..0d38ae153c03cec85ed99e8d049f53f47a729603 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/boundaryFoam/boundaryLaunderSharma/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/R b/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/R
index 1c5c522387400f39c6533b8ac235ee6e9c51649d..55889c67c0044a4d296d5f5d1be5d1405e3fa5c6 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/R
+++ b/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/R
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/U b/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/U
index cc15bf6bfee1281e568002f55bc2e3bb1cf05d7d..97071ba36c9899e352f98089e9f37f25eac03eec 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/U
+++ b/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/U
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/nuTilda b/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/nuTilda
index 1a0a5c1a46e2c9b6a7698fbd797268bf04e0629b..f1e8e44413ec1a027c446064815726e9c67de05f 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/nuTilda
+++ b/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/0/nuTilda
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/constant/polyMesh/blockMeshDict b/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/constant/polyMesh/blockMeshDict
index e74a803e10b1bb1e3da0e929a560916f8d65ff9e..072525042145f1be144180ef323395d544a95857 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/system/fvSolution b/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/system/fvSolution
index a165f8313b928e5ee395e74d2b97fe3a1638782a..a5181189a7903d0e439b2825cc3f85940de67ce1 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/system/fvSolution
+++ b/tutorials/incompressible/boundaryFoam/boundaryWallFunctions/system/fvSolution
@@ -63,7 +63,6 @@ PISO
     nCorrectors     2;
     nNonOrthogonalCorrectors 0;
     momentumPredictor yes;
-    fluxGradp       no;
 }
 
 relaxationFactors
diff --git a/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/0/U b/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/0/U
index 24fd818213520a39aabfb177004d11ae6cadb8b4..066ca8c6c83fde2ccafed6fb4c6f54936f179fed 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/0/U
+++ b/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/0/U
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/0/nuTilda b/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/0/nuTilda
index 1a0a5c1a46e2c9b6a7698fbd797268bf04e0629b..f1e8e44413ec1a027c446064815726e9c67de05f 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/0/nuTilda
+++ b/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/0/nuTilda
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/constant/polyMesh/blockMeshDict b/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/constant/polyMesh/blockMeshDict
index e74a803e10b1bb1e3da0e929a560916f8d65ff9e..072525042145f1be144180ef323395d544a95857 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/system/fvSolution b/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/system/fvSolution
index 0f80d7dab7c3e9aa90d86ef5bdbc21333fd24bfe..cc4a943f944d22759d4d24eaa8cd285c4a436108 100644
--- a/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/system/fvSolution
+++ b/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/system/fvSolution
@@ -71,7 +71,6 @@ PISO
     nCorrectors     2;
     nNonOrthogonalCorrectors 0;
     momentumPredictor yes;
-    fluxGradp       no;
 }
 
 relaxationFactors
diff --git a/tutorials/incompressible/channelFoam/channel395/0.org/B b/tutorials/incompressible/channelFoam/channel395/0.org/B
index afb27554914d6201e4d48f2f5cc4e46765f42311..bf5b13f452154c767a1638281da1766f1bd64d22 100644
--- a/tutorials/incompressible/channelFoam/channel395/0.org/B
+++ b/tutorials/incompressible/channelFoam/channel395/0.org/B
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/channelFoam/channel395/0.org/U b/tutorials/incompressible/channelFoam/channel395/0.org/U
index 77aea5e8f061ddf491b308af126d7ad31e05cec3..e213cd42ef2bd7aefbcb6effcc6316421e926233 100644
--- a/tutorials/incompressible/channelFoam/channel395/0.org/U
+++ b/tutorials/incompressible/channelFoam/channel395/0.org/U
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/channelFoam/channel395/0.org/k b/tutorials/incompressible/channelFoam/channel395/0.org/k
index c2e41f797b29a0f4aaecfeb4e9b9adf0db13bc29..e462a91de5a879d506602336499772d200ab69b6 100644
--- a/tutorials/incompressible/channelFoam/channel395/0.org/k
+++ b/tutorials/incompressible/channelFoam/channel395/0.org/k
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/channelFoam/channel395/0.org/nuSgs b/tutorials/incompressible/channelFoam/channel395/0.org/nuSgs
index 0779277fe261e66618f54f61410bce9eaa42564d..ced8d700d47d8e16fffe944a8ec01de4cf4ccdef 100644
--- a/tutorials/incompressible/channelFoam/channel395/0.org/nuSgs
+++ b/tutorials/incompressible/channelFoam/channel395/0.org/nuSgs
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/channelFoam/channel395/0.org/nuTilda b/tutorials/incompressible/channelFoam/channel395/0.org/nuTilda
index af18403bb51ddce2dc18a68d0f5c1bad8fca4687..119fd37657c3a0b1ad433e307102957e113c1069 100644
--- a/tutorials/incompressible/channelFoam/channel395/0.org/nuTilda
+++ b/tutorials/incompressible/channelFoam/channel395/0.org/nuTilda
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/channelFoam/channel395/0.org/p b/tutorials/incompressible/channelFoam/channel395/0.org/p
index 4c9f41f7f4218718bf315459596c7355cfb27ac4..6b3ab6d990c4ee708c710ad2c0e320e9099cf092 100644
--- a/tutorials/incompressible/channelFoam/channel395/0.org/p
+++ b/tutorials/incompressible/channelFoam/channel395/0.org/p
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/channelFoam/channel395/constant/polyMesh/blockMeshDict b/tutorials/incompressible/channelFoam/channel395/constant/polyMesh/blockMeshDict
index 57e0203eca9f9125040252d07abf0b20257ce6d1..af950b6ec416fd8d302341cdfd8006e07438a9b4 100644
--- a/tutorials/incompressible/channelFoam/channel395/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/channelFoam/channel395/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/cavity/0/U b/tutorials/incompressible/icoFoam/cavity/0/U
index 86a9f78b7a2fb7970b468b36a8c612125eaa710b..efc5a91fe3de8827419d52f294ac596107702a5c 100644
--- a/tutorials/incompressible/icoFoam/cavity/0/U
+++ b/tutorials/incompressible/icoFoam/cavity/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/cavity/0/p b/tutorials/incompressible/icoFoam/cavity/0/p
index 14768e8f18da60ebfeb8b396d7a99922bae05f31..8898350acf153cd88ca3d199da2c1dfa7ca56163 100644
--- a/tutorials/incompressible/icoFoam/cavity/0/p
+++ b/tutorials/incompressible/icoFoam/cavity/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/cavity/constant/polyMesh/blockMeshDict b/tutorials/incompressible/icoFoam/cavity/constant/polyMesh/blockMeshDict
index eda42b9602456c3983b45958ab0f047bfa3d4cd2..fb778ba61c95b4e09ce771810010dccc9d44798a 100644
--- a/tutorials/incompressible/icoFoam/cavity/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/icoFoam/cavity/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/cavityClipped/0/U b/tutorials/incompressible/icoFoam/cavityClipped/0/U
index 3d32047c87be3f87c659fe2721735c2eb4df465d..e4d9db421be5994de4319e8301bb700da9ae4619 100644
--- a/tutorials/incompressible/icoFoam/cavityClipped/0/U
+++ b/tutorials/incompressible/icoFoam/cavityClipped/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/cavityClipped/0/p b/tutorials/incompressible/icoFoam/cavityClipped/0/p
index da7b082e71f252dae83ae983170418a8aede3f40..1b1a9084085076679c27ad01b7a218425a0b0e1c 100644
--- a/tutorials/incompressible/icoFoam/cavityClipped/0/p
+++ b/tutorials/incompressible/icoFoam/cavityClipped/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/cavityClipped/constant/polyMesh/blockMeshDict b/tutorials/incompressible/icoFoam/cavityClipped/constant/polyMesh/blockMeshDict
index 414dc7787fdbf8a770c7fea0cdbe75aa7782788e..87489029c2cc411be24f83b9c64ba6866d49bdd8 100644
--- a/tutorials/incompressible/icoFoam/cavityClipped/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/icoFoam/cavityClipped/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/cavityGrade/0/U b/tutorials/incompressible/icoFoam/cavityGrade/0/U
index b29cc1d70d3bc470fb8a9ae85b69109aa9f95a54..8baa56780bfa8ccb82ef25477f364b368cb4e342 100644
--- a/tutorials/incompressible/icoFoam/cavityGrade/0/U
+++ b/tutorials/incompressible/icoFoam/cavityGrade/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/cavityGrade/0/p b/tutorials/incompressible/icoFoam/cavityGrade/0/p
index 5765e5aa1b6b5e748a7906f7715990a528c7201d..c19bffc19f4b58c2ab3d3f7daeb70f8183476078 100644
--- a/tutorials/incompressible/icoFoam/cavityGrade/0/p
+++ b/tutorials/incompressible/icoFoam/cavityGrade/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/cavityGrade/constant/polyMesh/blockMeshDict b/tutorials/incompressible/icoFoam/cavityGrade/constant/polyMesh/blockMeshDict
index 329e58a71a9f79f2270334504b5554e0b3199430..93b10a09991d466d7c76cdf702bedde450edb770 100644
--- a/tutorials/incompressible/icoFoam/cavityGrade/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/icoFoam/cavityGrade/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/elbow/0/U b/tutorials/incompressible/icoFoam/elbow/0/U
index 68169029dfde566de687cfa91583d0b4925bc53e..666b59a28e71577a844258cc03c5cbd4d81f2a1e 100644
--- a/tutorials/incompressible/icoFoam/elbow/0/U
+++ b/tutorials/incompressible/icoFoam/elbow/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/elbow/0/p b/tutorials/incompressible/icoFoam/elbow/0/p
index eb2b62827260a63bb9892b725e679713f5631834..6791ebf14d8378b3acce3bfb4e37135d74ce4faf 100644
--- a/tutorials/incompressible/icoFoam/elbow/0/p
+++ b/tutorials/incompressible/icoFoam/elbow/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/icoFoam/elbow/constant/polyMesh/boundary.org b/tutorials/incompressible/icoFoam/elbow/constant/polyMesh/boundary.org
index 7b89e8a1fc57b042017181be69c4bf8d88ca6f12..dfac095efddbbcc4ee34ea67ec33ce5814415be6 100644
--- a/tutorials/incompressible/icoFoam/elbow/constant/polyMesh/boundary.org
+++ b/tutorials/incompressible/icoFoam/elbow/constant/polyMesh/boundary.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/0/U b/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/0/U
index 056feccbd42edcb1225a578bf4e3723db529e567..ab6eba0f78ae748b614a6c35624c7c6e045629e6 100644
--- a/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/0/U
+++ b/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/0/p b/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/0/p
index 0b4f34f6a85e05aa9aa1bbc975c827dcd83ab9e1..6367b89e05a7c0ddb77cbea5239a386a86d73f53 100644
--- a/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/0/p
+++ b/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/constant/polyMesh/blockMeshDict b/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/constant/polyMesh/blockMeshDict
index 8d28ff87d41c43aa38cef31f9023ef2969c45f44..1171971216cb027be19d0fae80c1263a7c8506a2 100644
--- a/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/nonNewtonianIcoFoam/offsetCylinder/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/U b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/U
index ed08e0cd93daa8782f6bda1a9f1bd6d3b900c748..882677871a930faf72954c330d0069eb2c6e6f4a 100644
--- a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/U
+++ b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p
index 711b6e2865871222933241b61aeed112c5dbc6f6..fae0e625b5a32e699c0f71a190a210260d00563a 100644
--- a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p
+++ b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/pointMotionUx b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/pointMotionUx
index e0a68b5aff1f4d4d3c3ccd6ed8238c2e8e4b339c..7fd57360dba1f47d0bf4019efc1e7669dd8ada4d 100644
--- a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/pointMotionUx
+++ b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/pointMotionUx
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/movingCone/constant/polyMesh/blockMeshDict b/tutorials/incompressible/pimpleDyMFoam/movingCone/constant/polyMesh/blockMeshDict
index c738ec6d98bcd0c6fd67185dc24aba7a7a07bf14..3fab7c27e5967597a3aaab627aa8f5c81eb9fa93 100644
--- a/tutorials/incompressible/pimpleDyMFoam/movingCone/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/pimpleDyMFoam/movingCone/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/U b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/U
index 345f30007b004214f5e2d9dbe032e1e5313412b4..adc41fd7a512d3890e8c86269b57718b831ea0f2 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/U
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/fixedInlet b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/fixedInlet
index ccf1d6e897baf617a75af14cdf49e136cb168f4d..a4c24f48f96ab58eead96fba96a7323f4e3b86dd 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/fixedInlet
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/fixedInlet
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/frontBackTopBottomPatches b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/frontBackTopBottomPatches
index 70336f846e6428ba9578120138cf680fb4fc4b05..dfe4f42bd5ca2218dfc491c497f5b5673413b7f0 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/frontBackTopBottomPatches
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/frontBackTopBottomPatches
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/initialConditions b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/initialConditions
index e0d098096aea7dcb37f78c607bd48210b3860f16..ec8f512b697bd9b4d732bf6935d6a8732597ee86 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/initialConditions
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/include/initialConditions
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/k b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/k
index 8ba642effb82407c85cd573a4003cf5b64fc6c51..67887f27eddeaa2cea7a6a7da2cdbfea674a70ff 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/k
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/omega b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/omega
index 2024b25ef7a61172628ed36c60ce313ccc428081..2c3ae490c42986681a570f9f44faeebcacb5e4ff 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/omega
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/omega
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/p b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/p
index 78a5d1529945bb82c0ce7bd21e0e39bca8196f32..5206b4843929eed1ebb124f7e05d302d488c0388 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/p
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/constant/dynamicMeshDict b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/constant/dynamicMeshDict
index 986a599c5f6fb54ca9ce0f46162ad9217b1e213d..36045963c762af3cdd05e8b7872972b73cc4ba5c 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/constant/dynamicMeshDict
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/constant/dynamicMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/constant/transportProperties b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/constant/transportProperties
index a9d8bf659c481e6b65403d6814dbbf361361b5ba..530e23bba84d289a9a252cdac53672365368c951 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/constant/transportProperties
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/constant/transportProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/fvSchemes b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/fvSchemes
index 2bee15799dbc02b91812c538ff4bb95babbc39d4..286a0e47f0e8c13e1c127fe55d714fa96e920384 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/fvSchemes
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/fvSolution b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/fvSolution
index 038b442397ebdf55f778c1d22f15909c56b38397..c432c600cb52a5faccf56e1ea67acb1f78f98d2d 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/fvSolution
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/U b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/U
index bd35fcfb40cc0394b19a543f3f1607549e463108..c63f88d76a02a75e234db2728364b406bbe95026 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/U
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/fixedInlet b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/fixedInlet
index ccf1d6e897baf617a75af14cdf49e136cb168f4d..a4c24f48f96ab58eead96fba96a7323f4e3b86dd 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/fixedInlet
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/fixedInlet
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/frontBackTopBottomPatches b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/frontBackTopBottomPatches
index 70336f846e6428ba9578120138cf680fb4fc4b05..dfe4f42bd5ca2218dfc491c497f5b5673413b7f0 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/frontBackTopBottomPatches
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/frontBackTopBottomPatches
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/initialConditions b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/initialConditions
index e0d098096aea7dcb37f78c607bd48210b3860f16..ec8f512b697bd9b4d732bf6935d6a8732597ee86 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/initialConditions
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/include/initialConditions
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/k b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/k
index 8ba642effb82407c85cd573a4003cf5b64fc6c51..67887f27eddeaa2cea7a6a7da2cdbfea674a70ff 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/k
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/omega b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/omega
index 2024b25ef7a61172628ed36c60ce313ccc428081..2c3ae490c42986681a570f9f44faeebcacb5e4ff 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/omega
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/omega
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/p b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/p
index 78a5d1529945bb82c0ce7bd21e0e39bca8196f32..5206b4843929eed1ebb124f7e05d302d488c0388 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/p
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/constant/extrudeProperties b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/constant/extrudeProperties
index b66ea24bc474547fcf75f885f2a7d9aa21c68e2f..d49a78d7c139e0ada26dc403f2ddad76c5db1266 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/constant/extrudeProperties
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/constant/extrudeProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/constant/transportProperties b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/constant/transportProperties
index a9d8bf659c481e6b65403d6814dbbf361361b5ba..530e23bba84d289a9a252cdac53672365368c951 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/constant/transportProperties
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/constant/transportProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/createPatchDict b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/createPatchDict
index b75b8e1075f5c2f01de1948ea2acfebffe48f939..71a1a89704b44c4deecdf7ac4123c9b69a222c46 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/createPatchDict
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/createPatchDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/fvSchemes b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/fvSchemes
index 2eb6038d7f1eb31b8cb71726f352f8c9f69a026c..12c4007e1c230ec6bbb05109277c7565e575beec 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/fvSchemes
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/fvSolution b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/fvSolution
index e99098b5b9c395c01a65884467579249c4e1dfa4..4020e040fa003a16b034d5f5d925b3136d121507 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/fvSolution
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_simpleFoam/system/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/constant/polyMesh/blockMeshDict b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/constant/polyMesh/blockMeshDict
index 1a5ba112ca6198044972c6f28b652185a097c227..5c13cba12f7f68d1b8bb8b9b26b955e750c924fd 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/system/snappyHexMeshDict b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/system/snappyHexMeshDict
index 2300d79207167b29935dfe749886a76ea289e261..743813fefcf74f1118569dbe22f903618d754590 100644
--- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/system/snappyHexMeshDict
+++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/system/snappyHexMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/U b/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/U
index 749fb95b703acfd431ea31472304ee3f933afffb..f67e822f254da4bbbde73c74f4f2d8913848ed1c 100644
--- a/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/U
+++ b/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/U
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/nuTilda b/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/nuTilda
index 14f47a7b67a3392dcbe1fe757e2c57fe0d95d8cf..4b9cc50f552d1e29f810202fb05e45cf7202f81d 100644
--- a/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/nuTilda
+++ b/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/nuTilda
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/p b/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/p
index 14a655e690ae7667affb9bec45c8d3529c8ffd48..8d1c49bc66a98ea32dd802957a3a0b5889793a23 100644
--- a/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/p
+++ b/tutorials/incompressible/pimpleFoam/t-junction-with-fan/0/p
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/pimpleFoam/t-junction-with-fan/constant/polyMesh/blockMeshDict b/tutorials/incompressible/pimpleFoam/t-junction-with-fan/constant/polyMesh/blockMeshDict
index 288339e21a740249143ec22e4ec387ca8ba50e3b..f9e5926b41f6a73020a94cf7464a43eae64d9054 100644
--- a/tutorials/incompressible/pimpleFoam/t-junction-with-fan/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/pimpleFoam/t-junction-with-fan/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleFoam/t-junction/0/U b/tutorials/incompressible/pimpleFoam/t-junction/0/U
index 937d3966b255a95cf121b0233e6c1ad9cfe79759..d4b36a17322f024d033454aee25aad597c5642b1 100644
--- a/tutorials/incompressible/pimpleFoam/t-junction/0/U
+++ b/tutorials/incompressible/pimpleFoam/t-junction/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleFoam/t-junction/0/nuTilda b/tutorials/incompressible/pimpleFoam/t-junction/0/nuTilda
index fe8744b3989e69e694abd968d917fcb1fb9afc32..d97e548826e1671a9a990f8b78ad4308c2406d2a 100644
--- a/tutorials/incompressible/pimpleFoam/t-junction/0/nuTilda
+++ b/tutorials/incompressible/pimpleFoam/t-junction/0/nuTilda
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleFoam/t-junction/0/p b/tutorials/incompressible/pimpleFoam/t-junction/0/p
index 93170d7a0cba0489f226d72d14e996c0755156c4..2e95ffcae30ee367405fa2b9b67879f84ae69a87 100644
--- a/tutorials/incompressible/pimpleFoam/t-junction/0/p
+++ b/tutorials/incompressible/pimpleFoam/t-junction/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pimpleFoam/t-junction/constant/polyMesh/blockMeshDict b/tutorials/incompressible/pimpleFoam/t-junction/constant/polyMesh/blockMeshDict
index 7f78827df0ae075da9cafda0600ea1a3ddc2811e..0646f8c8a567256274470a08472ad76dbc726d24 100644
--- a/tutorials/incompressible/pimpleFoam/t-junction/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/pimpleFoam/t-junction/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/B b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/B
index 94cbead26d3a54c0a6fbbe76dadeb2e097b7a8b5..7247fcdbef32943109bfb5f8262b549ac649b6a3 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/B
+++ b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/B
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/U b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/U
index 7ed39fbf24c92296b4d8f9ac6cbebef883de893c..86af6cb642c11fb794f969d2bd44d6e41a3f081d 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/U
+++ b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/k b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/k
index 7f07f9dd1c3fc678f88ab2333a677e8cfeb2bc82..8b7e616bd1c0dc641081a4538d8aec8d38ca76a9 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/k
+++ b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/nuSgs b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/nuSgs
index 5a94fb1c5039e3772d24c185825ffda65195b319..8443f1a57b299cdeb5322acc375591a9de28f1ae 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/nuSgs
+++ b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/nuSgs
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/nuTilda b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/nuTilda
index e35b20fd644748441b53e543afd87b6aa77e8840..b38fd323fd2766d71d760779babe0c01adb7611e 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/nuTilda
+++ b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/nuTilda
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/p b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/p
index db9c0a3a745a0730223b607369c30f015490eff3..f8b316739644c871fcd66559e980f091414e48b2 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDaily/0/p
+++ b/tutorials/incompressible/pisoFoam/les/pitzDaily/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDaily/constant/polyMesh/blockMeshDict b/tutorials/incompressible/pisoFoam/les/pitzDaily/constant/polyMesh/blockMeshDict
index 89852b13afd14dcd4d02930bbc4362e086316919..964452a9e6c8c207134f154bdf0a5fdb7164b919 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDaily/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/pisoFoam/les/pitzDaily/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/B b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/B
index b4b6cda3e1b634fb0521b3ca386565a2c69feae6..82b9ce7ca26d6febdf8024b037f41897502f30d7 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/B
+++ b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/B
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/U b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/U
index 7cce4aecb5722e6560b2697e27ffdc7a8b353305..faa9809d78b72021747a02855e8d7ee818f2a379 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/U
+++ b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/k b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/k
index 898cfe01f2c102b78f3adcb72906fca591531117..bc606e685a3ac75b00a4751b73f1d549873822e9 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/k
+++ b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/nuSgs b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/nuSgs
index 5a94fb1c5039e3772d24c185825ffda65195b319..8443f1a57b299cdeb5322acc375591a9de28f1ae 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/nuSgs
+++ b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/nuSgs
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/nuTilda b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/nuTilda
index 1278c1973779508b5f9363a1f9d3939f58ad75bb..a7c8e902c5471880cc5aad131e73038627e6ae77 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/nuTilda
+++ b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/nuTilda
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/p b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/p
index db9c0a3a745a0730223b607369c30f015490eff3..f8b316739644c871fcd66559e980f091414e48b2 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/p
+++ b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/constant/polyMesh/blockMeshDict b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/constant/polyMesh/blockMeshDict
index 83338d7e0b737be4a21b4d4620bc61dd06ff234c..a1420ab9ae9ae820691f264cd8e6be34e6786d86 100644
--- a/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/pisoFoam/les/pitzDailyDirectMapped/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/ras/cavity/0/R b/tutorials/incompressible/pisoFoam/ras/cavity/0/R
index bba9b5b414e19bef2567a27f90d5c247f12803db..bdf8398e635c878fb21f99cc5ca35b0cad0243b6 100644
--- a/tutorials/incompressible/pisoFoam/ras/cavity/0/R
+++ b/tutorials/incompressible/pisoFoam/ras/cavity/0/R
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/ras/cavity/0/U b/tutorials/incompressible/pisoFoam/ras/cavity/0/U
index 86a9f78b7a2fb7970b468b36a8c612125eaa710b..efc5a91fe3de8827419d52f294ac596107702a5c 100644
--- a/tutorials/incompressible/pisoFoam/ras/cavity/0/U
+++ b/tutorials/incompressible/pisoFoam/ras/cavity/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/ras/cavity/0/nuTilda b/tutorials/incompressible/pisoFoam/ras/cavity/0/nuTilda
index 616a37e30072c361efcd337a57113c321b437273..5762805202dc55f1f8d4045253f097a57585dd23 100644
--- a/tutorials/incompressible/pisoFoam/ras/cavity/0/nuTilda
+++ b/tutorials/incompressible/pisoFoam/ras/cavity/0/nuTilda
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/ras/cavity/0/p b/tutorials/incompressible/pisoFoam/ras/cavity/0/p
index 14768e8f18da60ebfeb8b396d7a99922bae05f31..8898350acf153cd88ca3d199da2c1dfa7ca56163 100644
--- a/tutorials/incompressible/pisoFoam/ras/cavity/0/p
+++ b/tutorials/incompressible/pisoFoam/ras/cavity/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/pisoFoam/ras/cavity/constant/polyMesh/blockMeshDict b/tutorials/incompressible/pisoFoam/ras/cavity/constant/polyMesh/blockMeshDict
index 52c065ae83dcc5367fb3a226cca1606b05d51435..5fb6428c770ade908072bca57b7bca255d31d8ff 100644
--- a/tutorials/incompressible/pisoFoam/ras/cavity/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/pisoFoam/ras/cavity/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/T b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/T
index e1df94398773b013813d4f9f37769c8587889a1c..4600a6cc79ac54e263926ceb1506bd57ed158b2d 100644
--- a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/T
+++ b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/U b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/U
index 88f509425865e94093e76cca468b5839e437ab77..0b3a166e5b3849bd3c69dc41444b2b9c3d08af3a 100644
--- a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/U
+++ b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/p b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/p
index 4794b84b189f7020d3f1bc09e5d43bbf914d7b45..92af2a10280e99e3089c23597718d09ea1480bd5 100644
--- a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/p
+++ b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict
index 0438819b2509cf399923c3a2ce92ea0999735aea..5863a04e716efd2404a54afd54635946689ab1c9 100644
--- a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4 b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4
index 6d6d0669392b2396160799c4747d2e9f6c2c54d2..1eabb3e673c02b1156cf21d58af2035e8254b3f8 100644
--- a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/porousZones b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/porousZones
index 634799837eaf7009528df07d027deafc7c6cc1f4..e081bbf9e388af3d134a2214050aa8b20e8fb2ee 100644
--- a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/porousZones
+++ b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/porousZones
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/transportProperties b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/transportProperties
index 7f3bedaae59eebf8d32dd99ac2f9c8ff8adf77a6..0fa6827f06e9f1fc13891102f41dc793ad301399 100644
--- a/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/transportProperties
+++ b/tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/constant/transportProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/shallowWaterFoam/squareBump/system/controlDict b/tutorials/incompressible/shallowWaterFoam/squareBump/system/controlDict
index 5de491639a1005089042ebe5faa2452765d627d1..feb97fc3d2682749e50c80c64f95fdc5c8e3e42d 100644
--- a/tutorials/incompressible/shallowWaterFoam/squareBump/system/controlDict
+++ b/tutorials/incompressible/shallowWaterFoam/squareBump/system/controlDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/shallowWaterFoam/squareBump/system/fvSchemes b/tutorials/incompressible/shallowWaterFoam/squareBump/system/fvSchemes
index 155410c1be9cbcbebb3e87f78a085c08d43f3ba5..663af1f5ec9fdc16ff3d9a0c935d2e2a6f108f5c 100644
--- a/tutorials/incompressible/shallowWaterFoam/squareBump/system/fvSchemes
+++ b/tutorials/incompressible/shallowWaterFoam/squareBump/system/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/shallowWaterFoam/squareBump/system/fvSolution b/tutorials/incompressible/shallowWaterFoam/squareBump/system/fvSolution
index 18870c0af00f0cc629c3a87ae4abb538ad45dd8a..d1d3fa39706adf6c3e5d820891ca7d4203bb2918 100644
--- a/tutorials/incompressible/shallowWaterFoam/squareBump/system/fvSolution
+++ b/tutorials/incompressible/shallowWaterFoam/squareBump/system/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/shallowWaterFoam/squareBump/system/setFieldsDict b/tutorials/incompressible/shallowWaterFoam/squareBump/system/setFieldsDict
index b79b2a11e816e4856c172e05d51e3e6106caf6f3..2f6f2c7f4eae8c82658a6f0fff7564447f26628a 100644
--- a/tutorials/incompressible/shallowWaterFoam/squareBump/system/setFieldsDict
+++ b/tutorials/incompressible/shallowWaterFoam/squareBump/system/setFieldsDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/airFoil2D/0/U b/tutorials/incompressible/simpleFoam/airFoil2D/0/U
index 7883f151b935071e853807cd82c13acc57d4bfdf..b91959982914dae1bdea3ae455958dd2dc518aeb 100644
--- a/tutorials/incompressible/simpleFoam/airFoil2D/0/U
+++ b/tutorials/incompressible/simpleFoam/airFoil2D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/airFoil2D/0/nuTilda b/tutorials/incompressible/simpleFoam/airFoil2D/0/nuTilda
index 9f005f2f65ce7623f7e2ca0b414607625aa13b24..952c12eb639138ffd030386f7ccc303728b97319 100644
--- a/tutorials/incompressible/simpleFoam/airFoil2D/0/nuTilda
+++ b/tutorials/incompressible/simpleFoam/airFoil2D/0/nuTilda
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/airFoil2D/0/nut b/tutorials/incompressible/simpleFoam/airFoil2D/0/nut
index 96e4a43d3c268344c07685a2053f46fc40a89598..3e13a3b875e7afac2f9fb23a10dc09a654903266 100644
--- a/tutorials/incompressible/simpleFoam/airFoil2D/0/nut
+++ b/tutorials/incompressible/simpleFoam/airFoil2D/0/nut
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/airFoil2D/0/p b/tutorials/incompressible/simpleFoam/airFoil2D/0/p
index 4c7cbbd80a8481d9ad68b3e9ca9f3140f08758a5..d6194d2707cc5086885baf60889983e6f15fdf4a 100644
--- a/tutorials/incompressible/simpleFoam/airFoil2D/0/p
+++ b/tutorials/incompressible/simpleFoam/airFoil2D/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/boundary b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/boundary
index 5b35737d185908c27d35393fbe003e7f9a09e1f2..6be85586c593c986cd9052cdf155e4869a0e1ad5 100644
--- a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/boundary
+++ b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/boundary
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/cells b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/cells
index 8817844624a47310d755024921a8bdc143fc5665..e184b856b9502ee98a826af9f0ff18d1f4eed846 100644
--- a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/cells
+++ b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/cells
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/faces b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/faces
index 2778803f123d77a899aaa911e778ee65b8a789ea..daad58d3f690ed68743654037cd9e400d8ca5c81 100644
--- a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/faces
+++ b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/faces
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/neighbour b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/neighbour
index cc9ea68b321b56854962bf10d64167c2005cd272..f0086fa788b5c2c98169868e3edb9e4c87dc073c 100644
--- a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/neighbour
+++ b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/neighbour
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/owner b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/owner
index bd4633a67754831c2c292e9bad5a59cd2f49d415..42123de4289cb62f4278baec98ed50e51829a2b0 100644
--- a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/owner
+++ b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/owner
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/points b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/points
index 38310185184a76e3e54c699e76ed7ed00d854af6..1cad198322f53caaa258486d1e7114970e7789c4 100644
--- a/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/points
+++ b/tutorials/incompressible/simpleFoam/airFoil2D/constant/polyMesh/points
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/0/U b/tutorials/incompressible/simpleFoam/motorBike/0/U
index b074474b00dd7123ef33a12c7e8b57c03325b7d7..2ce3a6fff957831a4e7acfc67982544ba8f018a3 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/0/U
+++ b/tutorials/incompressible/simpleFoam/motorBike/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/0/include/fixedInlet b/tutorials/incompressible/simpleFoam/motorBike/0/include/fixedInlet
index ccf1d6e897baf617a75af14cdf49e136cb168f4d..a4c24f48f96ab58eead96fba96a7323f4e3b86dd 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/0/include/fixedInlet
+++ b/tutorials/incompressible/simpleFoam/motorBike/0/include/fixedInlet
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/incompressible/simpleFoam/motorBike/0/include/frontBackUpperPatches b/tutorials/incompressible/simpleFoam/motorBike/0/include/frontBackUpperPatches
index d858932a9d7b2e82752104eef3f9882015c4d413..6db619f38d42b9e113820f498a74844b3f81d8b2 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/0/include/frontBackUpperPatches
+++ b/tutorials/incompressible/simpleFoam/motorBike/0/include/frontBackUpperPatches
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/incompressible/simpleFoam/motorBike/0/include/initialConditions b/tutorials/incompressible/simpleFoam/motorBike/0/include/initialConditions
index a90ff786cc55310cc128c7526be0136adf0e87c1..c8fa21f3b545e8458f962e4a568170295bc9dd77 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/0/include/initialConditions
+++ b/tutorials/incompressible/simpleFoam/motorBike/0/include/initialConditions
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/incompressible/simpleFoam/motorBike/0/k b/tutorials/incompressible/simpleFoam/motorBike/0/k
index f8da4fe9ab325ddca52043a64dc242398cdfa43c..076a183a9cb471a848f0570f9a447313f68b3e22 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/0/k
+++ b/tutorials/incompressible/simpleFoam/motorBike/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/0/omega b/tutorials/incompressible/simpleFoam/motorBike/0/omega
index dcd88e8d675ec3e6a8d8990edf4131bdd328db8d..274011e8169957f1127ea557d2c018cf55262578 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/0/omega
+++ b/tutorials/incompressible/simpleFoam/motorBike/0/omega
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/0/p b/tutorials/incompressible/simpleFoam/motorBike/0/p
index 9bf8e9d43dfc08c662920cbe9abc3378f2756ca6..7ab531ef650b2233966450455267debcd8876256 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/0/p
+++ b/tutorials/incompressible/simpleFoam/motorBike/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/constant/RASProperties b/tutorials/incompressible/simpleFoam/motorBike/constant/RASProperties
index e0f7c78180d7b067fb4a3002c1fb66ca309751da..24a4e1ec3e9952a8e02de6f5e30a860318d34034 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/constant/RASProperties
+++ b/tutorials/incompressible/simpleFoam/motorBike/constant/RASProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/constant/polyMesh/blockMeshDict b/tutorials/incompressible/simpleFoam/motorBike/constant/polyMesh/blockMeshDict
index 2fdea02592fa5f3f9e7f8b863e72189900f04978..c1b88f752519a862b58b5722354d906509578d55 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/simpleFoam/motorBike/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/constant/transportProperties b/tutorials/incompressible/simpleFoam/motorBike/constant/transportProperties
index 7f3bedaae59eebf8d32dd99ac2f9c8ff8adf77a6..0fa6827f06e9f1fc13891102f41dc793ad301399 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/constant/transportProperties
+++ b/tutorials/incompressible/simpleFoam/motorBike/constant/transportProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/system/controlDict b/tutorials/incompressible/simpleFoam/motorBike/system/controlDict
index 72478f821e13083be91a965432687694beea94bf..4761ae7037379f7283d4056f59d9e65a27cf861a 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/system/controlDict
+++ b/tutorials/incompressible/simpleFoam/motorBike/system/controlDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/system/decomposeParDict b/tutorials/incompressible/simpleFoam/motorBike/system/decomposeParDict
index c8c86b3fd8722dcd6639b553a60a029552a2835d..7a1f92e1681e77bd9012115826858ced55e40322 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/system/decomposeParDict
+++ b/tutorials/incompressible/simpleFoam/motorBike/system/decomposeParDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/system/fvSchemes b/tutorials/incompressible/simpleFoam/motorBike/system/fvSchemes
index b83088fb0e64278bd1bda4e68c848932038c0bd0..cd5ed7425c6850d4f3b689b928c0d13e279c784f 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/system/fvSchemes
+++ b/tutorials/incompressible/simpleFoam/motorBike/system/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/system/fvSolution b/tutorials/incompressible/simpleFoam/motorBike/system/fvSolution
index e99098b5b9c395c01a65884467579249c4e1dfa4..4020e040fa003a16b034d5f5d925b3136d121507 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/system/fvSolution
+++ b/tutorials/incompressible/simpleFoam/motorBike/system/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/motorBike/system/snappyHexMeshDict b/tutorials/incompressible/simpleFoam/motorBike/system/snappyHexMeshDict
index affc38cb2dafa0c652d7818b9733e60c6db15d37..9f6ce0452065488b647104bf216f06155db489d7 100644
--- a/tutorials/incompressible/simpleFoam/motorBike/system/snappyHexMeshDict
+++ b/tutorials/incompressible/simpleFoam/motorBike/system/snappyHexMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDaily/0/R b/tutorials/incompressible/simpleFoam/pitzDaily/0/R
index 2eb8459d869ba07ad57e704de02347f6f94833ee..9a4e4f96becb70a7af7968eb4f7b8b750bf13e61 100644
--- a/tutorials/incompressible/simpleFoam/pitzDaily/0/R
+++ b/tutorials/incompressible/simpleFoam/pitzDaily/0/R
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDaily/0/U b/tutorials/incompressible/simpleFoam/pitzDaily/0/U
index ec085adb4f59eb5cc3f97b7e0d9c0d100e1ccfc4..6ce2a587ad0fc718b51bbc94842bf55bf5df75f7 100644
--- a/tutorials/incompressible/simpleFoam/pitzDaily/0/U
+++ b/tutorials/incompressible/simpleFoam/pitzDaily/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDaily/0/nuTilda b/tutorials/incompressible/simpleFoam/pitzDaily/0/nuTilda
index be7ac0223a2e57d8151e9e89bff3773340dc5a5a..e2034bcc242a74877752c6073954afb061deffa6 100644
--- a/tutorials/incompressible/simpleFoam/pitzDaily/0/nuTilda
+++ b/tutorials/incompressible/simpleFoam/pitzDaily/0/nuTilda
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDaily/0/p b/tutorials/incompressible/simpleFoam/pitzDaily/0/p
index db9c0a3a745a0730223b607369c30f015490eff3..f8b316739644c871fcd66559e980f091414e48b2 100644
--- a/tutorials/incompressible/simpleFoam/pitzDaily/0/p
+++ b/tutorials/incompressible/simpleFoam/pitzDaily/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDaily/constant/polyMesh/blockMeshDict b/tutorials/incompressible/simpleFoam/pitzDaily/constant/polyMesh/blockMeshDict
index 89852b13afd14dcd4d02930bbc4362e086316919..964452a9e6c8c207134f154bdf0a5fdb7164b919 100644
--- a/tutorials/incompressible/simpleFoam/pitzDaily/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/simpleFoam/pitzDaily/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/R b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/R
index 2eb8459d869ba07ad57e704de02347f6f94833ee..9a4e4f96becb70a7af7968eb4f7b8b750bf13e61 100644
--- a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/R
+++ b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/R
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/U b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/U
index cc7970b18e82f51242b30c556823d7a5f08e996b..c49915e890edc3d755222515b57e71debc9e137f 100644
--- a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/U
+++ b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/nuTilda b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/nuTilda
index be7ac0223a2e57d8151e9e89bff3773340dc5a5a..e2034bcc242a74877752c6073954afb061deffa6 100644
--- a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/nuTilda
+++ b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/nuTilda
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/p b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/p
index db9c0a3a745a0730223b607369c30f015490eff3..f8b316739644c871fcd66559e980f091414e48b2 100644
--- a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/p
+++ b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/U b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/U
index c3bb73b5a9ba9d593512ece5d3fda88f565126df..7efaf20113f2828456e2bfbe2aeef3f076306647 100644
--- a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/U
+++ b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/epsilon b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/epsilon
index f6c97ebb3d77897a41e45d76dbc684596fb0465e..4aa34033d014bded901af52bb65e0dd11dac1105 100644
--- a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/epsilon
+++ b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/epsilon
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/k b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/k
index f8e3d4273fed540cdc1a33d70124c015cce389a2..5d217e794f0dad520e39da6bd1086aba377d0c3d 100644
--- a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/k
+++ b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/points b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/points
index 83cbf6a2e79f891ecd1894279ca50d0272c15439..423ff6219d195e0da2724c5362ade03ac2f4467d 100644
--- a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/points
+++ b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/boundaryData/inlet/points
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/polyMesh/blockMeshDict b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/polyMesh/blockMeshDict
index 89852b13afd14dcd4d02930bbc4362e086316919..964452a9e6c8c207134f154bdf0a5fdb7164b919 100644
--- a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/incompressible/simpleSRFFoam/mixer/0/Urel b/tutorials/incompressible/simpleSRFFoam/mixer/0/Urel
index dbf1defeadeffb3576fa714721557e8413e43a66..827be9b4a1a2fc963077fa73112b27758764a4b9 100644
--- a/tutorials/incompressible/simpleSRFFoam/mixer/0/Urel
+++ b/tutorials/incompressible/simpleSRFFoam/mixer/0/Urel
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/simpleSRFFoam/mixer/0/epsilon b/tutorials/incompressible/simpleSRFFoam/mixer/0/epsilon
index c4b875bc8acec3f1257d9bce9f2d3d874daf7065..91f1e6fdc5d28ebbc51ffddf6abd0ab09969a6c0 100644
--- a/tutorials/incompressible/simpleSRFFoam/mixer/0/epsilon
+++ b/tutorials/incompressible/simpleSRFFoam/mixer/0/epsilon
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/simpleSRFFoam/mixer/0/p b/tutorials/incompressible/simpleSRFFoam/mixer/0/p
index dfb6fe99fe26f3e27cc3596fb2763359f3c797ca..d60013671c783eeaf6ce85fa54936008bb1e9078 100644
--- a/tutorials/incompressible/simpleSRFFoam/mixer/0/p
+++ b/tutorials/incompressible/simpleSRFFoam/mixer/0/p
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/incompressible/simpleSRFFoam/mixer/constant/polyMesh/blockMeshDict b/tutorials/incompressible/simpleSRFFoam/mixer/constant/polyMesh/blockMeshDict
index 948100235fafe9a335b97bbe9ced9a7e2bdacc46..967148c5ad915f9afda017a6c3a0713cf4c6699d 100644
--- a/tutorials/incompressible/simpleSRFFoam/mixer/constant/polyMesh/blockMeshDict
+++ b/tutorials/incompressible/simpleSRFFoam/mixer/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/coalCloud1Positions b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/coalCloud1Positions
index 4b5bfcf421988d19b72689ff2f368602caca1d9d..9ec2a85526d187b5e810b70dded7a7bc9208d33f 100644
--- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/coalCloud1Positions
+++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/coalCloud1Positions
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 
diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/limestonePositions b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/limestonePositions
index 36f4c7a3fb649aa0050a1f1b63f68eea18fd1ef1..2a53304fdaa427ba5ce3ebf699897cb00e5d7cdc 100644
--- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/limestonePositions
+++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/limestonePositions
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict
index 814c5a8f9e21d4398b60b8851dcdc32407e4460e..41968dd9bff75eb7de45668184c60766aabdd0ba 100644
--- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict
+++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/G b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/G
index e95384474bf2c2a80d77a346cd1af1a6a05c0d37..a2574a4c9b30055dda5cbe0ebf816341e242ae54 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/G
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/G
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/H2O b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/H2O
index b99dfc07c7c2c408559fe691cc9a184fb3841c96..f3e42d766b65546772c958ddbd2f0f1d19bbd1de 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/H2O
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/H2O
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/N2 b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/N2
index bac9361933be71af80f27c72dc34525f5fd00a6a..5df0cf4b0fdcc057885d83938f2f4564f8adcff3 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/N2
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/N2
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/O2 b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/O2
index 7fa3e2e4886fa4d98bc2ab713e5044f1ec50b332..4e3d62fa85442a90b30ea81c6e5be5e93ba0c9e5 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/O2
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/O2
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/T b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/T
index 00f9fd04b862fa82cce6bc05a55c3076a4764c83..896b646bfdbe4a7da3a0b50c89163ca53623a8d2 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/T
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/T
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/U b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/U
index a0c6dd9ec1e2da43a15d4ab9af02f108740abb9c..68d953f8d0f29eda0aa3f5a8dc7d250c538337ac 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/U
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/U
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/p b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/p
index ba5cc3d6069c551a5fe104ef7c3693e0e3c7e38d..9892e5b61fec4db9f9511cce6dcb46450ad149ff 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/p
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0.org/p
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/G b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/G
index e95384474bf2c2a80d77a346cd1af1a6a05c0d37..a2574a4c9b30055dda5cbe0ebf816341e242ae54 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/G
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/G
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/H2O b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/H2O
index b99dfc07c7c2c408559fe691cc9a184fb3841c96..f3e42d766b65546772c958ddbd2f0f1d19bbd1de 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/H2O
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/H2O
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/N2 b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/N2
index bac9361933be71af80f27c72dc34525f5fd00a6a..5df0cf4b0fdcc057885d83938f2f4564f8adcff3 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/N2
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/N2
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/O2 b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/O2
index 7fa3e2e4886fa4d98bc2ab713e5044f1ec50b332..4e3d62fa85442a90b30ea81c6e5be5e93ba0c9e5 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/O2
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/O2
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/T b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/T
index 00f9fd04b862fa82cce6bc05a55c3076a4764c83..896b646bfdbe4a7da3a0b50c89163ca53623a8d2 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/T
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/T
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/U b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/U
index a0c6dd9ec1e2da43a15d4ab9af02f108740abb9c..68d953f8d0f29eda0aa3f5a8dc7d250c538337ac 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/U
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/U
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/p b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/p
index ba5cc3d6069c551a5fe104ef7c3693e0e3c7e38d..9892e5b61fec4db9f9511cce6dcb46450ad149ff 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/p
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/0/p
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  splitCyclic                           |
+|  \\    /   O peration     | Version:  1.6                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/RASProperties b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/RASProperties
index a6b95d334d3ad51482c6674449f1056ad3dbe180..d13d2161c46ddeb89ebb605609eae194ef9de0bd 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/RASProperties
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/RASProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/polyMesh/blockMeshDict b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/polyMesh/blockMeshDict
index a7981f61867354ef29f8ec99f9d572f04cd195ae..71e5d329a7c55b29c9f4edfb6c4dbd0d8f5f1920 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/polyMesh/blockMeshDict
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/reactingCloud1Positions b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/reactingCloud1Positions
index 380a953bfb4e70c50e1fc93e8e62f8634c91a55e..3d89cfc87adc3c3c1aeaed0350d49f5976d47df6 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/reactingCloud1Positions
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/reactingCloud1Positions
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/turbulenceProperties b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/turbulenceProperties
index d49f3cf71d02a4f2922cbece9fb87ac9508635b8..f089b5aa1f000179cc5c062d2154cd5f78c30832 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/turbulenceProperties
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/turbulenceProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/G b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/G
index 6e8fb5d0e6c24f35752bcc2dd77f41aa6194dc53..161079237f24c7b7b5abfe1800a1deaf6288291e 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/G
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/G
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/H2O b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/H2O
index f49b0231f03bef98edc8f9eafcd17549f50a7a57..72caac37b54a52400327add6cf730af030f06985 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/H2O
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/H2O
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/T b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/T
index 5d813907a8063eb389d767d6fe4b05ef0a949f98..accf5dd083002f6c983d8d615f35f31aade991ee 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/T
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/U b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/U
index 2ef228419242135ec9d36dded38f6dd5fedc9001..962641cf24eef9dabe612d58fcc3c3d49bed05c1 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/U
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/air b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/air
index 8a461bd14756023f4e10ab13ffe7e942f541e10a..0b6f5a1ecc75903dd7ec4d271221f8d81e6dfaf4 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/air
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/air
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/p b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/p
index 9523758e82c0d8e662a5700317c4db542bd22a19..c1b0c45daa8fedfb8aea17738f7bf09327271b89 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/p
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/polyMesh/blockMeshDict b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/polyMesh/blockMeshDict
index 68bb6d93691a873021761f1c0b6fd8cc63431b67..36a2c0b6e00e53ca77cdfc932af10ae4be9956ec 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/polyMesh/blockMeshDict
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/reactingCloud1Positions b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/reactingCloud1Positions
index 98646ad46e93bc7571169e63bc3e3a8ec2592b6e..7482b74389972b873a6fd44ed4499de2b57bf0ba 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/reactingCloud1Positions
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/reactingCloud1Positions
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/turbulenceProperties b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/turbulenceProperties
index 693c0989a7a80636269ffddc6b231e1c21dff283..c00a70ffcd10c39b6c7e1932cade7e37a7a5f529 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/turbulenceProperties
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/turbulenceProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/system/probesDict b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/system/probesDict
index ae04abedd6afb8ba59e3d3da4e67f7ade161f0e9..08fb2ca37de69973eec07ec74cfc200729139806 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/system/probesDict
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/system/probesDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM  1.4.1                                          |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version         2.0;
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/H2O b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/H2O
index 3e46197b969abc2773cb84a71720294d192a5966..aa35b84aff9dd4d6bdd1bc662d9075ed91dae115 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/H2O
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/H2O
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/T b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/T
index 69f5653ca787665fe7d0ba17a5df972270ca4f80..4a53e52e1a33322b651347544b9c780e7d894766 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/T
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/air b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/air
index 5fbc4f5e7f973288ddede8ee4fa61fd762fdec18..e54716bb87ccd2f2d60bab4a73f5535cc0632016 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/air
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/air
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/p b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/p
index 983de9aa2e99af13521e03fb504fd1a3f5d124df..cc559b5f01e5629a89777ed45ac98ed95171b7d2 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/p
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/H2O b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/H2O
index 3e46197b969abc2773cb84a71720294d192a5966..aa35b84aff9dd4d6bdd1bc662d9075ed91dae115 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/H2O
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/H2O
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/T b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/T
index 69f5653ca787665fe7d0ba17a5df972270ca4f80..4a53e52e1a33322b651347544b9c780e7d894766 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/T
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/air b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/air
index 5fbc4f5e7f973288ddede8ee4fa61fd762fdec18..e54716bb87ccd2f2d60bab4a73f5535cc0632016 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/air
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/air
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/p b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/p
index 983de9aa2e99af13521e03fb504fd1a3f5d124df..cc559b5f01e5629a89777ed45ac98ed95171b7d2 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/p
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/RASProperties b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/RASProperties
index 02c52e85d0070b4258c314a2650e2fff5d442929..a780880b2404d08b13fa39d78a9555dab9d7b88d 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/RASProperties
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/RASProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                     |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/polyMesh/blockMeshDict b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/polyMesh/blockMeshDict
index 8f1fd10943be05453af59a3795fd180c4a222904..2cb8bbb4bd2560566fbbb397a9bff37f806e437e 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/polyMesh/blockMeshDict
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                     |
-|   \\  /    A nd           | Web:      http://www.openfoam.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/turbulenceProperties b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/turbulenceProperties
index d49f3cf71d02a4f2922cbece9fb87ac9508635b8..f089b5aa1f000179cc5c062d2154cd5f78c30832 100644
--- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/turbulenceProperties
+++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/turbulenceProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/T b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/T
index ac30f9d6366c0f9d1d7243da0d587fe691b56ebf..c0ec071c9b3f41738ba9b468d590f501e2ea7654 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/T
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/Tf b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/Tf
index d0b01aa6f801a3b1efc653a7fd5b3046195c34d9..44eacb8ce341b8814bd4a0097aa9680f76ea8876 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/Tf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/Tf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/U b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/U
index bc29aca83ad2d1568e115c198dd1f91df2f82995..b92c0bb9fa60af82d60a3f3a3621a8341489ccf4 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/U
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/USpf b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/USpf
index 5a52c991691b0c821834d3b4bbc6238cb369aca4..bfaf11072f07c650726809ffe2dd2750cd413e51 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/USpf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/USpf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/Uf b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/Uf
index 1720f371e3699a0527631efc69df5a8b2fe5f96e..fb9983b04439f8ff9d65d8c48062663742e1eeb9 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/Uf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/Uf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/deltaf b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/deltaf
index b8de19a2e12cceb96fc9ec611db4772967d8b485..d2359386afd7167062d9d014671ebe21b67ea2ee 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/deltaf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/deltaf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/p b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/p
index c016f0b3e77d94ec6918a517cf16c3f5ec599e7d..1eccd6ea378ed2fb59b91abc02e79b113ba2ba96 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/p
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/pSpf b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/pSpf
index 8d5ec13bfdf41321f5933238155d396b1f5cd959..283a98712786b62915f54ea6a4f470b5759468b8 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/pSpf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0.org/wallFilmRegion/pSpf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/T b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/T
index ac30f9d6366c0f9d1d7243da0d587fe691b56ebf..c0ec071c9b3f41738ba9b468d590f501e2ea7654 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/T
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/Tf b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/Tf
index d0b01aa6f801a3b1efc653a7fd5b3046195c34d9..44eacb8ce341b8814bd4a0097aa9680f76ea8876 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/Tf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/Tf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/U b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/U
index bc29aca83ad2d1568e115c198dd1f91df2f82995..b92c0bb9fa60af82d60a3f3a3621a8341489ccf4 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/U
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/USpf b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/USpf
index 5a52c991691b0c821834d3b4bbc6238cb369aca4..bfaf11072f07c650726809ffe2dd2750cd413e51 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/USpf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/USpf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/Uf b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/Uf
index 1720f371e3699a0527631efc69df5a8b2fe5f96e..fb9983b04439f8ff9d65d8c48062663742e1eeb9 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/Uf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/Uf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/deltaf b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/deltaf
index b8de19a2e12cceb96fc9ec611db4772967d8b485..d2359386afd7167062d9d014671ebe21b67ea2ee 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/deltaf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/deltaf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/p b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/p
index c016f0b3e77d94ec6918a517cf16c3f5ec599e7d..1eccd6ea378ed2fb59b91abc02e79b113ba2ba96 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/p
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/pSpf b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/pSpf
index 8d5ec13bfdf41321f5933238155d396b1f5cd959..283a98712786b62915f54ea6a4f470b5759468b8 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/pSpf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/0/wallFilmRegion/pSpf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/polyMesh/blockMeshDict b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/polyMesh/blockMeshDict
index 22a062a6db92216439f91317decd05613ab1c884..2360627d5612dd343109a6275ee73e00179b8074 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/polyMesh/blockMeshDict
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Axes b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Axes
index a254f7f2b43e4a23ef4723a46abf296886c63b22..fb67e7d1ac4d5a7c29fe61deaee41d10d663ce06 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Axes
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Axes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Positions b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Positions
index af3a75c15bb8d9665765521b4e635a340edbc751..fe81377d7a54b9c98e6cd1d835a96c10314b28a8 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Positions
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Positions
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/T b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/T
index a006148876aa71f557ec6336eccd2b6d4f95a7b3..4bac918f7119682d4bc5eb01e199bddf8ac23f7d 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/T
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/p b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/p
index b02e9e00f01c73a3e1b453853bdec0697c4f0928..1d1dc79489e137dd20be6290cffdd386b2040646 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/p
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/T b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/T
index 9ea9e845535257e93edfa8ecaea7cbfad0e1c29a..61084f931da39ed6f3500b51880d62c1c9735b61 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/T
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/Tf b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/Tf
index 69c9e2a5c8481ac77d289226e79ff33f2b40f275..ce2dbca1f7a7a7d6b30fcbc9d6640eebf8e3befc 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/Tf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/Tf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/U b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/U
index 47f15fad957c4b667608570498552c9d7e1e8bc8..cfd4eb3b56d659f4b61bc579b8173ddd754e3b98 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/U
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/USpf b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/USpf
index 28f9e6b83126f11cadaecbe013997ed8fb62c336..31c395cf5c5c12165792a40681834cf55d4691be 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/USpf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/USpf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/Uf b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/Uf
index bdb198e79761832ea445990838e76005dafc6846..718d0f8981a0536b79853f3ac566a35a98070d94 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/Uf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/Uf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/deltaf b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/deltaf
index bd4dc96fec7cf11dc650c0865e850e77057dd7e4..680a919369d73dab06a4a57ffd183c08c4710c94 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/deltaf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/deltaf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/p b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/p
index 9b201d1dabc323e668c75eb3d4c32438938beb13..d038a768836cc1835a7e5c115f7566375a9d7844 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/p
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/pSpf b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/pSpf
index 53cacbdc73a6c0ae9ae218ad6aa198967acbd42f..90cb0e6f9d6bda1264d1fbb0079734ddcff12a62 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/pSpf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0.org/wallFilmRegion/pSpf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/T b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/T
index a006148876aa71f557ec6336eccd2b6d4f95a7b3..4bac918f7119682d4bc5eb01e199bddf8ac23f7d 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/T
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/p b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/p
index b02e9e00f01c73a3e1b453853bdec0697c4f0928..1d1dc79489e137dd20be6290cffdd386b2040646 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/p
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/T b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/T
index 9ea9e845535257e93edfa8ecaea7cbfad0e1c29a..61084f931da39ed6f3500b51880d62c1c9735b61 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/T
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/Tf b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/Tf
index 69c9e2a5c8481ac77d289226e79ff33f2b40f275..ce2dbca1f7a7a7d6b30fcbc9d6640eebf8e3befc 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/Tf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/Tf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/U b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/U
index 47f15fad957c4b667608570498552c9d7e1e8bc8..cfd4eb3b56d659f4b61bc579b8173ddd754e3b98 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/U
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/USpf b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/USpf
index 28f9e6b83126f11cadaecbe013997ed8fb62c336..31c395cf5c5c12165792a40681834cf55d4691be 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/USpf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/USpf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/Uf b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/Uf
index bdb198e79761832ea445990838e76005dafc6846..718d0f8981a0536b79853f3ac566a35a98070d94 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/Uf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/Uf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/deltaf b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/deltaf
index bd4dc96fec7cf11dc650c0865e850e77057dd7e4..680a919369d73dab06a4a57ffd183c08c4710c94 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/deltaf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/deltaf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/p b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/p
index 9b201d1dabc323e668c75eb3d4c32438938beb13..d038a768836cc1835a7e5c115f7566375a9d7844 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/p
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/pSpf b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/pSpf
index 53cacbdc73a6c0ae9ae218ad6aa198967acbd42f..90cb0e6f9d6bda1264d1fbb0079734ddcff12a62 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/pSpf
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/0/wallFilmRegion/pSpf
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/constant/polyMesh/blockMeshDict b/tutorials/lagrangian/reactingParcelFilmFoam/panel/constant/polyMesh/blockMeshDict
index 8d35586fcfb47c50a4d5684c1e402b85e99aaad5..f210eb8a654caaf3658adfd5799cac3492ebf3c2 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/constant/polyMesh/blockMeshDict
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/system/createPatchDict b/tutorials/lagrangian/reactingParcelFilmFoam/panel/system/createPatchDict
index 4260fe53ff4c5e81567d0884957347468fef5143..d1ec0b43543eab909213a82a69a896389371ae0e 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/system/createPatchDict
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/system/createPatchDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/system/wallFilmRegion/createPatchDict b/tutorials/lagrangian/reactingParcelFilmFoam/panel/system/wallFilmRegion/createPatchDict
index 887efae020522a98769682605de8b98046bbb7ce..35814b7beb6f0d4d0c07a43e3b884b1b986c6ee9 100644
--- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/system/wallFilmRegion/createPatchDict
+++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/system/wallFilmRegion/createPatchDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/T b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/T
index 557c2a00a457fc3620c9cfeb17182a0c9fafac83..7af14ccae9ab96b103266d00563fc90836a7eac5 100644
--- a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/T
+++ b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/U b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/U
index ab700ac7fc19f617f94af8bda566b9ff2044b36c..e8ca849242b0babd08658a8e3b956a3d2cdd28e8 100644
--- a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/U
+++ b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/p b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/p
index d9e704b77eee544f3f2229b3c83214f7cada0dcb..33a8121aaa658b51ba482c747065c95e4baf014e 100644
--- a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/p
+++ b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/polyMesh/blockMeshDict b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/polyMesh/blockMeshDict
index f027e3747b8bbbbb8f3dfed42296d036bbd939db..e607484c06a99763703fb3470b6a7f345fdae8e8 100644
--- a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/polyMesh/blockMeshDict
+++ b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/reactingCloud1Positions b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/reactingCloud1Positions
index 4936063330be067d061e1a6130f4847859305b20..9aa7e858c1afd32ad98f665f25a3924c8769ad19 100644
--- a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/reactingCloud1Positions
+++ b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/reactingCloud1Positions
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/G b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/G
index e1d465f739141f333fa76d7811879345f02899ea..4ab828938237d594500bffedb67bfedeab0a2bf8 100644
--- a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/G
+++ b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/G
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/T b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/T
index fdef44841c22d24b752af33864962bf0f1bf4f55..64412b357f52603d8e2e0ef45948d3cb415e1d12 100644
--- a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/T
+++ b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/U b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/U
index 52c0f33bf0ac0cae2c7d08b687ba415ee40dade4..ce40d1cce5713183824640ae0564812a3218db39 100644
--- a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/U
+++ b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/p b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/p
index 413fb65ee01f9daa5228f590091e83de4f91e42e..ca72907fdafa3b18a77044d437342faad874e404 100644
--- a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/p
+++ b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/kinematicCloud1Positions b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/kinematicCloud1Positions
index 8e86b07a312c9c67d7f1d0ed95e540a9a4e20d63..8ce16d7a47e9f2dde7cdd4654c0d98d8fd1eeda1 100644
--- a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/kinematicCloud1Positions
+++ b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/kinematicCloud1Positions
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/polyMesh/blockMeshDict b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/polyMesh/blockMeshDict
index 48cc0c40f340250bb72c210f19371e9353e59e88..7dfdefa13aebd9599ed8ce410db50a7b5445fd5d 100644
--- a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/polyMesh/blockMeshDict
+++ b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/thermoCloud1Positions b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/thermoCloud1Positions
index 836a2125c4b55ee1d1e28e8eb9b2dbcf9b1f616a..ee07fc2fd1377fa567ab109f1c42503c91cee57d 100644
--- a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/thermoCloud1Positions
+++ b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/thermoCloud1Positions
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/blockMeshDict b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/blockMeshDict
index fb5719202fdf5dcf70e3203d520679821f3581e8..5f0eec5065a633586bff459129cb4c69f6c0fa9a 100644
--- a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/blockMeshDict
+++ b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/decomposeParDict b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/decomposeParDict
index cc32e107da616f994cb1f6af5c9768839d241dfd..bbbd6ec481ceb9c7428e52b86fa55c22105005e3 100644
--- a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/decomposeParDict
+++ b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/decomposeParDict
@@ -1,10 +1,10 @@
-/*-------------------------------*- C++ -*---------------------------------*\
-|    =========                                                              |
-|    \\      /     OpenFOAM                                                 |
-|     \\    /                                                               |
-|      \\  /       The Open Source CFD Toolbox                              |
-|       \\/                                        http://www.OpenFOAM.org  |
-\*-------------------------------------------------------------------------*/
+/*--------------------------------*- C++ -*----------------------------------*\
+| =========                 |                                                 |
+| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
+|  \\    /   O peration     | Version:  1.6                                   |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
+|    \\/     M anipulation  |                                                 |
+\*---------------------------------------------------------------------------*/
 FoamFile
 {
     version     2.0;
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/Ua b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/Ua
index 290ca17103b1c174ee0c980a2d5c0148ccf7eb06..852331bc83fa2ba82708c929090f5b8774e116dc 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/Ua
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/Ua
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/Ub b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/Ub
index 27a206460501d0e60f4a30fea1256ea06c658917..7b849ddc86b4f98776cc4ed96cf3863577cb21b2 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/Ub
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/Ub
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/alpha b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/alpha
index 620076aa4f598c27c0f70e979a98e91ff32d6473..d0e20aa930db00a971a24ca975eafe18204f7b24 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/alpha
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/alpha
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/epsilon b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/epsilon
index 74d99a034100cd6f3a317549ad53e528f4403365..dd4026c3f1d0d0e39886bd5bbb0cc18afccbef16 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/epsilon
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/epsilon
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/k b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/k
index d1cf75982549a3d3f4a211c8908ba743020edf53..2613426bdcef7031fd71e0ae3e5b97899049a658 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/k
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/p b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/p
index 97628b7599d9f832e9da866503e825faecacf93d..4cff4010165c8c51f5d78388b53d9fed66dc96c7 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/p
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/Ua b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/Ua
index 7c7c20286a6ae5416428b73d15f7e84057082368..6034d0c751fee599bf3ed21866ca09d1a7b274c1 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/Ua
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/Ua
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/Ub b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/Ub
index 858e81fca7c37d0df55490e116c9cd1892397577..0d22e95a26663ced3209d036e31d5b726ae3de2c 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/Ub
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/Ub
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/alpha b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/alpha
index 23a28e0e408b989b75d0891d41375e5be5b2d807..0f2b2147503225b8c01030d9d710995bf9ff5114 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/alpha
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/alpha
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/epsilon b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/epsilon
index 74d99a034100cd6f3a317549ad53e528f4403365..dd4026c3f1d0d0e39886bd5bbb0cc18afccbef16 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/epsilon
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/epsilon
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/k b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/k
index d1cf75982549a3d3f4a211c8908ba743020edf53..2613426bdcef7031fd71e0ae3e5b97899049a658 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/k
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/p b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/p
index fd48cfbe77496428f70b3eccc88aaf292b780a54..3af4d065e414ba0b9b8e4e0375c6d56877eebbc1 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/0/p
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/bubbleFoam/bubbleColumn/constant/polyMesh/blockMeshDict b/tutorials/multiphase/bubbleFoam/bubbleColumn/constant/polyMesh/blockMeshDict
index 226eff6239f25279b01193d1d4670d6511b26cd7..8211d45402c996591a24f2f5b9d442f3a6437491 100644
--- a/tutorials/multiphase/bubbleFoam/bubbleColumn/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/bubbleFoam/bubbleColumn/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/0/U b/tutorials/multiphase/cavitatingFoam/les/throttle/0/U
index d8b7d8aff2ec2626bde96691b411ed03a7e0dec9..3b8cf58b5ed66c9a8c57468dbb7c3ac461ec9b06 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle/0/U
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/0/gamma b/tutorials/multiphase/cavitatingFoam/les/throttle/0/gamma
index 78e7fc8ec37c7ce336fc37abd7118678d762027f..6549e7a1a1837f43f0e4f5911cdce9bfa0c8a7ac 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle/0/gamma
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle/0/gamma
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/0/k b/tutorials/multiphase/cavitatingFoam/les/throttle/0/k
index bd99b180046b73d6d39b1f00c5a9da921862a312..beb5e8ad00497f3b1cc767fe53ce87dff7c503d2 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle/0/k
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/0/nuSgs b/tutorials/multiphase/cavitatingFoam/les/throttle/0/nuSgs
index 61362a1185bd682d89f5c537a0f35a3746cd335f..cefaae04021e8f2879f917fc660b82a10a51a528 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle/0/nuSgs
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle/0/nuSgs
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/0/p b/tutorials/multiphase/cavitatingFoam/les/throttle/0/p
index 43b40be486474f36e5f4a1f3ec994b4cf8ca0711..65ceada6de51443c1925c604fdac22545150b315 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle/0/p
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/0/rho b/tutorials/multiphase/cavitatingFoam/les/throttle/0/rho
index e4987690002d1d73c02e6011bc0f2c806c770bac..537983c812ffae9fa7fe677e6c593b255f3390c1 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle/0/rho
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle/0/rho
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/constant/polyMesh/blockMeshDict b/tutorials/multiphase/cavitatingFoam/les/throttle/constant/polyMesh/blockMeshDict
index 72cc5089cbe97a6f079319db7882a902d8100ab5..c5fe8c454af14b77458a8c0444dac062ba35a653 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/U b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/U
index 24516751f40cba6cfcff597fca16f0b4569a58da..1df4f1e9d15b88149bf635dad978f45a49a8ffdc 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/U
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/gamma b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/gamma
index b518bc63ecc8dde533d8c4f4aa4b674d47072c1f..c4186a9b8e7300a3397a2984a8ae331820324386 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/gamma
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/gamma
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/k b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/k
index 06970f3e495f8479d7109f4067482c03156cf5cc..93806551c7674cb715f4f0f8622236186c7b12cb 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/k
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/nuSgs b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/nuSgs
index d8e57ead937ec24b700e072064c8085db24a704c..d02d49e097238c2e08fc1a471d6a340aa29b9b76 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/nuSgs
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/nuSgs
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/p b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/p
index 1a1b0bb9c62eb04fc40928a9c7c9a97635572cbf..497247ea216441a8f82b5371d4e759c3e6b17a36 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/p
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/rho b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/rho
index 4b434b5f7ddda455fd42767885fe51e2821bf1e3..d7ce75fc2e4cf8468d1b4fdad7d29322e0d8a1b5 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/rho
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0.org/rho
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/U b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/U
index 24516751f40cba6cfcff597fca16f0b4569a58da..1df4f1e9d15b88149bf635dad978f45a49a8ffdc 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/U
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/gamma b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/gamma
index b518bc63ecc8dde533d8c4f4aa4b674d47072c1f..c4186a9b8e7300a3397a2984a8ae331820324386 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/gamma
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/gamma
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/k b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/k
index 06970f3e495f8479d7109f4067482c03156cf5cc..93806551c7674cb715f4f0f8622236186c7b12cb 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/k
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/nuSgs b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/nuSgs
index d8e57ead937ec24b700e072064c8085db24a704c..d02d49e097238c2e08fc1a471d6a340aa29b9b76 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/nuSgs
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/nuSgs
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/p b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/p
index 1a1b0bb9c62eb04fc40928a9c7c9a97635572cbf..497247ea216441a8f82b5371d4e759c3e6b17a36 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/p
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/rho b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/rho
index 4b434b5f7ddda455fd42767885fe51e2821bf1e3..d7ce75fc2e4cf8468d1b4fdad7d29322e0d8a1b5 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/rho
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/0/rho
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/constant/polyMesh/blockMeshDict b/tutorials/multiphase/cavitatingFoam/les/throttle3D/constant/polyMesh/blockMeshDict
index e6d091009eb0cc3b255069c917006765e2e27056..7097a7fd46890b242b3346a0e2a4e42ec91ffd34 100644
--- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/0/U b/tutorials/multiphase/cavitatingFoam/ras/throttle/0/U
index df97c7370266feeebbdb0ed3831cb4b56f945ed2..71b56102692cf8a3207fed0ad1e9f0c79ad1fec6 100644
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/0/U
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/0/gamma b/tutorials/multiphase/cavitatingFoam/ras/throttle/0/gamma
index 78e7fc8ec37c7ce336fc37abd7118678d762027f..6549e7a1a1837f43f0e4f5911cdce9bfa0c8a7ac 100644
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/0/gamma
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/0/gamma
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/0/p b/tutorials/multiphase/cavitatingFoam/ras/throttle/0/p
index 43b40be486474f36e5f4a1f3ec994b4cf8ca0711..65ceada6de51443c1925c604fdac22545150b315 100644
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/0/p
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/0/rho b/tutorials/multiphase/cavitatingFoam/ras/throttle/0/rho
index e4987690002d1d73c02e6011bc0f2c806c770bac..537983c812ffae9fa7fe677e6c593b255f3390c1 100644
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/0/rho
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/0/rho
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/constant/polyMesh/blockMeshDict b/tutorials/multiphase/cavitatingFoam/ras/throttle/constant/polyMesh/blockMeshDict
index 72cc5089cbe97a6f079319db7882a902d8100ab5..c5fe8c454af14b77458a8c0444dac062ba35a653 100644
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/constant/polyMesh/boundary b/tutorials/multiphase/cavitatingFoam/ras/throttle/constant/polyMesh/boundary
index b5008d95cda2ff30fef45cb13f6649f082f871d1..03d26bcf3c96c86ca8ecf11604193892ebc80d29 100644
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/constant/polyMesh/boundary
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/constant/polyMesh/boundary
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
+|  \\    /   O peration     | Version:  dev                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/fvSchemes b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/fvSchemes
index 3aa1b53f3f6bd5950e21f7ee39fc5f3e8037988e..0a25b3fe77bf15b8ad37f15b1b3874f0157348b0 100644
--- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/fvSchemes
+++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/fvSchemes
@@ -28,10 +28,10 @@ interpolationSchemes
 divSchemes
 {
     default         none;
-    div(phiv,rho)   Gauss limitedLinear 0.2;
-    div(phi,U)      Gauss limitedLinearV 0.2;
-    div(phiv,omega) Gauss limitedLinear 0.2;
-    div(phiv,k)     Gauss limitedLinear 0.2;
+    div(phiv,rho)   Gauss limitedLinear 1;
+    div(phi,U)      Gauss limitedLinearV 1;
+    div(phiv,omega) Gauss limitedLinear 1;
+    div(phiv,k)     Gauss limitedLinear 1;
 }
 
 gradSchemes
diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/U b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/U
index efd12704820c03a9fdc09ca1d2d2fc6dc8aa869a..360c554fe8e54fe208e0c14e8ebf16d0db31d529 100644
--- a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/U
+++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/alpha1.org b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/alpha1.org
index a21ae5c855fcc34a8007dcf0b0c984386b383dfd..4c1f958e8b09fea734ed37857b8434eaf0ab5bb6 100644
--- a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/alpha1.org
+++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/p.org b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/p.org
index 427d8c26c167df31beee8b18c4e60ad9a58a56c4..29b3ad1dd7b669a95a2e78f5e33d32aa5fb65aa6 100644
--- a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/p.org
+++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/0/p.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/polyMesh/blockMeshDict b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/polyMesh/blockMeshDict
index c76e0e94bcf2622c60a12a07771b010e3e9f319a..acbeff0f775f764afdd97a0b6f117b6ba200d575 100644
--- a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/U b/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/U
index 97acd94621f325c1ae605cd58233b48f2859e78d..91ef2164cb29e2255b7a583a7c3b960f65102a7f 100644
--- a/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/U
+++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/alpha1.org b/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/alpha1.org
index 4772b35127a7d826e59acfb93ed9e8221a84360d..3ef23b09de46a570bb209379a912e36dab339406 100644
--- a/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/alpha1.org
+++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/p.org b/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/p.org
index e0e94930821e7403edf222f85b6e99fbd9d88b08..c5897539abcfe79fa3a779c16fa4876bee7009ba 100644
--- a/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/p.org
+++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/0/p.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/constant/polyMesh/blockMeshDict b/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/constant/polyMesh/blockMeshDict
index 2ea938f206816b71fef4ac76de8faa6b0e709095..e87a9075ef08e604ea4a049ba162f700e07c5f65 100644
--- a/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge3D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/U b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/U
index 898782da0f2b09f74cea48482f0d39650356c0ea..1d8d21b809d8001181b444d17ea499f4c63c6342 100644
--- a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/U
+++ b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/alpha1 b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/alpha1
index d4b188f0254aeac71bb4aef6478f847ab21e361b..3dd23ca8542b66bd3c27889869f4013ae83f55d7 100644
--- a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/alpha1
+++ b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/alpha1
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/alpha1.org b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/alpha1.org
index d4b188f0254aeac71bb4aef6478f847ab21e361b..3dd23ca8542b66bd3c27889869f4013ae83f55d7 100644
--- a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/alpha1.org
+++ b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/p b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/p
index a07be1723a3277c90a94469101011e97904447bd..f92d8da369afd11cb282f1e6ee84d90e63977f15 100644
--- a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/p
+++ b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0-orig/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0/alpha1.org b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0/alpha1.org
index d4b188f0254aeac71bb4aef6478f847ab21e361b..3dd23ca8542b66bd3c27889869f4013ae83f55d7 100644
--- a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0/alpha1.org
+++ b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0/p b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0/p
index a07be1723a3277c90a94469101011e97904447bd..f92d8da369afd11cb282f1e6ee84d90e63977f15 100644
--- a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0/p
+++ b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/constant/polyMesh/blockMeshDict
index df92de808dbc7b61c619d025f36db9be006022bc..d3bc3b6f5a26f24385714faf55da3de4506beada 100644
--- a/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interDyMFoam/ras/damBreakWithObstacle/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/0.org/p b/tutorials/multiphase/interDyMFoam/ras/floatingObject/0.org/p
index b5127205565f8a4d0e734bf5f989b385e51ff768..7beceea5a6010da1dae0098801b797a9f5a01dcc 100644
--- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/0.org/p
+++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/0.org/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/constant/dynamicMeshDict b/tutorials/multiphase/interDyMFoam/ras/floatingObject/constant/dynamicMeshDict
index 083baf725a14ecb9787708faf739d7e859f6172e..2ccb8389ba4de4fb4affe5fa6e81582f9269bee4 100644
--- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/constant/dynamicMeshDict
+++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/constant/dynamicMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interDyMFoam/ras/floatingObject/constant/polyMesh/blockMeshDict
index 611466bb780fc9e54585ddbdbe160ad492fde813..548ad0064e7e0d9117af108ddbbc2615299c6865 100644
--- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict
index 7fdf7ca03a211e2ca66f32fcb6edf24eea0d4753..2d9e6e21d30d41ce6bd05b7e60fbf88e5d229eaa 100644
--- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict
+++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/U b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/U
index cc537fd8a3454e395d7c8a4c3939a8c706d5acd5..fbc6ab7a177b523a9743ea8385aef87b29a24125 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/U
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/alpha1.org b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/alpha1.org
index 1411e6ce4a762e93441d0b39b8bbfdb7c331f1ea..2203f7e5d0d0c2fbcc842a055a1b221c2c0a856e 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/alpha1.org
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/p b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/p
index cc5521b16f54d4f87e4f021cf22d6f4c6bffaab8..ebc41278261e431e237b5fc0588be8a935aa74c4 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/p
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/constant/polyMesh/blockMeshDict
index 70aa130dc86021d8d1f59ff6dc2cf109fee249cf..0341c304769d1b10dbc2881accb81bc8b736ce3f 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/constant/polyMesh/blockMeshDict.m4 b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/constant/polyMesh/blockMeshDict.m4
index 63a339f2b9ac030c609b24b5570574dc0b40a7e1..3fb3c4a7d4c58f93faed009ef91dace8d9785f01 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D/constant/polyMesh/blockMeshDict.m4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/U b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/U
index cc537fd8a3454e395d7c8a4c3939a8c706d5acd5..fbc6ab7a177b523a9743ea8385aef87b29a24125 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/U
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/alpha1.org b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/alpha1.org
index 1411e6ce4a762e93441d0b39b8bbfdb7c331f1ea..2203f7e5d0d0c2fbcc842a055a1b221c2c0a856e 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/alpha1.org
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/p b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/p
index cc5521b16f54d4f87e4f021cf22d6f4c6bffaab8..ebc41278261e431e237b5fc0588be8a935aa74c4 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/p
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict
index 70aa130dc86021d8d1f59ff6dc2cf109fee249cf..0341c304769d1b10dbc2881accb81bc8b736ce3f 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict.m4 b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict.m4
index 63a339f2b9ac030c609b24b5570574dc0b40a7e1..3fb3c4a7d4c58f93faed009ef91dace8d9785f01 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict.m4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/U b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/U
index a1abb4874af6b1f8edd6e8ecd5344cd643f3cf5e..cef053f055736ca828e089c1929fa0c3ee0cc929 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/U
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/alpha1.org b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/alpha1.org
index fbbc61ac18ab37928e7755f25d050e956bf28f39..a9e92e77c4c3af0e5a0f7ddc408f12be618bcfe2 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/alpha1.org
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/p b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/p
index dd16aa2b670d12ba08f55fbf4b8e1ced78409351..e1b9c008e5adcf3135bc993d9e971bc08b0e8aff 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/p
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/constant/polyMesh/blockMeshDict
index 49a0cf9faeca834874a0c502363e933b942962a4..348445a10789c12420610bdd95b9861f176375c9 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/constant/polyMesh/blockMeshDict.m4 b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/constant/polyMesh/blockMeshDict.m4
index 4060d827218afc9f062d6497beb2e5a68070624b..f16c37b1b9d60c338e8281031fdc9ec93fff6a5d 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D/constant/polyMesh/blockMeshDict.m4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/U b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/U
index a1abb4874af6b1f8edd6e8ecd5344cd643f3cf5e..cef053f055736ca828e089c1929fa0c3ee0cc929 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/U
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/alpha1.org b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/alpha1.org
index fbbc61ac18ab37928e7755f25d050e956bf28f39..a9e92e77c4c3af0e5a0f7ddc408f12be618bcfe2 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/alpha1.org
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/p b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/p
index dd16aa2b670d12ba08f55fbf4b8e1ced78409351..e1b9c008e5adcf3135bc993d9e971bc08b0e8aff 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/p
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict
index 49a0cf9faeca834874a0c502363e933b942962a4..348445a10789c12420610bdd95b9861f176375c9 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict.m4 b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict.m4
index 4060d827218afc9f062d6497beb2e5a68070624b..f16c37b1b9d60c338e8281031fdc9ec93fff6a5d 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict.m4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/U b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/U
index a1abb4874af6b1f8edd6e8ecd5344cd643f3cf5e..cef053f055736ca828e089c1929fa0c3ee0cc929 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/U
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/alpha1.org b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/alpha1.org
index fbbc61ac18ab37928e7755f25d050e956bf28f39..a9e92e77c4c3af0e5a0f7ddc408f12be618bcfe2 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/alpha1.org
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/p b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/p
index dd16aa2b670d12ba08f55fbf4b8e1ced78409351..e1b9c008e5adcf3135bc993d9e971bc08b0e8aff 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/p
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict
index 49a0cf9faeca834874a0c502363e933b942962a4..348445a10789c12420610bdd95b9861f176375c9 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict.m4 b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict.m4
index 4060d827218afc9f062d6497beb2e5a68070624b..f16c37b1b9d60c338e8281031fdc9ec93fff6a5d 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict.m4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/U b/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/U
index a1abb4874af6b1f8edd6e8ecd5344cd643f3cf5e..cef053f055736ca828e089c1929fa0c3ee0cc929 100644
--- a/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/U
+++ b/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/alpha1.org b/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/alpha1.org
index fbbc61ac18ab37928e7755f25d050e956bf28f39..a9e92e77c4c3af0e5a0f7ddc408f12be618bcfe2 100644
--- a/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/alpha1.org
+++ b/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/p b/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/p
index dd16aa2b670d12ba08f55fbf4b8e1ced78409351..e1b9c008e5adcf3135bc993d9e971bc08b0e8aff 100644
--- a/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/p
+++ b/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/constant/polyMesh/blockMeshDict
index ed9075c3ac5c9b96088110e814a61e8b83a2fd06..e807f388d3e10c2999b2d93c92a987b06ab89156 100644
--- a/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interDyMFoam/ras/testTubeMixer/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/0/alpha1.org b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/0/alpha1.org
index b8cc18736b954697bdea7b70dc8613c25f94aead..6d51bd063a767c392789e9c90cfb99796263eccb 100644
--- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/0/alpha1.org
+++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/0/p b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/0/p
index db463ab1beeb742376195dfa8d4bb98efd3b4a08..4ea08586b90373f794eb501076a919e23e95050f 100644
--- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/0/p
+++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/MRFZones b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/MRFZones
index 0ef40d2fc80ced2fad0009ab2ab9eabfbb971dcc..2ed99cbdc2a4055e4b0cc3972eedd2eb78ea26a6 100644
--- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/MRFZones
+++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/MRFZones
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/polyMesh/blockMeshDict
index 552afa40de33acd0f931aaace5feb215741d4fbf..7081624ee2501a94f545fdb1d0d51e5182744959 100644
--- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4 b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
index 5175a4176531b0622e2fdc2862edce8f7fbf7115..1b90bac98f8d484b5e7b57a337e215036c0f8f39 100644
--- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/laminar/damBreak/0/U b/tutorials/multiphase/interFoam/laminar/damBreak/0/U
index 26852141c2105c1e29071bcfc24a91c920937a02..a916058a370e8ce307bd56507cb88481c2c71fc2 100644
--- a/tutorials/multiphase/interFoam/laminar/damBreak/0/U
+++ b/tutorials/multiphase/interFoam/laminar/damBreak/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/laminar/damBreak/0/alpha1 b/tutorials/multiphase/interFoam/laminar/damBreak/0/alpha1
index b7b66879d3d0b38c6c59dd7b83c039fb99bee862..0f40f11f1946b53589c8107de417b4c0cb59a882 100644
--- a/tutorials/multiphase/interFoam/laminar/damBreak/0/alpha1
+++ b/tutorials/multiphase/interFoam/laminar/damBreak/0/alpha1
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/laminar/damBreak/0/alpha1.org b/tutorials/multiphase/interFoam/laminar/damBreak/0/alpha1.org
index b7b66879d3d0b38c6c59dd7b83c039fb99bee862..0f40f11f1946b53589c8107de417b4c0cb59a882 100644
--- a/tutorials/multiphase/interFoam/laminar/damBreak/0/alpha1.org
+++ b/tutorials/multiphase/interFoam/laminar/damBreak/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/laminar/damBreak/0/p b/tutorials/multiphase/interFoam/laminar/damBreak/0/p
index b77bfe911838f761d5818a97593e1a4652949d22..57caa25d462df7e83225b29fa77594a5165c4274 100644
--- a/tutorials/multiphase/interFoam/laminar/damBreak/0/p
+++ b/tutorials/multiphase/interFoam/laminar/damBreak/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/laminar/damBreak/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interFoam/laminar/damBreak/constant/polyMesh/blockMeshDict
index a2553926d290a80076f1bf827324fd256d933b53..46ba31da890ae37a16f8487580bc78b1a11c9779 100644
--- a/tutorials/multiphase/interFoam/laminar/damBreak/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interFoam/laminar/damBreak/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/B b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/B
index ac37c4d02d24044e0960c88550ebc2d7101405ee..d569e87ce2372947b82397b24d4e67d2bc0f4d61 100644
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/B
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/B
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/U b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/U
index 2fbf889b498bda982e087def0be42d26ff08b351..481c06a662fb93be9cdd28272ad4af4b53fbe630 100644
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/U
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/alpha1 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/alpha1
index 555614b82952fa1f77ecabcf6daefdfb5806ccc4..add26afe4ba0a6a16ca2190959904e418f41ed69 100644
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/alpha1
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/alpha1
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/k b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/k
index d79a980fe357fa7122e27f64dc2e215d2da16741..15b10ced508ca45ca8932770d0b4a2d86578e280 100644
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/k
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/nuSgs b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/nuSgs
index 22a1a3ccae5dc14b4e1058a52b9127f452df20c8..93359824435693fc103e8848f474fb95b1f8dce1 100644
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/nuSgs
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/nuSgs
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/nuTilda b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/nuTilda
index eaf7f5fc9143d2983e43b16af8a6c75a10433074..204cfbb358dd60830a37c2707c85d4d2961eb3a5 100644
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/nuTilda
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/nuTilda
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/p b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/p
index 0785a10958c5a54833fd004125fa78c2dcbced82..a7a3b919fd2e37f08278e93a6ae56032fc6efb5a 100644
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/p
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/blockMeshDict
index 3da20b0cea9d0f22ec5ddfb6fe99c78499089e4e..771303be571436149aad6c541fa7784819786e6d 100644
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/boundary b/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/boundary
index ddc972e63dd9d1d54fdead750d5c0db63aaa70cc..a30c09779c8f782bd99351be67c787bf90f599e3 100644
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/boundary
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/boundary
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/boundary.org b/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/boundary.org
index ddc972e63dd9d1d54fdead750d5c0db63aaa70cc..a30c09779c8f782bd99351be67c787bf90f599e3 100644
--- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/boundary.org
+++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/constant/polyMesh/boundary.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/ras/damBreak/0/alpha1 b/tutorials/multiphase/interFoam/ras/damBreak/0/alpha1
index c48d7b029693a5da8eb4f9ee225f73825fd00783..b7dded56b09511294d775e9582c8609d60394a9a 100644
--- a/tutorials/multiphase/interFoam/ras/damBreak/0/alpha1
+++ b/tutorials/multiphase/interFoam/ras/damBreak/0/alpha1
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/ras/damBreak/0/alpha1.org b/tutorials/multiphase/interFoam/ras/damBreak/0/alpha1.org
index c48d7b029693a5da8eb4f9ee225f73825fd00783..b7dded56b09511294d775e9582c8609d60394a9a 100644
--- a/tutorials/multiphase/interFoam/ras/damBreak/0/alpha1.org
+++ b/tutorials/multiphase/interFoam/ras/damBreak/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/ras/damBreak/0/nuTilda b/tutorials/multiphase/interFoam/ras/damBreak/0/nuTilda
index d0e5e2e1c74c25aab5930377454730a1bbe56e5a..7727e252532cc1680cdf67618d6f0815f0a498cb 100644
--- a/tutorials/multiphase/interFoam/ras/damBreak/0/nuTilda
+++ b/tutorials/multiphase/interFoam/ras/damBreak/0/nuTilda
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/ras/damBreak/0/p b/tutorials/multiphase/interFoam/ras/damBreak/0/p
index b77bfe911838f761d5818a97593e1a4652949d22..57caa25d462df7e83225b29fa77594a5165c4274 100644
--- a/tutorials/multiphase/interFoam/ras/damBreak/0/p
+++ b/tutorials/multiphase/interFoam/ras/damBreak/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interFoam/ras/damBreak/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interFoam/ras/damBreak/constant/polyMesh/blockMeshDict
index a2553926d290a80076f1bf827324fd256d933b53..46ba31da890ae37a16f8487580bc78b1a11c9779 100644
--- a/tutorials/multiphase/interFoam/ras/damBreak/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interFoam/ras/damBreak/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/U b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/U
index 26852141c2105c1e29071bcfc24a91c920937a02..a916058a370e8ce307bd56507cb88481c2c71fc2 100644
--- a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/U
+++ b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha1.org b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha1.org
index f0bdefa8cddb1ae29fe7f3c675625c288f9a509e..18e74caf803a756c955ff7db6530c078558884eb 100644
--- a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha1.org
+++ b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha1.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha2.org b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha2.org
index 122e71dacedafedd83ea01b45380bc03d789950a..042ba2a84a36adcb9a8b6835b2cfe43561eba88c 100644
--- a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha2.org
+++ b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha2.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha3.org b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha3.org
index f3d69ec08266a13c1c1f9ce2a80b2f1bdb6655cd..aec86a3f98f693e1c0676bbe8d373a78fa8c3e0f 100644
--- a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha3.org
+++ b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/alpha3.org
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/p b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/p
index b77bfe911838f761d5818a97593e1a4652949d22..57caa25d462df7e83225b29fa77594a5165c4274 100644
--- a/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/p
+++ b/tutorials/multiphase/interMixingFoam/laminar/damBreak/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interMixingFoam/laminar/damBreak/constant/polyMesh/blockMeshDict b/tutorials/multiphase/interMixingFoam/laminar/damBreak/constant/polyMesh/blockMeshDict
index a2553926d290a80076f1bf827324fd256d933b53..46ba31da890ae37a16f8487580bc78b1a11c9779 100644
--- a/tutorials/multiphase/interMixingFoam/laminar/damBreak/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/interMixingFoam/laminar/damBreak/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/constant/turbulenceProperties b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/constant/turbulenceProperties
index 6f307153531a385db560448a48a7f21ca26fd423..3eb31bf607d6688b78bd807b92b72ae335050543 100644
--- a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/constant/turbulenceProperties
+++ b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/constant/turbulenceProperties
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/controlDict b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/controlDict
index 6262dc6bdea78f8d70b7fefa82aa9007334b9e04..d3b6f996b4f523bf5e0178a32f32403c87722931 100644
--- a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/controlDict
+++ b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/controlDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/fvSchemes b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/fvSchemes
index fc9f400f23e0a9e0a4ea746282bf093de9228c33..ae81912fbcf66fb1357f72e5bd158793316eab2d 100644
--- a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/fvSchemes
+++ b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/fvSchemes
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/fvSolution b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/fvSolution
index 169c2b903b951a54d8a23b402e217f8f220088f4..dc1aeecc04bd6313d795f52ec6015803b0aed9c4 100644
--- a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/fvSolution
+++ b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/fvSolution
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/snappyHexMeshDict b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/snappyHexMeshDict
index 9e2f08ee67ce1e0b4cf9ef220e8e39b6eaee3e8b..2760a6814dbadd52593f970a7ab8109924d9ce0c 100644
--- a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/snappyHexMeshDict
+++ b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/snappyHexMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0/alphaair b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0/alphaair
index 7dace65475ae4c95b188783215901fd25b7e5312..9085d9c1842382919f126364b320ac126019a283 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0/alphaair
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0/alphaair
@@ -16,7 +16,7 @@ FoamFile
 
 dimensions      [0 0 0 0 0 0 0];
 
-internalField   nonuniform List<scalar> 
+internalField   nonuniform List<scalar>
 2268
 (
 0
@@ -2294,19 +2294,19 @@ boundaryField
 {
     leftWall
     {
-        type            alphaContactAngle;
+        type            multiphaseAlphaContactAngle;
         thetaProperties ( ( water air ) 90 0 0 0 ( oil air ) 90 0 0 0 ( mercury air ) 90 0 0 0 ( water oil ) 90 0 0 0 ( water mercury ) 90 0 0 0 ( oil mercury ) 90 0 0 0 );
         value           uniform 0;
     }
     rightWall
     {
-        type            alphaContactAngle;
+        type            multiphaseAlphaContactAngle;
         thetaProperties ( ( water air ) 90 0 0 0 ( oil air ) 90 0 0 0 ( mercury air ) 90 0 0 0 ( water oil ) 90 0 0 0 ( water mercury ) 90 0 0 0 ( oil mercury ) 90 0 0 0 );
         value           uniform 0;
     }
     lowerWall
     {
-        type            alphaContactAngle;
+        type            multiphaseAlphaContactAngle;
         thetaProperties ( ( water air ) 90 0 0 0 ( oil air ) 90 0 0 0 ( mercury air ) 90 0 0 0 ( water oil ) 90 0 0 0 ( water mercury ) 90 0 0 0 ( oil mercury ) 90 0 0 0 );
         value           uniform 0;
     }
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0/alphas b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0/alphas
index aab82d6b24378b4e5a4f3b075f51dbbf74e15e38..a0f116ae898be6d1c40a24645156f269200ce7a0 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0/alphas
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/0/alphas
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
+|  \\    /   O peration     | Version:  dev                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/constant/polyMesh/boundary b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/constant/polyMesh/boundary
index ff361faec56d1bacf42f5872e7dd6e478d2cfd78..41c06d5f3f4d03c47e0a53a8d3008451786eda15 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/constant/polyMesh/boundary
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/constant/polyMesh/boundary
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
+|  \\    /   O peration     | Version:  dev                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/constant/transportProperties b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/constant/transportProperties
index 8f819f80d12aadbb404ca07ac1f846ef60301e90..006aaccab71dc6e138e12960d86095d4b76681cc 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/constant/transportProperties
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/constant/transportProperties
@@ -15,11 +15,48 @@ FoamFile
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-phases          ( water { transportModel Newtonian ; nu nu [ 0 2 -1 0 0 0 0 ] 1e-06 ; rho rho [ 1 -3 0 0 0 0 0 ] 1000 ; } oil { transportModel Newtonian ; nu nu [ 0 2 -1 0 0 0 0 ] 1e-06 ; rho rho [ 1 -3 0 0 0 0 0 ] 500 ; } mercury { transportModel Newtonian ; nu nu [ 0 2 -1 0 0 0 0 ] 1.125e-07 ; rho rho [ 1 -3 0 0 0 0 0 ] 13529 ; } air { transportModel Newtonian ; nu nu [ 0 2 -1 0 0 0 0 ] 1.48e-05 ; rho rho [ 1 -3 0 0 0 0 0 ] 1 ; } );
+phases
+(
+    water
+    {
+        transportModel Newtonian;
+        nu nu [ 0 2 -1 0 0 0 0 ] 1e-06;
+        rho rho [ 1 -3 0 0 0 0 0 ] 1000;
+    }
+
+    oil
+    {
+        transportModel Newtonian;
+        nu nu [ 0 2 -1 0 0 0 0 ] 1e-06;
+        rho rho [ 1 -3 0 0 0 0 0 ] 500;
+    }
+
+    mercury
+    {
+        transportModel Newtonian;
+        nu nu [ 0 2 -1 0 0 0 0 ] 1.125e-07;
+        rho rho [ 1 -3 0 0 0 0 0 ] 13529;
+    }
+
+    air
+    {
+        transportModel Newtonian;
+        nu nu [ 0 2 -1 0 0 0 0 ] 1.48e-05;
+        rho rho [ 1 -3 0 0 0 0 0 ] 1;
+    }
+);
 
 refPhase        air;
 
-sigmas          ( ( air water ) 0.07 ( air oil ) 0.07 ( air mercury ) 0.07 ( water oil ) 0.07 ( water mercury ) 0.07 ( oil mercury ) 0.07 );
+sigmas
+(
+    (air water) 0.07
+    (air oil) 0.07
+    (air mercury) 0.07
+    (water oil) 0.07
+    (water mercury) 0.07
+    (oil mercury) 0.07
+);
 
 
 // ************************************************************************* //
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/fvSchemes b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/fvSchemes
index 4cb658ebdea64bcf30c24de841c831ff2d65265b..122c8a0127c5c59edaa7a1415ff9a0fb6ca9f543 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/fvSchemes
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/fvSchemes
@@ -30,7 +30,7 @@ gradSchemes
 divSchemes
 {
     div(rho*phi,U)  Gauss upwind;
-    div(phi,alpha)  Gauss limitedLimitedLinear 1 -1e-05 1.00001;
+    div(phi,alpha)  Gauss vanLeer;
     div(phic,alpha) Gauss interfaceCompression;
 }
 
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/fvSolution b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/fvSolution
index 8b11d7fe20b47de8a2ac521b05e5aed6e0ab4f7f..08294be3422188ce242346a33f12e879d846d2bd 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/fvSolution
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/fvSolution
@@ -94,7 +94,7 @@ PISO
     nAlphaCorr      4;
     nAlphaSubCycles 4;
     cycleAlpha      yes;
-    cAlpha          4;
+    cAlpha          2;
 }
 
 
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/U b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/U
index 99656a7c348523b11a7102e4bd809200d642c64e..95fe4a50d1c70b7f75173cd96887777328f9ad43 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/U
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphaair b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphaair
index 4441a5df02834013b4b03c67331f333e4b386e7e..83693b7b8e871c965e18d2f56cb0b9d2692149d5 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphaair
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphaair
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphamercury b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphamercury
index 9f2ae07b73c3a40a0d072d9e6aa392043f4b8ce6..171627ee36f238e3be088640c1405571d317e858 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphamercury
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphamercury
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphaoil b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphaoil
index 0caca07b5fd4374b22dfd6493d57382492e68af3..3ba2034d4a23461be4a44bcc1dae5d1c0569e614 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphaoil
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphaoil
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphas b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphas
index 1175f827f3fb4c44fd459f58c880701f98b696a4..4184b5fb204db59760fe1b648d62d88156f59250 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphas
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphas
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
+|  \\    /   O peration     | Version:  dev                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphawater b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphawater
index 500a8c8e7b0f5c78ab07a8f734162f398df1eccb..9b6fd85338601e10916c9e0103fde69b942f2c36 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphawater
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/alphawater
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/p b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/p
index b77bfe911838f761d5818a97593e1a4652949d22..57caa25d462df7e83225b29fa77594a5165c4274 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/p
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/polyMesh/blockMeshDict b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/polyMesh/blockMeshDict
index 2133317874dda05202a10c4a7864952640493805..9bf44fd6f6662381785e175ee817cc02dd0e1033 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/polyMesh/boundary b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/polyMesh/boundary
index 265dfa013fe5aef91a703c9842d4dd829865fb79..04429b16df52a30539b01ed1deef6ba5f46a118b 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/polyMesh/boundary
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/polyMesh/boundary
@@ -1,7 +1,7 @@
 /*--------------------------------*- C++ -*----------------------------------*\
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
-|  \\    /   O peration     | Version:  1.6                                   |
+|  \\    /   O peration     | Version:  dev                                   |
 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/transportProperties b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/transportProperties
index 8f819f80d12aadbb404ca07ac1f846ef60301e90..006aaccab71dc6e138e12960d86095d4b76681cc 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/transportProperties
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/constant/transportProperties
@@ -15,11 +15,48 @@ FoamFile
 }
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-phases          ( water { transportModel Newtonian ; nu nu [ 0 2 -1 0 0 0 0 ] 1e-06 ; rho rho [ 1 -3 0 0 0 0 0 ] 1000 ; } oil { transportModel Newtonian ; nu nu [ 0 2 -1 0 0 0 0 ] 1e-06 ; rho rho [ 1 -3 0 0 0 0 0 ] 500 ; } mercury { transportModel Newtonian ; nu nu [ 0 2 -1 0 0 0 0 ] 1.125e-07 ; rho rho [ 1 -3 0 0 0 0 0 ] 13529 ; } air { transportModel Newtonian ; nu nu [ 0 2 -1 0 0 0 0 ] 1.48e-05 ; rho rho [ 1 -3 0 0 0 0 0 ] 1 ; } );
+phases
+(
+    water
+    {
+        transportModel Newtonian;
+        nu nu [ 0 2 -1 0 0 0 0 ] 1e-06;
+        rho rho [ 1 -3 0 0 0 0 0 ] 1000;
+    }
+
+    oil
+    {
+        transportModel Newtonian;
+        nu nu [ 0 2 -1 0 0 0 0 ] 1e-06;
+        rho rho [ 1 -3 0 0 0 0 0 ] 500;
+    }
+
+    mercury
+    {
+        transportModel Newtonian;
+        nu nu [ 0 2 -1 0 0 0 0 ] 1.125e-07;
+        rho rho [ 1 -3 0 0 0 0 0 ] 13529;
+    }
+
+    air
+    {
+        transportModel Newtonian;
+        nu nu [ 0 2 -1 0 0 0 0 ] 1.48e-05;
+        rho rho [ 1 -3 0 0 0 0 0 ] 1;
+    }
+);
 
 refPhase        air;
 
-sigmas          ( ( air water ) 0.07 ( air oil ) 0.07 ( air mercury ) 0.07 ( water oil ) 0.07 ( water mercury ) 0.07 ( oil mercury ) 0.07 );
+sigmas
+(
+    (air water) 0.07
+    (air oil) 0.07
+    (air mercury) 0.07
+    (water oil) 0.07
+    (water mercury) 0.07
+    (oil mercury) 0.07
+);
 
 
 // ************************************************************************* //
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/fvSchemes b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/fvSchemes
index 4cb658ebdea64bcf30c24de841c831ff2d65265b..122c8a0127c5c59edaa7a1415ff9a0fb6ca9f543 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/fvSchemes
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/fvSchemes
@@ -30,7 +30,7 @@ gradSchemes
 divSchemes
 {
     div(rho*phi,U)  Gauss upwind;
-    div(phi,alpha)  Gauss limitedLimitedLinear 1 -1e-05 1.00001;
+    div(phi,alpha)  Gauss vanLeer;
     div(phic,alpha) Gauss interfaceCompression;
 }
 
diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/fvSolution b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/fvSolution
index 8b11d7fe20b47de8a2ac521b05e5aed6e0ab4f7f..af2be2341de3c740b9bac494e81f5a829b3984ae 100644
--- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/fvSolution
+++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/fvSolution
@@ -81,7 +81,7 @@ solvers
     {
         solver          smoothSolver;
         smoother        GaussSeidel;
-        tolerance       1e-08;
+        tolerance       1e-9;
         relTol          0;
         nSweeps         1;
     }
@@ -94,7 +94,7 @@ PISO
     nAlphaCorr      4;
     nAlphaSubCycles 4;
     cycleAlpha      yes;
-    cAlpha          4;
+    cAlpha          2;
 }
 
 
diff --git a/tutorials/multiphase/settlingFoam/ras/dahl/0/U b/tutorials/multiphase/settlingFoam/ras/dahl/0/U
index a0a0043af1b42aafb9d3f5dccd99d9edcbf12f3c..097104af65f5bcca212e7ea7945cb6dff1a1d0a4 100644
--- a/tutorials/multiphase/settlingFoam/ras/dahl/0/U
+++ b/tutorials/multiphase/settlingFoam/ras/dahl/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/settlingFoam/ras/dahl/0/alpha b/tutorials/multiphase/settlingFoam/ras/dahl/0/alpha
index ca6b9f8f7a0181e912ba0a0b4bc5c24a1af6a435..071ae37fd7a8956a6a11658f2dc264068e2b5de7 100644
--- a/tutorials/multiphase/settlingFoam/ras/dahl/0/alpha
+++ b/tutorials/multiphase/settlingFoam/ras/dahl/0/alpha
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/settlingFoam/ras/dahl/0/epsilon b/tutorials/multiphase/settlingFoam/ras/dahl/0/epsilon
index 27b4ba3c1fee38db5552a5b98879866b91e704bd..45dd8a227924a3899b95f87938f078b70a242ca1 100644
--- a/tutorials/multiphase/settlingFoam/ras/dahl/0/epsilon
+++ b/tutorials/multiphase/settlingFoam/ras/dahl/0/epsilon
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/settlingFoam/ras/dahl/0/k b/tutorials/multiphase/settlingFoam/ras/dahl/0/k
index 6bd1a6b4164ecbd395f3ec1b861933536b211248..c4746372dd43b34b93bd3af0ee8f867b0da952d5 100644
--- a/tutorials/multiphase/settlingFoam/ras/dahl/0/k
+++ b/tutorials/multiphase/settlingFoam/ras/dahl/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/settlingFoam/ras/dahl/0/pmh b/tutorials/multiphase/settlingFoam/ras/dahl/0/pmh
index a2a965130f57a71e8bc7cc3d8126c8fdedfe7143..ffffdae8050ddf66fa82135b2b0240df23062148 100644
--- a/tutorials/multiphase/settlingFoam/ras/dahl/0/pmh
+++ b/tutorials/multiphase/settlingFoam/ras/dahl/0/pmh
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/settlingFoam/ras/dahl/constant/polyMesh/blockMeshDict b/tutorials/multiphase/settlingFoam/ras/dahl/constant/polyMesh/blockMeshDict
index 28b3bb25feafd4b3209bb37a2db1dfc8e73e9fd6..d4e6e63e58d55a7b691f6f4d5aa80802657b6a68 100644
--- a/tutorials/multiphase/settlingFoam/ras/dahl/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/settlingFoam/ras/dahl/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/settlingFoam/ras/tank3D/0/U b/tutorials/multiphase/settlingFoam/ras/tank3D/0/U
index bac98acc6cf42017b1c0653f92effee12092e5ec..2225c01c349c8d7a9fa054058f1e1caf7d9c91b1 100644
--- a/tutorials/multiphase/settlingFoam/ras/tank3D/0/U
+++ b/tutorials/multiphase/settlingFoam/ras/tank3D/0/U
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/settlingFoam/ras/tank3D/0/alpha b/tutorials/multiphase/settlingFoam/ras/tank3D/0/alpha
index 18e136580a964dceebcfebe1bd472da6c9f29167..cfdaca1e1ee05656ad963fe6329b204bf59d2bcd 100644
--- a/tutorials/multiphase/settlingFoam/ras/tank3D/0/alpha
+++ b/tutorials/multiphase/settlingFoam/ras/tank3D/0/alpha
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/settlingFoam/ras/tank3D/0/epsilon b/tutorials/multiphase/settlingFoam/ras/tank3D/0/epsilon
index 634512f95121d036d093ba8d760b5f2f10b80dd5..05ba38c6462e2fbe136addeb22aaeceb81805c23 100644
--- a/tutorials/multiphase/settlingFoam/ras/tank3D/0/epsilon
+++ b/tutorials/multiphase/settlingFoam/ras/tank3D/0/epsilon
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/settlingFoam/ras/tank3D/0/k b/tutorials/multiphase/settlingFoam/ras/tank3D/0/k
index 5bc3ea2d5113c3a8905e20e0ba0716313fd42caa..d41ccc00f1e08ab75338ee3e22291e01407640b9 100644
--- a/tutorials/multiphase/settlingFoam/ras/tank3D/0/k
+++ b/tutorials/multiphase/settlingFoam/ras/tank3D/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/settlingFoam/ras/tank3D/0/pmh b/tutorials/multiphase/settlingFoam/ras/tank3D/0/pmh
index fafd5b9bb17ae18c697ad721c315d8d96f7b9246..b6d7779938edbbbf1244740b68f8c0a599f3af4f 100644
--- a/tutorials/multiphase/settlingFoam/ras/tank3D/0/pmh
+++ b/tutorials/multiphase/settlingFoam/ras/tank3D/0/pmh
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/settlingFoam/ras/tank3D/constant/polyMesh/boundary b/tutorials/multiphase/settlingFoam/ras/tank3D/constant/polyMesh/boundary
index 5d48248b2e6256ca95f170cfbc3b177570cb0ef9..931b4164387e42d2ddbe4004d81d1f6ae9da5851 100644
--- a/tutorials/multiphase/settlingFoam/ras/tank3D/constant/polyMesh/boundary
+++ b/tutorials/multiphase/settlingFoam/ras/tank3D/constant/polyMesh/boundary
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Theta b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Theta
index 6ba52b9f30f792bb8ddcdbd677a768553bba98a8..9dc4815fc918485283cb32b4c897f47b88bf044c 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Theta
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Theta
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Ua b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Ua
index 6ee0d6d1bc0867b7b766b1d129203c9b169e597d..8cddab864b83d3475b21cf9a3fbc5e46c77f8564 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Ua
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Ua
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Ub b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Ub
index a34a308197ab5754cbd00542ac5581f317dbf16d..52e464a1ddb0c6ebf6d6334e5fa2e1b4c17c9ad6 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Ub
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/Ub
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/alpha b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/alpha
index 3ad8dd0aa24279878215d811d9689b3bfd121155..bc06977aed1fa265ac2ecffea37a62ca2dbbc63f 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/alpha
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/alpha
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/epsilon b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/epsilon
index 55f4ac67865ca168e153abb2655d264f3e398dfc..c143a8d49182d400306030f53eb1ffc096bf65d8 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/epsilon
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/epsilon
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/k b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/k
index 48e7b295ae545451946021f62258a18b620381bb..4d63bf283efff9e2664d7c3fa430c3660685b6e6 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/k
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/p b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/p
index 2028ac422a7408a27dc7c68640ed556aba041350..48de7326de1cb721d5fff94879e09c2df03340ec 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed/0/p
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed/constant/polyMesh/blockMeshDict b/tutorials/multiphase/twoPhaseEulerFoam/bed/constant/polyMesh/blockMeshDict
index 46813128f98b90b02f725448f9bfbde55811c653..b53f84028277a7401faab658e48e6901781e279e 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Theta b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Theta
index 3a01b0c106bb6b8713769cfdc23b4716d0ed9cc2..2ddeacd71853d7db1ad0ba26f06398c8bf6b38f1 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Theta
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Theta
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Ua b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Ua
index 1826401e4e088b2df1d831252be246e4d668606a..10968909fed15ae0373bd1a35a6b48c4080fb237 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Ua
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Ua
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Ub b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Ub
index 7914675720f5c1bb42d84f103dbddc745225e68c..47c04d80f674a696a262bfb75ac1076d56ed6bcc 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Ub
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/Ub
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/alpha b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/alpha
index 55975fe34db8ca656444e6ed83282f4b225874a0..e156448740ecd2efa2c4165137df18809e790cc9 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/alpha
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/alpha
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/epsilon b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/epsilon
index c29b1859e83d580210edfa6ded2a438bc5123802..8e2ed5e86095b10528cabf2a46956a29da4c6c1e 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/epsilon
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/epsilon
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/k b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/k
index 9a8dbe0f01f14262c6c1a31345b8bdbc19761843..cf6be6bb426131da3c1c72d55fc1ed76cc3701e2 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/k
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/p b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/p
index 658b9abcc3b62915f66ca312e38f09ba62a1940d..f52ff703e023075931a55fe6b0af6869755249cd 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/p
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed2/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bed2/constant/polyMesh/blockMeshDict b/tutorials/multiphase/twoPhaseEulerFoam/bed2/constant/polyMesh/blockMeshDict
index 8188166eff363d27e79b12fb1cd78db590ca20fd..196f5c7f97d4245321c5ce128e9f47c38c9556bf 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bed2/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bed2/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Theta b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Theta
index b177c93a4bac42a54feb405c87491e8476d2be8d..700d77bb8d5f70a23bad1242e88e0943ce85de82 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Theta
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Theta
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Ua b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Ua
index 7c7c20286a6ae5416428b73d15f7e84057082368..6034d0c751fee599bf3ed21866ca09d1a7b274c1 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Ua
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Ua
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Ub b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Ub
index 858e81fca7c37d0df55490e116c9cd1892397577..0d22e95a26663ced3209d036e31d5b726ae3de2c 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Ub
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/Ub
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/alpha b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/alpha
index 23a28e0e408b989b75d0891d41375e5be5b2d807..0f2b2147503225b8c01030d9d710995bf9ff5114 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/alpha
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/alpha
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/epsilon b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/epsilon
index 74d99a034100cd6f3a317549ad53e528f4403365..dd4026c3f1d0d0e39886bd5bbb0cc18afccbef16 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/epsilon
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/epsilon
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/k b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/k
index d1cf75982549a3d3f4a211c8908ba743020edf53..2613426bdcef7031fd71e0ae3e5b97899049a658 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/k
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/k
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/p b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/p
index fd48cfbe77496428f70b3eccc88aaf292b780a54..3af4d065e414ba0b9b8e4e0375c6d56877eebbc1 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/p
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/constant/polyMesh/blockMeshDict b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/constant/polyMesh/blockMeshDict
index 226eff6239f25279b01193d1d4670d6511b26cd7..8211d45402c996591a24f2f5b9d442f3a6437491 100644
--- a/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/constant/polyMesh/blockMeshDict
+++ b/tutorials/multiphase/twoPhaseEulerFoam/bubbleColumn/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/0/D b/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/0/D
index 0b4e256c715754d7327c9318e59883dac2602560..918606efcabb91e968cc0391f580353d01e377b4 100644
--- a/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/0/D
+++ b/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/0/D
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/0/T b/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/0/T
index 8abec760d6f831a90ae4995f4768fa6a5282e9b2..e31bae514f29e555bc3ffe03dac7b397e9daf8f3 100644
--- a/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/0/T
+++ b/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/0/T
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/constant/polyMesh/blockMeshDict b/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/constant/polyMesh/blockMeshDict
index 76c0da85fc320d1f1a34a39660e1dd738f28442b..acc15964b320065368a05c32e1d6904271f72329 100644
--- a/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/constant/polyMesh/blockMeshDict
+++ b/tutorials/stressAnalysis/solidDisplacementFoam/plateHole/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/0/D b/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/0/D
index 5e3af9404b4c1e0a58f9f838cd93463db2727df0..e04a2bbc2b44c1e04b5d49d6f76965a4baa618d9 100644
--- a/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/0/D
+++ b/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/0/D
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/0/p b/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/0/p
index c1c8677397a34c81d8dcce56032219f8688a3e26..bd9e60862e8067b4425b3eb014d9663ad96cb259 100644
--- a/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/0/p
+++ b/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/0/p
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/constant/polyMesh/blockMeshDict b/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/constant/polyMesh/blockMeshDict
index 633de6a4063f40106423584f4cbec1f45a5023db..6ce7fc85b2bda9e090c3d40de6d49c7da254ea23 100644
--- a/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/constant/polyMesh/blockMeshDict
+++ b/tutorials/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad/constant/polyMesh/blockMeshDict
@@ -2,7 +2,7 @@
 | =========                 |                                                 |
 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
 |  \\    /   O peration     | Version:  1.6                                   |
-|   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
+|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
 |    \\/     M anipulation  |                                                 |
 \*---------------------------------------------------------------------------*/
 FoamFile
diff --git a/wmake/wmakeFilesAndOptions b/wmake/wmakeFilesAndOptions
index 61984eea074355dcf4c1413275c97ebb39b1a5ba..d2e8cf29c22f05dae193f07f7deb66a89353453c 100755
--- a/wmake/wmakeFilesAndOptions
+++ b/wmake/wmakeFilesAndOptions
@@ -26,7 +26,7 @@
 #     wmakeFilesAndOptions
 #
 # Description
-#     Script to scan the current directory for directories and source files
+#     Scan current directory for directories and source files
 #     and construct Make/files and Make/options
 #
 #     Usage : wmakeFilesAndOptions
@@ -34,6 +34,39 @@
 #------------------------------------------------------------------------------
 Script=${0##*/}
 
+usage() {
+    while [ "$#" -ge 1 ]; do echo "$1"; shift; done
+    cat<<USAGE
+
+usage: ${0##*/}
+
+    Scan current directory for directories and source files
+    and construct 'Make/files' and 'Make/options'
+
+USAGE
+    exit 1
+}
+
+
+# simple parse options
+while [ "$#" -gt 0 ]
+do
+    case "$1" in
+    -h | -help)   # provide immediate help
+        usage
+        ;;
+    -*)
+        usage "unknown option: '$*'"
+        ;;
+    *)
+        break
+        ;;
+    esac
+done
+
+# no arguments
+[ "$#" -eq 0 ] || usage "unexpected arguments: '$*'"
+
 #
 # check environment variables
 #
diff --git a/wmake/wmakeFindEmptyMake b/wmake/wmakeFindEmptyMake
new file mode 100755
index 0000000000000000000000000000000000000000..d6edb387d8ca93bad66de8e65dad426e4cf29bb2
--- /dev/null
+++ b/wmake/wmakeFindEmptyMake
@@ -0,0 +1,87 @@
+#!/bin/sh
+#------------------------------------------------------------------------------
+# =========                 |
+# \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+#  \\    /   O peration     |
+#   \\  /    A nd           | Copyright (C) 2010-2010 OpenCFD Ltd.
+#    \\/     M anipulation  |
+#-------------------------------------------------------------------------------
+# License
+#     This file is part of OpenFOAM.
+#
+#     OpenFOAM is free software: you can redistribute it and/or modify it
+#     under the terms of the GNU General Public License as published by
+#     the Free Software Foundation, either version 3 of the License, or
+#     (at your option) any later version.
+#
+#     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+#     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+#     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+#     for more details.
+#
+#     You should have received a copy of the GNU General Public License
+#     along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
+#
+# Script
+#     wmakeFindEmptyMake
+#
+# Description
+#     Find 'Make/' directories without 'files' or 'options'.
+#     These typically correspond to (partially) removed applications.
+#
+#------------------------------------------------------------------------------
+usage() {
+    while [ "$#" -ge 1 ]; do echo "$1"; shift; done
+    cat<<USAGE
+
+usage: ${0##*/} [dir1 .. dirN]
+
+    Find 'Make/' directories without 'files' or 'options'.
+    These typically correspond to (partially) removed applications.
+
+USAGE
+    exit 1
+}
+
+#------------------------------------------------------------------------------
+findName=lnInclude
+
+# simple parse options
+while [ "$#" -gt 0 ]
+do
+    case "$1" in
+    -h | -help)   # provide immediate help
+        usage
+        ;;
+    -*)
+        usage "unknown option: '$*'"
+        ;;
+    *)
+        break
+        ;;
+    esac
+done
+
+
+# default to searching from pwd
+[ "$#" -gt 0 ] || set -- .
+
+for checkDir
+do
+    if [ -d $checkDir ]
+    then
+        echo "searching: $checkDir for 'Make' directories without 'files' or 'options'" 1>&2
+        echo "---------" 1>&2
+    else
+        echo "skipping non-dir: $checkDir" 1>&2
+        echo "----------------" 1>&2
+        continue
+    fi
+
+    find $checkDir -depth -type d -name Make -print | while read MakeDir
+    do
+        [ -f "$MakeDir/files" -o -f "$MakeDir/options" ] || echo $MakeDir
+    done
+done
+
+#------------------------------------------------------------------------------