diff --git a/applications/solvers/incompressible/boundaryFoam/boundaryFoam.C b/applications/solvers/incompressible/boundaryFoam/boundaryFoam.C
index b9b46a3cc9472054bf10081efbf02945192cfb5c..19933091a0517bfd983bb935f2acc9d7f15a7a19 100644
--- a/applications/solvers/incompressible/boundaryFoam/boundaryFoam.C
+++ b/applications/solvers/incompressible/boundaryFoam/boundaryFoam.C
@@ -26,8 +26,8 @@ Application
     boundaryFoam
 
 Description
-    Steady-state solver for 1D turbulent flow, typically to generate boundary 
-    layer conditions at an inlet, for use in a simulation. 
+    Steady-state solver for 1D turbulent flow, typically to generate boundary
+    layer conditions at an inlet, for use in a simulation.
 
     Boundary layer code to calculate the U, k and epsilon distributions.
     Used to create inlet boundary conditions for experimental comparisons
@@ -82,11 +82,14 @@ int main(int argc, char *argv[])
         U += (Ubar - UbarStar);
         gradP += (Ubar - UbarStar)/(1.0/UEqn.A())().weightedAverage(mesh.V());
 
+        label id = y.size() - 1;
+
         scalar wallShearStress =
-            flowDirection & turbulence->R()()[0] & wallNormal;
+            flowDirection & turbulence->R()()[id] & wallNormal;
 
         scalar yplusWall
-            = ::sqrt(mag(wallShearStress))*y[0]/laminarTransport.nu()()[0];
+//            = ::sqrt(mag(wallShearStress))*y[id]/laminarTransport.nu()()[id];
+            = ::sqrt(mag(wallShearStress))*y[id]/turbulence->nuEff()()[id];
 
         Info<< "Uncorrected Ubar = " << (flowDirection & UbarStar.value())<< tab
             << "pressure gradient = " << (flowDirection & gradP.value()) << tab
diff --git a/applications/solvers/incompressible/channelOodles/createGradP.H b/applications/solvers/incompressible/channelOodles/createGradP.H
index c1dd63f92baa3f1165c2f6ab1dfcb0bd8969cf65..9bb9bb0ba28f974c967e9f82a2b649fc2a032ebb 100644
--- a/applications/solvers/incompressible/channelOodles/createGradP.H
+++ b/applications/solvers/incompressible/channelOodles/createGradP.H
@@ -8,7 +8,7 @@
 
     IFstream gradPFile
     (
-        runTime.path()/runTime.timeName()/"gradP.raw"
+        runTime.path()/runTime.timeName()/"uniform"/"gradP.raw"
     );
 
     if(gradPFile.good())
diff --git a/applications/solvers/incompressible/channelOodles/writeGradP.H b/applications/solvers/incompressible/channelOodles/writeGradP.H
index 99eb5a01fa845907c545c63a9d8ca6c227f8d5d1..c82dd534740b6c8db6258f572768b5c081a7e735 100644
--- a/applications/solvers/incompressible/channelOodles/writeGradP.H
+++ b/applications/solvers/incompressible/channelOodles/writeGradP.H
@@ -2,7 +2,7 @@
     {
         OFstream gradPFile
         (
-            runTime.path()/runTime.timeName()/"gradP.raw"
+            runTime.path()/runTime.timeName()/"uniform"/"gradP.raw"
         );
 
         if(gradPFile.good())
@@ -13,7 +13,7 @@
         {
             FatalErrorIn(args.executable())
                 << "Cannot open file "
-                << runTime.path()/runTime.timeName()/"gradP.raw"
+                << runTime.path()/runTime.timeName()/"uniform"/"gradP.raw"
                 << exit(FatalError);
         };
     };
diff --git a/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L b/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L
index a8cb5dbb98c5fd559d4001b5b981f99057f00295..46eb810e0549e4f980e2aa626fcb433c663cbd52 100644
--- a/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L
+++ b/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L
@@ -187,21 +187,21 @@ time                       ({digit}{digit}":"{digit}{digit}":"{digit}{digit})
 
 versionNumber              ({digit}|".")*
 
-header                     {spaceNl}"(1"{some_space}
-dimension                  {spaceNl}"(2"{some_space}
-points                     {spaceNl}"(10"{some_space}
-faces                      {spaceNl}"(13"{some_space}
-cells                      {spaceNl}"(12"{some_space}
-zoneVariant1               {spaceNl}"(39"{some_space}
-zoneVariant2               {spaceNl}"(45"{some_space}
-faceTree                   {spaceNl}"(59"{some_space}
-
-comment                    "0"{some_space}
-unknownPeriodicFace        "17"{some_space}
-periodicFace               "18"{some_space}
-cellTree                   "58"{some_space}
-faceParents                "61"{some_space}
-ignoreBlocks               ("4"|"37"|"38"|"41"|"60"|"64"){some_space}
+header                     {spaceNl}"(1"{space}
+dimension                  {spaceNl}"(2"{space}
+points                     {spaceNl}"(10"{space}
+faces                      {spaceNl}"(13"{space}
+cells                      {spaceNl}"(12"{space}
+zoneVariant1               {spaceNl}"(39"{space}
+zoneVariant2               {spaceNl}"(45"{space}
+faceTree                   {spaceNl}"(59"{space}
+
+comment                    "0"{space}
+unknownPeriodicFace        "17"{space}
+periodicFace               "18"{space}
+cellTree                   "58"{space}
+faceParents                "61"{space}
+ignoreBlocks               ("4"|"37"|"38"|"41"|"60"|"64"){space}
 
 redundantBlock             {spaceNl}({comment}|{unknownPeriodicFace}|{periodicFace}|{cellTree}|{faceParents}|{ignoreBlocks}){space}
 
diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightField.C b/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightField.C
index 5238e9ed2655cf6d33aba06970cbc1e9492f6b40..ef1db03c6c745e27727da37a6dadc60d65cce7de 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightField.C
+++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightField.C
@@ -405,9 +405,9 @@ void writePatchField
 {
     const Time& runTime = eMesh.mesh().time();
 
-    const List<faceSets>& boundaryFaceSets = eMesh.boundaryFaceSets;
-    const HashTable<labelList>& allPatchNames = eMesh.allPatchNames;
-    const HashTable<label>& patchIndices = eMesh.patchIndices;
+    const List<faceSets>& boundaryFaceSets = eMesh.boundaryFaceSets();
+    const HashTable<labelList>& allPatchNames = eMesh.allPatchNames();
+    const HashTable<label>& patchIndices = eMesh.patchIndices();
     const HashTable<ensightMesh::nFacePrimitives>&
         nPatchPrims = eMesh.nPatchPrims();
 
diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightMesh.H b/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightMesh.H
index d37fd18b75e3c910d7f0c128eb2af982affb4d89..cd37367cbe9e74fb7969dc9c1a4d71c8e25e9a7d 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightMesh.H
+++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightMesh.H
@@ -88,9 +88,6 @@ class ensightMesh
 
         List<faceSets> boundaryFaceSets_;
 
-
-
-
         HashTable<labelList> allPatchNames_;
 
         HashTable<label> patchIndices_;
@@ -246,9 +243,8 @@ public:
         ensightMesh(const fvMesh&, const argList& args, const bool binary);
 
 
-    // Destructor
-
-        ~ensightMesh();
+    //- Destructor
+    ~ensightMesh();
 
 
     // Member Functions
diff --git a/applications/utilities/postProcessing/miscellaneous/postChannel/postChannelDict b/applications/utilities/postProcessing/miscellaneous/postChannel/postChannelDict
index 1785207adc50cfd66ffb6d0eb1fcfe4660b4d437..4c528ea24303edeb7b3d0e8f9abd296a1303be56 100644
--- a/applications/utilities/postProcessing/miscellaneous/postChannel/postChannelDict
+++ b/applications/utilities/postProcessing/miscellaneous/postChannel/postChannelDict
@@ -15,11 +15,13 @@ FoamFile
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-Nx    40;
-Ny
-(
-    50
-);
-Nz    30;
+Nx 40; 
+Ny 
+( 
+ 25 
+ 25 
+); 
+Nz 30; 
+ 
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/Make/files b/src/finiteVolume/Make/files
index 83dff1819d92b4278634161f95422ae20fcd81ee..64565a192f08acd40e7e50b8767d0b73a674eb92 100644
--- a/src/finiteVolume/Make/files
+++ b/src/finiteVolume/Make/files
@@ -186,6 +186,7 @@ $(limitedSchemes)/MC/MC.C
 $(limitedSchemes)/Phi/Phi.C
 $(limitedSchemes)/filteredLinear/filteredLinear.C
 $(limitedSchemes)/filteredLinear2/filteredLinear2.C
+$(limitedSchemes)/filteredLinear3/filteredLinear3.C
 
 multivariateSchemes = $(surfaceInterpolation)/multivariateSchemes
 $(multivariateSchemes)/multivariateSurfaceInterpolationScheme/multivariateSurfaceInterpolationSchemes.C
diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/filteredLinear3/filteredLinear3.C b/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/filteredLinear3/filteredLinear3.C
new file mode 100644
index 0000000000000000000000000000000000000000..e1da4b7106602ac3b781eb31e317fba7a9c05129
--- /dev/null
+++ b/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/filteredLinear3/filteredLinear3.C
@@ -0,0 +1,48 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2008 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
+
+\*---------------------------------------------------------------------------*/
+
+#include "LimitedScheme.H"
+#include "filteredLinear3.H"
+#include "filteredLinear3V.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    makeLimitedSurfaceInterpolationScheme
+    (
+        filteredLinear3,
+        filteredLinear3Limiter
+    )
+
+    makeLimitedVSurfaceInterpolationScheme
+    (
+        filteredLinear3V,
+        filteredLinear3VLimiter
+    )
+}
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/filteredLinear3/filteredLinear3.H b/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/filteredLinear3/filteredLinear3.H
new file mode 100644
index 0000000000000000000000000000000000000000..b368192b310cdd6117266450711fa10e8d7c2038
--- /dev/null
+++ b/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/filteredLinear3/filteredLinear3.H
@@ -0,0 +1,120 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2008 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::filteredLinear3Limiter
+
+Description
+    Class to generate weighting factors for the filtered-linear-3
+    differencing scheme.
+
+    The aim is to remove high-frequency modes with "staggering"
+    characteristics by comparing the face gradient with both neighbouring
+    cell gradients and introduce small amounts of upwind in order to damp
+    these modes.
+
+    Used in conjunction with the template class LimitedScheme.
+
+SourceFiles
+    filteredLinear3.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef filteredLinear3_H
+#define filteredLinear3_H
+
+#include "vector.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                     Class filteredLinear3Limiter Declaration
+\*---------------------------------------------------------------------------*/
+
+template<class LimiterFunc>
+class filteredLinear3Limiter
+:
+    public LimiterFunc
+{
+    // Private data
+
+        // Scaling corefficient for the gradient ratio,
+        // 0 = linear
+        // 1 = fully limited
+        scalar k_;
+
+public:
+
+    filteredLinear3Limiter(Istream& is)
+    :
+        k_(readScalar(is))
+    {
+        if (k_ < 0 || k_ > 1)
+        {
+            FatalIOErrorIn("filteredLinear3Limiter(Istream& is)", is)
+                << "coefficient = " << k_
+                << " should be >= 0 and <= 1"
+                << exit(FatalIOError);
+        }    
+    }
+
+    scalar limiter
+    (
+        const scalar cdWeight,
+        const scalar faceFlux,
+        const typename LimiterFunc::phiType& phiP,
+        const typename LimiterFunc::phiType& phiN,
+        const typename LimiterFunc::gradPhiType& gradcP,
+        const typename LimiterFunc::gradPhiType& gradcN,
+        const vector& d
+    ) const
+    {
+        // Difference across face
+        scalar df = phiN - phiP;
+
+        // Twice the differences across face-neighbour cells
+        scalar dP = 2*(d & gradcP);
+        scalar dN = 2*(d & gradcN);
+
+        // Calculate the limiter
+        scalar limiter = 1 - k_*(dN - df)*(dP - df)/max(sqr(dN + dP), SMALL);
+
+        // Limit the limiter between linear and upwind
+        return max(min(limiter, 1), 0);
+    }
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/filteredLinear3/filteredLinear3V.H b/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/filteredLinear3/filteredLinear3V.H
new file mode 100644
index 0000000000000000000000000000000000000000..e44c334a1a745160603f8073f03027c3fa561c51
--- /dev/null
+++ b/src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/filteredLinear3/filteredLinear3V.H
@@ -0,0 +1,123 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 1991-2008 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::filteredLinear3VLimiter
+
+Description
+    Class to generate weighting factors for the filteredLinear3V differencing
+    scheme.  The aim is to remove high-frequency modes with "staggering"
+    characteristics from vector fields by comparing the face gradient in the
+    direction of maximum gradient with both neighbouring cell gradients and
+    introduce small amounts of upwind in order to damp these modes.
+
+    Used in conjunction with the template class LimitedScheme.
+
+SourceFiles
+    filteredLinear3V.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef filteredLinear3V_H
+#define filteredLinear3V_H
+
+#include "vector.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                 Class filteredLinear3VLimiter Declaration
+\*---------------------------------------------------------------------------*/
+
+template<class LimiterFunc>
+class filteredLinear3VLimiter
+:
+    public LimiterFunc
+{
+    // Private data
+
+        // Scaling corefficient for the gradient ratio,
+        // 0 = linear
+        // 1 = fully limited
+        scalar k_;
+
+public:
+
+    filteredLinear3VLimiter(Istream& is)
+    :
+        k_(readScalar(is))
+    {
+        if (k_ < 0 || k_ > 1)
+        {
+            FatalIOErrorIn("filteredLinear3VLimiter(Istream& is)", is)
+                << "coefficient = " << k_
+                << " should be >= 0 and <= 1"
+                << exit(FatalIOError);
+        }    
+    }
+
+    scalar limiter
+    (
+        const scalar cdWeight,
+        const scalar faceFlux,
+        const typename LimiterFunc::phiType& phiP,
+        const typename LimiterFunc::phiType& phiN,
+        const typename LimiterFunc::gradPhiType& gradcP,
+        const typename LimiterFunc::gradPhiType& gradcN,
+        const vector& d
+    ) const
+    {
+        // Difference across face
+        vector dfV = phiN - phiP;
+
+        // Scalar difference across the face
+        // in the direction in which the difference is largest
+        scalar df = dfV & dfV;
+
+        // Twice differences across face-neighbour cells
+        // in the direction in which the face-difference is largest
+        scalar dP = 2*(dfV & (d & gradcP));
+        scalar dN = 2*(dfV & (d & gradcN));
+
+        // Calculate the limiter
+        scalar limiter = 1 - k_*(dN - df)*(dP - df)/max(sqr(dN + dP), SMALL);
+
+        // Limit the limiter between linear and upwind
+        return max(min(limiter, 1), 0);
+    }
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/turbulenceModels/RAS/incompressible/RASModel/RASModel.C b/src/turbulenceModels/RAS/incompressible/RASModel/RASModel.C
index a5b0dd6a9dd444a5705bdfcb13f1dcc40529ae5e..628da387da08e66a60734cc6bc8c793b27d69612 100644
--- a/src/turbulenceModels/RAS/incompressible/RASModel/RASModel.C
+++ b/src/turbulenceModels/RAS/incompressible/RASModel/RASModel.C
@@ -134,7 +134,7 @@ scalar RASModel::yPlusLam(const scalar kappa, const scalar E) const
 
     for (int i=0; i<10; i++)
     {
-        ypl = log(E*ypl)/kappa;
+        ypl = log(max(E*ypl, 1))/kappa;
     }
 
     return ypl;
diff --git a/src/turbulenceModels/RAS/incompressible/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutRoughWallFunction/nutRoughWallFunctionFvPatchScalarField.C b/src/turbulenceModels/RAS/incompressible/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutRoughWallFunction/nutRoughWallFunctionFvPatchScalarField.C
index 3cc934ebf733dc9931c35edea7880be79a632f62..b4fd633432bfe6976dfaf4a824391a67223ddf38 100644
--- a/src/turbulenceModels/RAS/incompressible/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutRoughWallFunction/nutRoughWallFunctionFvPatchScalarField.C
+++ b/src/turbulenceModels/RAS/incompressible/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutRoughWallFunction/nutRoughWallFunctionFvPatchScalarField.C
@@ -51,11 +51,7 @@ scalar nutRoughWallFunctionFvPatchScalarField::fnRough
 {
     // Set deltaB based on non-dimensional roughness height
     scalar deltaB = 0.0;
-    if (KsPlus <= 2.25)
-    {
-        deltaB = 0.0;
-    }
-    else if ((KsPlus > 2.25) && (KsPlus <= 90.0))
+    if (KsPlus < 90.0)
     {
         deltaB =
             1.0/kappa
@@ -177,6 +173,7 @@ void nutRoughWallFunctionFvPatchScalarField::updateCoeffs()
     const scalar Cmu25 = pow(Cmu, 0.25);
     const scalar kappa = ras.kappa().value();
     const scalar E = ras.E().value();
+    scalar yPlusLam = ras.yPlusLam();
 
     const scalarField& y = ras.y()[patch().index()];
 
@@ -197,11 +194,24 @@ void nutRoughWallFunctionFvPatchScalarField::updateCoeffs()
 
         scalar KsPlus = uStar*Ks_[faceI]/nuw[faceI];
 
-        scalar Edash = E/fnRough(KsPlus, Cs_[faceI], kappa);
+        scalar Edash = E;
+        scalar yPlusLamNew = yPlusLam;
+        if (KsPlus > 2.25)
+        {
+            Edash = E/fnRough(KsPlus, Cs_[faceI], kappa);
+            yPlusLam = ras.yPlusLam(kappa, Edash);
+        }
 
-        scalar yPlusLam = ras.yPlusLam(kappa, Edash);
+        if (debug)
+        {
+            Info<< "yPlus = " << yPlus
+                << ", KsPlus = " << KsPlus
+                << ", Edash = " << Edash
+                << ", yPlusLam = " << yPlusLam
+                << endl;
+        }
 
-        if (yPlus > yPlusLam)
+        if (yPlus > yPlusLamNew)
         {
             nutw[faceI] = nuw[faceI]*(yPlus*kappa/log(Edash*yPlus) - 1);
         }
@@ -216,8 +226,8 @@ void nutRoughWallFunctionFvPatchScalarField::updateCoeffs()
 void nutRoughWallFunctionFvPatchScalarField::write(Ostream& os) const
 {
     fvPatchField<scalar>::write(os);
-    os.writeKeyword("Cs") << Cs_ << token::END_STATEMENT << nl;
-    os.writeKeyword("Ks") << Ks_ << token::END_STATEMENT << nl;
+    Cs_.writeEntry("Cs", os);
+    Ks_.writeEntry("Ks", os);
     writeEntry("value", os);
 }
 
diff --git a/src/turbulenceModels/RAS/incompressible/kOmega/kOmega.C b/src/turbulenceModels/RAS/incompressible/kOmega/kOmega.C
index 179e694261eb3d6c560ac8805f1c8ebb19cc6967..c15d5cbba3028f412c180ab2959e9093d3faa281 100644
--- a/src/turbulenceModels/RAS/incompressible/kOmega/kOmega.C
+++ b/src/turbulenceModels/RAS/incompressible/kOmega/kOmega.C
@@ -128,9 +128,21 @@ kOmega::kOmega
         mesh_
     ),
 
-    nut_(k_/(omega_ + omegaSmall_))
+    nut_
+    (
+        IOobject
+        (
+            "nut",
+            runTime_.timeName(),
+            mesh_,
+            IOobject::MUST_READ,
+            IOobject::AUTO_WRITE
+        ),
+        mesh_
+    )
 {
-#   include "kOmegaWallViscosityI.H"
+    nut_ == k_/(omega_ + omegaSmall_);
+    nut_.correctBoundaryConditions();
 
     printCoeffs();
 }
@@ -218,9 +230,10 @@ void kOmega::correct()
 
     RASModel::correct();
 
-    volScalarField G = nut_*2*magSqr(symm(fvc::grad(U_)));
+    volScalarField G("G", nut_*2*magSqr(symm(fvc::grad(U_))));
 
-#   include "kOmegaWallFunctionsI.H"
+    // Update omega and G at the wall
+    omega_.boundaryField().updateCoeffs();
 
     // Turbulence specific dissipation rate equation
     tmp<fvScalarMatrix> omegaEqn
@@ -236,7 +249,7 @@ void kOmega::correct()
 
     omegaEqn().relax();
 
-#   include "wallOmegaI.H"
+    omegaEqn().boundaryManipulate(omega_.boundaryField());
 
     solve(omegaEqn);
     bound(omega_, omega0_);
@@ -261,9 +274,7 @@ void kOmega::correct()
 
     // Re-calculate viscosity
     nut_ = k_/omega_;
-
-#   include "kOmegaWallViscosityI.H"
-
+    nut_.correctBoundaryConditions();
 }
 
 
diff --git a/tutorials/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4 b/tutorials/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
index 899b4ccbec0533e9f0037943ef14439454f12f9e..eaa448596c06a89b270603aaabd722cf44fa7f3e 100644
--- a/tutorials/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/MRFSimpleFoam/mixerVessel2D/constant/polyMesh/blockMeshDict.m4
@@ -8,7 +8,7 @@
 FoamFile
 {
     version     2.0;
-    format      ascii;
+    `format'      ascii;
     class       dictionary;
     object      blockMeshDict;
 }
@@ -420,7 +420,7 @@ vertices
     vert(4, 7, Zt) vlabel(R7st)
 );
 
-blocks          
+blocks
 (
     // block0
     hex2D(r0, r1, rb1, rb0)
@@ -692,7 +692,7 @@ edges
     arc R7t R0t evert(4, 7, Zt)
 );
 
-patches         
+patches
 (
     wall rotor
     (
diff --git a/tutorials/interDyMFoam/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict.m4 b/tutorials/interDyMFoam/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict.m4
index ad753abc5629d10e631b0b69a54495ce58509d2c..5f286a9a6bc642bbb0b92f586a0ecc76fe67bcc8 100644
--- a/tutorials/interDyMFoam/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/interDyMFoam/sloshingTank2D3DoF/constant/polyMesh/blockMeshDict.m4
@@ -8,7 +8,7 @@
 FoamFile
 {
     version     2.0;
-    format      ascii;
+    `format'      ascii;
     class       dictionary;
     object      blockMeshDict;
 }
diff --git a/tutorials/interDyMFoam/sloshingTank3D/constant/polyMesh/blockMeshDict.m4 b/tutorials/interDyMFoam/sloshingTank3D/constant/polyMesh/blockMeshDict.m4
index 5e355fd7025a748a668cd3d55bfe9bd984c78869..d00110499198e0a49652f9797f09c7baff05a112 100644
--- a/tutorials/interDyMFoam/sloshingTank3D/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/interDyMFoam/sloshingTank3D/constant/polyMesh/blockMeshDict.m4
@@ -8,7 +8,7 @@
 FoamFile
 {
     version     2.0;
-    format      ascii;
+    `format'      ascii;
     class       dictionary;
     object      blockMeshDict;
 }
diff --git a/tutorials/interDyMFoam/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict.m4 b/tutorials/interDyMFoam/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict.m4
index cc851f6503f90da326a66561c0ccac74fb36f5dc..0b91b83dd263a10bcc2c7ba94513c8076109fae1 100644
--- a/tutorials/interDyMFoam/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/interDyMFoam/sloshingTank3D3DoF/constant/polyMesh/blockMeshDict.m4
@@ -8,7 +8,7 @@
 FoamFile
 {
     version     2.0;
-    format      ascii;
+    `format'      ascii;
     class       dictionary;
     object      blockMeshDict;
 }
diff --git a/tutorials/interDyMFoam/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict.m4 b/tutorials/interDyMFoam/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict.m4
index cc851f6503f90da326a66561c0ccac74fb36f5dc..0b91b83dd263a10bcc2c7ba94513c8076109fae1 100644
--- a/tutorials/interDyMFoam/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/interDyMFoam/sloshingTank3D6DoF/constant/polyMesh/blockMeshDict.m4
@@ -8,7 +8,7 @@
 FoamFile
 {
     version     2.0;
-    format      ascii;
+    `format'      ascii;
     class       dictionary;
     object      blockMeshDict;
 }
diff --git a/tutorials/rhoPimpleFoam/angledDuct/constant/polyMesh/blockMeshDict.m4 b/tutorials/rhoPimpleFoam/angledDuct/constant/polyMesh/blockMeshDict.m4
index eb610e5209a34c94f645a7e8908a14ea0664cae8..c9b482f117dadfdcf2a2bd8c17ccfaf830c64d2f 100644
--- a/tutorials/rhoPimpleFoam/angledDuct/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/rhoPimpleFoam/angledDuct/constant/polyMesh/blockMeshDict.m4
@@ -8,7 +8,7 @@
 FoamFile
 {
     version     2.0;
-    format      ascii;
+    `format'      ascii;
     class       dictionary;
     object      blockMeshDict;
 }
diff --git a/tutorials/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4 b/tutorials/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4
index eb610e5209a34c94f645a7e8908a14ea0664cae8..c9b482f117dadfdcf2a2bd8c17ccfaf830c64d2f 100644
--- a/tutorials/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4
+++ b/tutorials/rhoPorousSimpleFoam/angledDuctImplicit/constant/polyMesh/blockMeshDict.m4
@@ -8,7 +8,7 @@
 FoamFile
 {
     version     2.0;
-    format      ascii;
+    `format'      ascii;
     class       dictionary;
     object      blockMeshDict;
 }