diff --git a/README b/README
index 7b092d0d72f2de17deba6552a255e80f4610d99d..df56c9c9a4fc721ca1f3d06af825c95ae269aefc 100644
--- a/README
+++ b/README
@@ -2,7 +2,7 @@
 #
 #+TITLE:             OpenFOAM README for version 1.6
 #+AUTHOR:                      OpenCFD Ltd.
-#+DATE:                         July 2009
+#+DATE:                       November 2009
 #+LINK:                  http://www.opencfd.co.uk
 #+OPTIONS: author:nil ^:{}
 
@@ -168,9 +168,9 @@
   + rm -rf paraview-3.6.1/platforms
   + ./makeParaView
 
-  The PV3FoamReader module is an OpenFOAM utility that can be compiled in the
-  usual manner as follows:
-  + cd $FOAM_UTILITIES/postProcessing/graphics/PV3FoamReader
+  The PV3blockMeshReader and the PV3FoamReader ParaView plugins are compiled
+  as usual for OpenFOAM utilities:
+  + cd $FOAM_UTILITIES/postProcessing/graphics/PV3Readers/
   + ./Allwclean
   + ./Allwmake
 
@@ -187,7 +187,8 @@
     newly built qmake as an argument:
     + ./makeParaView -qmake <path_to_qmake>
 
-    The user must then recompile the PV3FoamReader module as normal (see above).
+    The user must then recompile the PV3blockMeshReader and the
+    PV3FoamReader plugins as usual (see above).
 
 * Documentation
   http://www.OpenFOAM.org/doc
diff --git a/applications/solvers/combustion/dieselEngineFoam/dieselEngineFoam.C b/applications/solvers/combustion/dieselEngineFoam/dieselEngineFoam.C
index ce80690224ef442289ebeb22c50d882185d9a6f1..6507c117a010738ab146419030813033fe591709 100644
--- a/applications/solvers/combustion/dieselEngineFoam/dieselEngineFoam.C
+++ b/applications/solvers/combustion/dieselEngineFoam/dieselEngineFoam.C
@@ -64,7 +64,7 @@ int main(int argc, char *argv[])
 
     // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-    Info << "\nStarting time loop\n" << endl;
+    Info<< "\nStarting time loop\n" << endl;
 
     while (runTime.run())
     {
@@ -85,7 +85,7 @@ int main(int argc, char *argv[])
 
         dieselSpray.evolve();
 
-        Info << "Solving chemistry" << endl;
+        Info<< "Solving chemistry" << endl;
 
         chemistry.solve
         (
diff --git a/applications/solvers/combustion/dieselFoam/dieselFoam.C b/applications/solvers/combustion/dieselFoam/dieselFoam.C
index 42d9534654432c3f2285de3005223da66af80cff..4769a00c77efa19c1ab497ac0c7fb39b71f99d29 100644
--- a/applications/solvers/combustion/dieselFoam/dieselFoam.C
+++ b/applications/solvers/combustion/dieselFoam/dieselFoam.C
@@ -61,7 +61,7 @@ int main(int argc, char *argv[])
 
     // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-    Info << "\nStarting time loop\n" << endl;
+    Info<< "\nStarting time loop\n" << endl;
 
     while (runTime.run())
     {
@@ -72,11 +72,11 @@ int main(int argc, char *argv[])
         runTime++;
         Info<< "Time = " << runTime.timeName() << nl << endl;
 
-        Info << "Evolving Spray" << endl;
+        Info<< "Evolving Spray" << endl;
 
         dieselSpray.evolve();
 
-        Info << "Solving chemistry" << endl;
+        Info<< "Solving chemistry" << endl;
 
         chemistry.solve
         (
diff --git a/applications/solvers/combustion/engineFoam/engineFoam.C b/applications/solvers/combustion/engineFoam/engineFoam.C
index dd584d03e2bb8ddb432f6ec13639b93f0778b0cb..5895c82b92fea70dde73423f4a2e1c23bf8a1ef8 100644
--- a/applications/solvers/combustion/engineFoam/engineFoam.C
+++ b/applications/solvers/combustion/engineFoam/engineFoam.C
@@ -78,7 +78,7 @@ int main(int argc, char *argv[])
 
     // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-    Info << "\nStarting time loop\n" << endl;
+    Info<< "\nStarting time loop\n" << endl;
 
     while (runTime.run())
     {
diff --git a/applications/solvers/combustion/reactingFoam/chemistry.H b/applications/solvers/combustion/reactingFoam/chemistry.H
index 691b6dcb920832fcd215e8044bd88e32acba594b..a1a978210dd2866432bddbd5a9dc6f0d7cff8362 100644
--- a/applications/solvers/combustion/reactingFoam/chemistry.H
+++ b/applications/solvers/combustion/reactingFoam/chemistry.H
@@ -1,5 +1,5 @@
 {
-    Info << "Solving chemistry" << endl;
+    Info<< "Solving chemistry" << endl;
 
     chemistry.solve
     (
diff --git a/applications/solvers/combustion/reactingFoam/reactingFoam.C b/applications/solvers/combustion/reactingFoam/reactingFoam.C
index 875191eea417ed2e53ae671673a41c4672a727f1..2d4ae7589ad1074be113b39e3a047ea7e658aef5 100644
--- a/applications/solvers/combustion/reactingFoam/reactingFoam.C
+++ b/applications/solvers/combustion/reactingFoam/reactingFoam.C
@@ -54,7 +54,7 @@ int main(int argc, char *argv[])
 
     // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-    Info << "\nStarting time loop\n" << endl;
+    Info<< "\nStarting time loop\n" << endl;
 
     while (runTime.run())
     {
diff --git a/applications/solvers/combustion/rhoReactingFoam/chemistry.H b/applications/solvers/combustion/rhoReactingFoam/chemistry.H
index 691b6dcb920832fcd215e8044bd88e32acba594b..a1a978210dd2866432bddbd5a9dc6f0d7cff8362 100644
--- a/applications/solvers/combustion/rhoReactingFoam/chemistry.H
+++ b/applications/solvers/combustion/rhoReactingFoam/chemistry.H
@@ -1,5 +1,5 @@
 {
-    Info << "Solving chemistry" << endl;
+    Info<< "Solving chemistry" << endl;
 
     chemistry.solve
     (
diff --git a/applications/solvers/combustion/rhoReactingFoam/rhoReactingFoam.C b/applications/solvers/combustion/rhoReactingFoam/rhoReactingFoam.C
index 777718b3eacc79cd5dd8d8b8610b5a47602036d8..cc37dd09c1847278b0459ae42669ab72b5607da4 100644
--- a/applications/solvers/combustion/rhoReactingFoam/rhoReactingFoam.C
+++ b/applications/solvers/combustion/rhoReactingFoam/rhoReactingFoam.C
@@ -55,7 +55,7 @@ int main(int argc, char *argv[])
 
     // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-    Info << "\nStarting time loop\n" << endl;
+    Info<< "\nStarting time loop\n" << endl;
 
     while (runTime.run())
     {
diff --git a/applications/solvers/compressible/rhoCentralFoam/BCs/U/maxwellSlipUFvPatchVectorField.C b/applications/solvers/compressible/rhoCentralFoam/BCs/U/maxwellSlipUFvPatchVectorField.C
index ec8f777542bd6cca2125d8e027d699c1d24dd83f..3b69386ed6b026c6d40515dfb8944c876310beaf 100644
--- a/applications/solvers/compressible/rhoCentralFoam/BCs/U/maxwellSlipUFvPatchVectorField.C
+++ b/applications/solvers/compressible/rhoCentralFoam/BCs/U/maxwellSlipUFvPatchVectorField.C
@@ -155,7 +155,7 @@ void maxwellSlipUFvPatchVectorField::updateCoeffs()
 
     refValue() = Uwall_;
 
-    if(thermalCreep_)
+    if (thermalCreep_)
     {
         const volScalarField& vsfT =
             this->db().objectRegistry::lookupObject<volScalarField>("T");
@@ -167,7 +167,7 @@ void maxwellSlipUFvPatchVectorField::updateCoeffs()
         refValue() -= 3.0*pnu/(4.0*pT)*transform(I - n*n, gradpT);
     }
 
-    if(curvature_)
+    if (curvature_)
     {
         const fvPatchTensorField& ptauMC =
             patch().lookupPatchField<volTensorField, tensor>("tauMC");
diff --git a/applications/solvers/discreteMethods/molecularDynamics/mdEquilibrationFoam/mdEquilibrationFoam.C b/applications/solvers/discreteMethods/molecularDynamics/mdEquilibrationFoam/mdEquilibrationFoam.C
index 66619cfc674120273e13f710bf78753b16f45c0b..8869f52a2783812516e0313f8d6b9abe64935e03 100644
--- a/applications/solvers/discreteMethods/molecularDynamics/mdEquilibrationFoam/mdEquilibrationFoam.C
+++ b/applications/solvers/discreteMethods/molecularDynamics/mdEquilibrationFoam/mdEquilibrationFoam.C
@@ -50,14 +50,14 @@ int main(int argc, char *argv[])
 
     label nAveragingSteps = 0;
 
-    Info << "\nStarting time loop\n" << endl;
+    Info<< "\nStarting time loop\n" << endl;
 
     while (runTime.loop())
     {
 
         nAveragingSteps++;
 
-        Info << "Time = " << runTime.timeName() << endl;
+        Info<< "Time = " << runTime.timeName() << endl;
 
         molecules.evolve();
 
@@ -74,12 +74,12 @@ int main(int argc, char *argv[])
             nAveragingSteps = 0;
         }
 
-        Info << "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
+        Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
             << "  ClockTime = " << runTime.elapsedClockTime() << " s"
             << nl << endl;
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/solvers/discreteMethods/molecularDynamics/mdFoam/mdFoam.C b/applications/solvers/discreteMethods/molecularDynamics/mdFoam/mdFoam.C
index 4f2eea1ccc75177a2da34d52e6be72ddfd099fb7..0bd07d0330db41d031d384df6c75bad57d92687d 100644
--- a/applications/solvers/discreteMethods/molecularDynamics/mdFoam/mdFoam.C
+++ b/applications/solvers/discreteMethods/molecularDynamics/mdFoam/mdFoam.C
@@ -48,14 +48,14 @@ int main(int argc, char *argv[])
 
     label nAveragingSteps = 0;
 
-    Info << "\nStarting time loop\n" << endl;
+    Info<< "\nStarting time loop\n" << endl;
 
     while (runTime.loop())
     {
 
         nAveragingSteps++;
 
-        Info << "Time = " << runTime.timeName() << endl;
+        Info<< "Time = " << runTime.timeName() << endl;
 
         molecules.evolve();
 
@@ -70,12 +70,12 @@ int main(int argc, char *argv[])
             nAveragingSteps = 0;
         }
 
-        Info << "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
+        Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
             << "  ClockTime = " << runTime.elapsedClockTime() << " s"
             << nl << endl;
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C
index 54e1c8cb1840d4719b1f2f360a7ab3d4ba81b052..5a56c2709ffcbb19348eb109f4a44f95d48a20e1 100644
--- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C
+++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C
@@ -117,7 +117,7 @@ int main(int argc, char *argv[])
             << nl << endl;
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/solvers/incompressible/channelFoam/createGradP.H b/applications/solvers/incompressible/channelFoam/createGradP.H
index 9bb9bb0ba28f974c967e9f82a2b649fc2a032ebb..643509c46f980f765062daba334d7343792081ac 100644
--- a/applications/solvers/incompressible/channelFoam/createGradP.H
+++ b/applications/solvers/incompressible/channelFoam/createGradP.H
@@ -11,7 +11,7 @@
         runTime.path()/runTime.timeName()/"uniform"/"gradP.raw"
     );
 
-    if(gradPFile.good())
+    if (gradPFile.good())
     {
         gradPFile >> gradP;
         Info<< "Reading average pressure gradient" <<endl
diff --git a/applications/solvers/incompressible/channelFoam/writeGradP.H b/applications/solvers/incompressible/channelFoam/writeGradP.H
index c82dd534740b6c8db6258f572768b5c081a7e735..afbca9e61d05b9b63d9acda53152b5dc8e3f3711 100644
--- a/applications/solvers/incompressible/channelFoam/writeGradP.H
+++ b/applications/solvers/incompressible/channelFoam/writeGradP.H
@@ -5,7 +5,7 @@
             runTime.path()/runTime.timeName()/"uniform"/"gradP.raw"
         );
 
-        if(gradPFile.good())
+        if (gradPFile.good())
         {
             gradPFile << gradP << endl;
         }
diff --git a/applications/solvers/incompressible/pimpleDyMFoam/correctPhi.H b/applications/solvers/incompressible/pimpleDyMFoam/correctPhi.H
index 394b1cbd3eb71bc019b0cb3b5b76a4256bc838b7..f1651d8df391de08305885cf6fdc884ec7ea24bc 100644
--- a/applications/solvers/incompressible/pimpleDyMFoam/correctPhi.H
+++ b/applications/solvers/incompressible/pimpleDyMFoam/correctPhi.H
@@ -29,7 +29,7 @@
 
     for (label i=0; i<p.boundaryField().size(); i++)
     {
-        if(p.boundaryField()[i].fixesValue())
+        if (p.boundaryField()[i].fixesValue())
         {
             pcorrTypes[i] = fixedValueFvPatchScalarField::typeName;
         }
@@ -50,7 +50,7 @@
         pcorrTypes
     );
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pcorrEqn
         (
diff --git a/applications/solvers/incompressible/porousSimpleFoam/createFields.H b/applications/solvers/incompressible/porousSimpleFoam/createFields.H
index 04d57d0571472ea1ee00c9a8ec1e24171eefe640..6861ae0005e70f41dc5d04623c47726a4487fca5 100644
--- a/applications/solvers/incompressible/porousSimpleFoam/createFields.H
+++ b/applications/solvers/incompressible/porousSimpleFoam/createFields.H
@@ -1,4 +1,4 @@
-    Info << "Reading field p\n" << endl;
+    Info<< "Reading field p\n" << endl;
     volScalarField p
     (
         IOobject
@@ -12,7 +12,7 @@
         mesh
     );
 
-    Info << "Reading field U\n" << endl;
+    Info<< "Reading field U\n" << endl;
     volVectorField U
     (
         IOobject
diff --git a/applications/solvers/incompressible/simpleFoam/createFields.H b/applications/solvers/incompressible/simpleFoam/createFields.H
index ab424962554bd77646d7f5e4abe151c927f091c1..b957c7265051de06f3a5333071f57e0e0b9fffa1 100644
--- a/applications/solvers/incompressible/simpleFoam/createFields.H
+++ b/applications/solvers/incompressible/simpleFoam/createFields.H
@@ -1,4 +1,4 @@
-    Info << "Reading field p\n" << endl;
+    Info<< "Reading field p\n" << endl;
     volScalarField p
     (
         IOobject
@@ -12,7 +12,7 @@
         mesh
     );
 
-    Info << "Reading field U\n" << endl;
+    Info<< "Reading field U\n" << endl;
     volVectorField U
     (
         IOobject
diff --git a/applications/solvers/lagrangian/coalChemistryFoam/chemistry.H b/applications/solvers/lagrangian/coalChemistryFoam/chemistry.H
index 3a8a5c20f1ef59b8454167c5061ae5579f56e54f..5489dfefbaaa07425e5c0e84576c5ed001a64435 100644
--- a/applications/solvers/lagrangian/coalChemistryFoam/chemistry.H
+++ b/applications/solvers/lagrangian/coalChemistryFoam/chemistry.H
@@ -1,5 +1,5 @@
 {
-    Info << "Solving chemistry" << endl;
+    Info<< "Solving chemistry" << endl;
 
     chemistry.solve
     (
diff --git a/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/chemistry.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/chemistry.H
index 3a8a5c20f1ef59b8454167c5061ae5579f56e54f..5489dfefbaaa07425e5c0e84576c5ed001a64435 100644
--- a/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/chemistry.H
+++ b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/chemistry.H
@@ -1,5 +1,5 @@
 {
-    Info << "Solving chemistry" << endl;
+    Info<< "Solving chemistry" << endl;
 
     chemistry.solve
     (
diff --git a/applications/solvers/lagrangian/reactingParcelFoam/chemistry.H b/applications/solvers/lagrangian/reactingParcelFoam/chemistry.H
index 3a8a5c20f1ef59b8454167c5061ae5579f56e54f..5489dfefbaaa07425e5c0e84576c5ed001a64435 100644
--- a/applications/solvers/lagrangian/reactingParcelFoam/chemistry.H
+++ b/applications/solvers/lagrangian/reactingParcelFoam/chemistry.H
@@ -1,5 +1,5 @@
 {
-    Info << "Solving chemistry" << endl;
+    Info<< "Solving chemistry" << endl;
 
     chemistry.solve
     (
diff --git a/applications/solvers/multiphase/bubbleFoam/kEpsilon.H b/applications/solvers/multiphase/bubbleFoam/kEpsilon.H
index 576e3253abf0b9f1dc592825aab3b6e5852bb853..84dadd7acb5b80452b7992f855d7965d893ff8df 100644
--- a/applications/solvers/multiphase/bubbleFoam/kEpsilon.H
+++ b/applications/solvers/multiphase/bubbleFoam/kEpsilon.H
@@ -1,4 +1,4 @@
-if(turbulence)
+if (turbulence)
 {
     if (mesh.changing())
     {
diff --git a/applications/solvers/multiphase/bubbleFoam/pEqn.H b/applications/solvers/multiphase/bubbleFoam/pEqn.H
index 35813dd935ef015a1ea0ee9bb28479448adc7725..3e550efc65e49d1c5ea8ec54a6c360e1f7318f27 100644
--- a/applications/solvers/multiphase/bubbleFoam/pEqn.H
+++ b/applications/solvers/multiphase/bubbleFoam/pEqn.H
@@ -34,7 +34,7 @@
 
     surfaceScalarField Dp("(rho*(1|A(U)))", alphaf*rUaAf/rhoa + betaf*rUbAf/rhob);
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pEqn
         (
diff --git a/applications/solvers/multiphase/compressibleInterDyMFoam/correctPhi.H b/applications/solvers/multiphase/compressibleInterDyMFoam/correctPhi.H
index f681ba65940dd3eb12b67ad38628f19537ca2c96..e4bef5a60fe65de90f85b1f0713fac45be23658b 100644
--- a/applications/solvers/multiphase/compressibleInterDyMFoam/correctPhi.H
+++ b/applications/solvers/multiphase/compressibleInterDyMFoam/correctPhi.H
@@ -42,7 +42,7 @@
 
     adjustPhi(phi, U, pcorr);
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pcorrEqn
         (
diff --git a/applications/solvers/multiphase/compressibleInterFoam/pEqn.H b/applications/solvers/multiphase/compressibleInterFoam/pEqn.H
index 9d2dc23916babb9c6c94acd2b53125c8cfee1dad..e6ff71342912687a62260e06b3e493a612d15350 100644
--- a/applications/solvers/multiphase/compressibleInterFoam/pEqn.H
+++ b/applications/solvers/multiphase/compressibleInterFoam/pEqn.H
@@ -30,7 +30,7 @@
           + fvc::interpolate(rho)*(g & mesh.Sf())
         )*rUAf;
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pEqnIncomp
         (
diff --git a/applications/solvers/multiphase/interDyMFoam/correctPhi.H b/applications/solvers/multiphase/interDyMFoam/correctPhi.H
index 43b13c2b898c35350304b203936cc0124677e21b..72550e621c0b6dc381f92f591fceed084b32494f 100644
--- a/applications/solvers/multiphase/interDyMFoam/correctPhi.H
+++ b/applications/solvers/multiphase/interDyMFoam/correctPhi.H
@@ -42,7 +42,7 @@
 
     adjustPhi(phi, U, pcorr);
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pcorrEqn
         (
diff --git a/applications/solvers/multiphase/interDyMFoam/pEqn.H b/applications/solvers/multiphase/interDyMFoam/pEqn.H
index 2af289a76f31beb1654acfde23592bb299346f1c..afefb0a5f091b8131962713a5561cadcbaed2dec 100644
--- a/applications/solvers/multiphase/interDyMFoam/pEqn.H
+++ b/applications/solvers/multiphase/interDyMFoam/pEqn.H
@@ -18,7 +18,7 @@
       + fvc::interpolate(rho)*(g & mesh.Sf())
     )*rAUf;
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pEqn
         (
diff --git a/applications/solvers/multiphase/interFoam/correctPhi.H b/applications/solvers/multiphase/interFoam/correctPhi.H
index 0274b7e9ed8dc75b372db31efa743722a7dafc56..a41332ce9bdd6811eaaa1342eedc02defb1c1d1f 100644
--- a/applications/solvers/multiphase/interFoam/correctPhi.H
+++ b/applications/solvers/multiphase/interFoam/correctPhi.H
@@ -34,7 +34,7 @@
 
     adjustPhi(phi, U, pcorr);
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pcorrEqn
         (
diff --git a/applications/solvers/multiphase/interFoam/pEqn.H b/applications/solvers/multiphase/interFoam/pEqn.H
index 7aa172b858473b0f5e5c0934e5690233ef60755a..7473848c62df1a1be80e281ff8090c1f4370d2df 100644
--- a/applications/solvers/multiphase/interFoam/pEqn.H
+++ b/applications/solvers/multiphase/interFoam/pEqn.H
@@ -19,7 +19,7 @@
           + fvc::interpolate(rho)*(g & mesh.Sf())
         )*rUAf;
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pEqn
         (
diff --git a/applications/solvers/multiphase/interPhaseChangeFoam/correctPhi.H b/applications/solvers/multiphase/interPhaseChangeFoam/correctPhi.H
index 17377302f0ecd97c2ee04e98cea8bcfc88ab4921..2547dac96630aa59a6b11dc00230f5f13599e715 100644
--- a/applications/solvers/multiphase/interPhaseChangeFoam/correctPhi.H
+++ b/applications/solvers/multiphase/interPhaseChangeFoam/correctPhi.H
@@ -34,7 +34,7 @@
 
     adjustPhi(phi, U, pcorr);
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pcorrEqn
         (
diff --git a/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H b/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H
index 3c164cc574311612e838abda97310fd3959e9e72..519a0b9f65322945855382770f716f991b019803 100644
--- a/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H
+++ b/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H
@@ -23,7 +23,7 @@
     const volScalarField& vDotcP = vDotP[0]();
     const volScalarField& vDotvP = vDotP[1]();
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pEqn
         (
diff --git a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C
index 6d32abd9c72689e30301a3e5105014d5beacd9de..0e1252bea795d8119429a9019dc248984ddb2c62 100644
--- a/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C
+++ b/applications/solvers/multiphase/multiphaseInterFoam/multiphaseMixture/multiphaseMixture.C
@@ -125,7 +125,7 @@ Foam::tmp<Foam::volScalarField> Foam::multiphaseMixture::rho() const
 
     tmp<volScalarField> trho = iter()*iter().rho();
 
-    for(++iter; iter != phases_.end(); ++iter)
+    for (++iter; iter != phases_.end(); ++iter)
     {
         trho() += iter()*iter().rho();
     }
@@ -140,7 +140,7 @@ Foam::tmp<Foam::volScalarField> Foam::multiphaseMixture::mu() const
 
     tmp<volScalarField> tmu = iter()*iter().rho()*iter().nu();
 
-    for(++iter; iter != phases_.end(); ++iter)
+    for (++iter; iter != phases_.end(); ++iter)
     {
         tmu() += iter()*iter().rho()*iter().nu();
     }
@@ -156,7 +156,7 @@ Foam::tmp<Foam::surfaceScalarField> Foam::multiphaseMixture::muf() const
     tmp<surfaceScalarField> tmuf =
         fvc::interpolate(iter())*iter().rho()*fvc::interpolate(iter().nu());
 
-    for(++iter; iter != phases_.end(); ++iter)
+    for (++iter; iter != phases_.end(); ++iter)
     {
         tmuf() +=
             fvc::interpolate(iter())*iter().rho()*fvc::interpolate(iter().nu());
@@ -210,7 +210,7 @@ Foam::multiphaseMixture::surfaceTensionForce() const
         PtrDictionary<phase>::const_iterator iter2 = iter1;
         ++iter2;
 
-        for(; iter2 != phases_.end(); ++iter2)
+        for (; iter2 != phases_.end(); ++iter2)
         {
             const phase& alpha2 = iter2();
 
@@ -489,7 +489,7 @@ void Foam::multiphaseMixture::solveAlphas
         if (cycleAlpha)
         {
             PtrDictionary<phase>::iterator refPhaseIter = phases_.begin();
-            for(label i=0; i<nSolves%phases_.size(); i++)
+            for (label i=0; i<nSolves%phases_.size(); i++)
             {
                 ++refPhaseIter;
             }
diff --git a/applications/solvers/multiphase/multiphaseInterFoam/pEqn.H b/applications/solvers/multiphase/multiphaseInterFoam/pEqn.H
index 4bec77f950d54fadbefe8507abe3ed8699476c54..7e9f30c01c01b1091c5e2a02e0af88718e5f1a48 100644
--- a/applications/solvers/multiphase/multiphaseInterFoam/pEqn.H
+++ b/applications/solvers/multiphase/multiphaseInterFoam/pEqn.H
@@ -18,7 +18,7 @@
           + fvc::interpolate(rho)*(g & mesh.Sf())
         )*rUAf;
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pEqn
         (
diff --git a/applications/solvers/multiphase/settlingFoam/pEqn.H b/applications/solvers/multiphase/settlingFoam/pEqn.H
index b4fc05b32ab56f04646427310478e9cc92429b11..77bb0f45924a76e91afb6a146011adfe10abaafb 100644
--- a/applications/solvers/multiphase/settlingFoam/pEqn.H
+++ b/applications/solvers/multiphase/settlingFoam/pEqn.H
@@ -17,7 +17,7 @@ phi =
 surfaceScalarField phiU("phiU", phi);
 phi += fvc::interpolate(rho)*(g & mesh.Sf())*rUAf;
 
-for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
 {
     fvScalarMatrix pEqn
     (
diff --git a/applications/solvers/multiphase/twoLiquidMixingFoam/pEqn.H b/applications/solvers/multiphase/twoLiquidMixingFoam/pEqn.H
index 7ba3cdba8a6a2badce20af6292008e62487f23b7..f1e07558cb36728e6310b4808ff3b2476455548a 100644
--- a/applications/solvers/multiphase/twoLiquidMixingFoam/pEqn.H
+++ b/applications/solvers/multiphase/twoLiquidMixingFoam/pEqn.H
@@ -13,7 +13,7 @@
 
     phi = phiU + fvc::interpolate(rho)*(g & mesh.Sf())*rUAf;
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pEqn
         (
diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H b/applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H
index e422fe845b67041fb3277271559232271ecf2716..8a1269058106f9edd37a2a4124c68f6410c95021 100644
--- a/applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H
+++ b/applications/solvers/multiphase/twoPhaseEulerFoam/createFields.H
@@ -190,7 +190,7 @@
         }
     }
 
-    Info << "dragPhase is " << dragPhase << endl;
+    Info<< "dragPhase is " << dragPhase << endl;
     kineticTheoryModel kineticTheory
     (
         phasea,
diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.C
index 0576f4694e583f8ba7890b051a821d1ec5a55192..7d6e41bf4cbf2ccfab0a1b14d06381d17e33aa7a 100644
--- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.C
+++ b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowErgunWenYu/GidaspowErgunWenYu.C
@@ -78,12 +78,12 @@ Foam::tmp<Foam::volScalarField> Foam::GidaspowErgunWenYu::K
 
     forAll(Re, celli)
     {
-        if(Re[celli] > 1000.0)
+        if (Re[celli] > 1000.0)
         {
             Cds[celli] = 0.44;
         }
     }
-    
+
     // Wen and Yu (1966)
     tmp<volScalarField> tKWenYu = 0.75*Cds*phaseb_.rho()*Ur*bp/phasea_.d();
     volScalarField& KWenYu = tKWenYu();
diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.C
index 256d0861c036b13099ac2e9c922e0382e8381955..1be08abd3a69fb662da0d164d7dd446f347295cb 100644
--- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.C
+++ b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/GidaspowSchillerNaumann/GidaspowSchillerNaumann.C
@@ -77,7 +77,7 @@ Foam::tmp<Foam::volScalarField> Foam::GidaspowSchillerNaumann::K
 
     forAll(Re, celli)
     {
-        if(Re[celli] > 1000.0)
+        if (Re[celli] > 1000.0)
         {
             Cds[celli] = 0.44;
         }
diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.C
index 707c269c24d051cb66047a16b473b5394814c2e2..59e7bed10e0ec4012de36c3f07d8f09b1b38334f 100644
--- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.C
+++ b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/SchillerNaumann/SchillerNaumann.C
@@ -74,7 +74,7 @@ Foam::tmp<Foam::volScalarField> Foam::SchillerNaumann::K
 
     forAll(Re, celli)
     {
-        if(Re[celli] > 1000.0)
+        if (Re[celli] > 1000.0)
         {
             Cds[celli] = 0.44;
         }
diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.C
index 76465069333b86295590a3e9d1af7fe5a091bc5b..febe1d11f09b1b843b741647651d35dde1366662 100644
--- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.C
+++ b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/WenYu/WenYu.C
@@ -77,7 +77,7 @@ Foam::tmp<Foam::volScalarField> Foam::WenYu::K
 
     forAll(Re, celli)
     {
-        if(Re[celli] > 1000.0)
+        if (Re[celli] > 1000.0)
         {
             Cds[celli] = 0.44;
         }
diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/newDragModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/newDragModel.C
index 582fa4cdd352671c1c1b4cfabc87c8b3ec633509..8fb79ad403d8c107202b8b8f0f68df4719e2539e 100644
--- a/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/newDragModel.C
+++ b/applications/solvers/multiphase/twoPhaseEulerFoam/interfacialModels/dragModels/dragModel/newDragModel.C
@@ -41,7 +41,7 @@ Foam::autoPtr<Foam::dragModel> Foam::dragModel::New
         interfaceDict.lookup("dragModel" + phasea.name())
     );
 
-    Info << "Selecting dragModel for phase " 
+    Info<< "Selecting dragModel for phase "
         << phasea.name()
         << ": "
         << dragModelType << endl;
@@ -57,7 +57,7 @@ Foam::autoPtr<Foam::dragModel> Foam::dragModel::New
                 << dragModelType
                 << ", constructor not in hash table" << endl << endl
                 << "    Valid dragModel types are : " << endl;
-        Info << dictionaryConstructorTablePtr_->sortedToc() << abort(FatalError);
+        Info<< dictionaryConstructorTablePtr_->sortedToc() << abort(FatalError);
     }
 
     return cstrIter()(interfaceDict, alpha, phasea, phaseb);
diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pEqn.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pEqn.H
index ad48745519b6c530920f5e73da1ebe681c4ff843..57a25a299d3eb84cf4ac078a8aa69cefbfa9fcf5 100644
--- a/applications/solvers/multiphase/twoPhaseEulerFoam/pEqn.H
+++ b/applications/solvers/multiphase/twoPhaseEulerFoam/pEqn.H
@@ -47,7 +47,7 @@
 
     surfaceScalarField Dp("(rho*(1|A(U)))", alphaf*rUaAf/rhoa + betaf*rUbAf/rhob);
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pEqn
         (
diff --git a/applications/test/Dictionary/DictionaryTest.C b/applications/test/Dictionary/DictionaryTest.C
index 0af4dab6612e97fc340d434a29246d24f3e08a57..0f09f4f4a655d1c6720c5369204d671d77ba5c32 100644
--- a/applications/test/Dictionary/DictionaryTest.C
+++ b/applications/test/Dictionary/DictionaryTest.C
@@ -84,7 +84,7 @@ public:
 
     ~Scalar()
     {
-        Info <<"delete Scalar: " << data_ << endl;
+        Info<<"delete Scalar: " << data_ << endl;
     }
 
     friend Ostream& operator<<(Ostream& os, const Scalar& val)
@@ -169,7 +169,7 @@ int main(int argc, char *argv[])
     {
         Info<< " = " << iter() << endl;
     }
-    
+
     PtrDictionary<Scalar> scalarDict2;
     for (int i = 8; i<15; i++)
     {
@@ -186,22 +186,22 @@ int main(int argc, char *argv[])
     {
         Info<< "elem = " << *iter << endl;
     }
-    
+
     scalarDict.transfer(scalarDict2);
 
-    
+
     Scalar* p = scalarDict.lookupPtr("ent8");
-    
+
     // This does not (yet) work
     // Scalar* q = scalarDict.remove("ent10");
 
     if (p)
     {
-        Info << "found: " << *p << endl;
+        Info<< "found: " << *p << endl;
     }
     else
     {
-        Info << "no p: " << endl;
+        Info<< "no p: " << endl;
     }
 
     scalarDict.clear();
diff --git a/applications/test/IndirectList/IndirectListTest.C b/applications/test/IndirectList/IndirectListTest.C
index 365c58a383014b277a43c9dd827e4b625944e853..b8abff977391a3b60d64fa4a10fb03e10325fd24 100644
--- a/applications/test/IndirectList/IndirectListTest.C
+++ b/applications/test/IndirectList/IndirectListTest.C
@@ -72,7 +72,7 @@ int main(int argc, char *argv[])
         << "list: " << idl() << nl
         << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/LduMatrix/LduMatrixTest.C b/applications/test/LduMatrix/LduMatrixTest.C
index 91a6dfb68d2dbf41dff4b12ef34cc2d7e9f8fc6e..bc244ff525a0752058a47166c03b4a1daf294f0f 100644
--- a/applications/test/LduMatrix/LduMatrixTest.C
+++ b/applications/test/LduMatrix/LduMatrixTest.C
@@ -155,7 +155,7 @@ int main(int argc, char *argv[])
 
     Info<< psi << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/LduMatrix/LduMatrixTest2.C b/applications/test/LduMatrix/LduMatrixTest2.C
index 02db866ae51df9da8ed8266c25dc70d1c5b77e37..5e47df1daf47167f6e2be6d0ea34c4fe7fa131a8 100644
--- a/applications/test/LduMatrix/LduMatrixTest2.C
+++ b/applications/test/LduMatrix/LduMatrixTest2.C
@@ -155,7 +155,7 @@ int main(int argc, char *argv[])
 
     Info<< psi << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/Map/MapTest.C b/applications/test/Map/MapTest.C
index 7fb05e76a517146a116e45c6cd207e3a19863507..117f4337b6f08db8df8be6a079ff4154173812b9 100644
--- a/applications/test/Map/MapTest.C
+++ b/applications/test/Map/MapTest.C
@@ -53,15 +53,15 @@ int main(int argc, char *argv[])
 
     if (bananaIter == banana.end())
     {
-        Info << "not found" << endl;
+        Info<< "not found" << endl;
     }
     else
     {
-        Info << "5 is " << bananaIter() << endl;
+        Info<< "5 is " << bananaIter() << endl;
     }
 
     // Same with STL
-    Info << "Same with STL" << endl;
+    Info<< "Same with STL" << endl;
 
     std::map<label, bool> STLbanana;
     STLbanana[5] = true;
@@ -69,11 +69,11 @@ int main(int argc, char *argv[])
 
     if (STLbananaIter == STLbanana.end())
     {
-        Info << "not found" << endl;
+        Info<< "not found" << endl;
     }
     else
     {
-        Info << "5 is " << STLbananaIter->second << endl;
+        Info<< "5 is " << STLbananaIter->second << endl;
     }
 
 
diff --git a/applications/test/Matrix/MatrixTest.C b/applications/test/Matrix/MatrixTest.C
index 5576291fd50ac8c3e1661acc19a716645d7cd989..fabbb5c5f9394eaa9e5c6e89dde31b98e21cfd2c 100644
--- a/applications/test/Matrix/MatrixTest.C
+++ b/applications/test/Matrix/MatrixTest.C
@@ -71,7 +71,7 @@ int main(int argc, char *argv[])
     hmm4 = hmm5;
     Info<< hmm5 << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/NamedEnum/namedEnumTest.C b/applications/test/NamedEnum/namedEnumTest.C
index 918e3b63b2a5eda4e5d91d85c32f65836f67cddd..728d54ecb819199733ed740296fe65234682395e 100644
--- a/applications/test/NamedEnum/namedEnumTest.C
+++ b/applications/test/NamedEnum/namedEnumTest.C
@@ -68,7 +68,7 @@ int main(int argc, char *argv[])
     namedEnumTest::options hmm(namedEnumTest::namedEnum.read(Sin));
     Info<< namedEnumTest::namedEnum[hmm] << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/ODETest/ODETest.C b/applications/test/ODETest/ODETest.C
index 2d8cecfa9acf58d7c7c263152477d26d18672e65..acb444a0a52828e54d233ac88f83d398889cc9b3 100644
--- a/applications/test/ODETest/ODETest.C
+++ b/applications/test/ODETest/ODETest.C
@@ -167,7 +167,7 @@ int main(int argc, char *argv[])
     Info<< nl << "Analytical: y(2.0) = " << yEnd << endl;
     Info      << "Numerical:  y(2.0) = " << y << ", hEst = " << hEst << endl;
 
-    Info << "\nEnd\n" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/POSIX/POSIXTest.C b/applications/test/POSIX/POSIXTest.C
index 86679c2c9076368603a3e19abb03bd795769c2db..08052ecba9b1ea19afca3a2880616576cd579a06 100644
--- a/applications/test/POSIX/POSIXTest.C
+++ b/applications/test/POSIX/POSIXTest.C
@@ -37,7 +37,7 @@ int main(int argc, char *argv[])
 {
     rmDir("hmm");
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/PackedList2/PackedListTest2.C b/applications/test/PackedList2/PackedListTest2.C
index ef027fee2e467666613530968ffd35bd338bc69f..bb61f6e308aa82dc5fe8489fd12c713346acff6f 100644
--- a/applications/test/PackedList2/PackedListTest2.C
+++ b/applications/test/PackedList2/PackedListTest2.C
@@ -135,7 +135,7 @@ int main(int argc, char *argv[])
     sum = 0;
     for (label iter = 0; iter < nIters; ++iter)
     {
-        for(unsigned int i = 0; i < stlVector.size(); i++)
+        for (unsigned int i = 0; i < stlVector.size(); i++)
         {
             sum += stlVector[i];
         }
@@ -386,7 +386,7 @@ int main(int argc, char *argv[])
         << " s" << endl;
 
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/PtrList/PtrListTest.C b/applications/test/PtrList/PtrListTest.C
index 7fbff08d11ced6752cf4777632478b58e495b743..61f0985ea3926ac86631e0554373873b304b9c63 100644
--- a/applications/test/PtrList/PtrListTest.C
+++ b/applications/test/PtrList/PtrListTest.C
@@ -54,7 +54,7 @@ public:
 
     ~Scalar()
     {
-        Info <<"delete Scalar: " << data_ << endl;
+        Info<<"delete Scalar: " << data_ << endl;
     }
 
     autoPtr<Scalar> clone() const;
diff --git a/applications/test/Tuple2/Tuple2Test.C b/applications/test/Tuple2/Tuple2Test.C
index d770b4f83910d69003ca509e5e166b4e9449a8f0..b535f6a45c749fa86b6ed96945578a26df08d03c 100644
--- a/applications/test/Tuple2/Tuple2Test.C
+++ b/applications/test/Tuple2/Tuple2Test.C
@@ -44,7 +44,7 @@ int main()
 
     Info<< t2 << " " << t2.first() << " " << t2.second() << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/UIndirectListTest/UIndirectListTest.C b/applications/test/UIndirectListTest/UIndirectListTest.C
index 67943b7d94223cf31c393fd2071c88e78b968e0d..120217b673b95506e67f0ae13856d4b9c0cf8adf 100644
--- a/applications/test/UIndirectListTest/UIndirectListTest.C
+++ b/applications/test/UIndirectListTest/UIndirectListTest.C
@@ -100,7 +100,7 @@ int main(int argc, char *argv[])
     dynList.append(UIndirectList<double>(completeList, addresses));
     Info<< "DynamicList::append(UIndirectList): " << dynList << endl;
 
-    Info << "\nEnd\n" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/callback/callbackTest.C b/applications/test/callback/callbackTest.C
index dc344246783ae01f7800d40f9ce5bf735e58c3a7..f9d35dd02390552bf5ad466bdc83f906a3ca06f4 100644
--- a/applications/test/callback/callbackTest.C
+++ b/applications/test/callback/callbackTest.C
@@ -118,7 +118,7 @@ int main(int argc, char *argv[])
 
     cbr.testCallbackFunction();
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/dimensionedType/dimensionedTypeTest.C b/applications/test/dimensionedType/dimensionedTypeTest.C
index d87391ab6d83e7e779e5af90b064ea7073dfab5a..400d9a5d2124a0df262e904013a7ce224a5f9499 100644
--- a/applications/test/dimensionedType/dimensionedTypeTest.C
+++ b/applications/test/dimensionedType/dimensionedTypeTest.C
@@ -42,7 +42,7 @@ int main(int argc, char *argv[])
 
     Info<< ds*dt << " " << dt*ds << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/extendedStencil/testExtendedStencil.C b/applications/test/extendedStencil/testExtendedStencil.C
index 876576b29eab8666ae74c85e9801fb00c7f22324..e8cde9051bc369cf5830dd34da1da14db25ccc9e 100644
--- a/applications/test/extendedStencil/testExtendedStencil.C
+++ b/applications/test/extendedStencil/testExtendedStencil.C
@@ -188,11 +188,11 @@ int main(int argc, char *argv[])
 //        (
 //            mesh
 //        );
-//        
+//
 //        Info<< "cellFaceCell:" << endl;
 //        writeStencilStats(addressing.stencil());
-//        
-//        
+//
+//
 //        //// Do some interpolation.
 //        //{
 //        //    const labelListList& stencil = addressing.stencil();
@@ -226,7 +226,7 @@ int main(int argc, char *argv[])
 //            mesh.C(),
 //            stencilPoints
 //        );
-//        
+//
 //        forAll(stencilPoints, faceI)
 //        {
 //            if (stencilPoints[faceI].size() >= 15)
@@ -443,10 +443,10 @@ int main(int argc, char *argv[])
         (
             mesh
         );
-        
+
         Info<< "cellFaceCell:" << endl;
         writeStencilStats(addressing.stencil());
-        
+
         // Collect stencil face centres
         List<List<point> > stencilPoints(mesh.nCells());
         addressing.collectData
@@ -454,7 +454,7 @@ int main(int argc, char *argv[])
             mesh.Cf(),
             stencilPoints
         );
-        
+
         forAll(stencilPoints, cellI)
         {
             writeStencilOBJ
@@ -477,7 +477,7 @@ int main(int argc, char *argv[])
 //        vf,
 //        stencilData
 //    );
-//    for(label faci = 0; faci < mesh.nInternalFaces(); faci++)
+//    for (label faci = 0; faci < mesh.nInternalFaces(); faci++)
 //    {
 //        const scalarList& stData = stencilData[faceI];
 //        const scalarList& stWeight = fit[faceI];
diff --git a/applications/test/fileName/fileNameTest.C b/applications/test/fileName/fileNameTest.C
index c4791f6f385b208c6484ae05e89e72a455873ec7..81ebd5c255bd4dc1839b2d8200886b4b14d14e4f 100644
--- a/applications/test/fileName/fileNameTest.C
+++ b/applications/test/fileName/fileNameTest.C
@@ -108,8 +108,7 @@ int main()
     Info<< " badName(die) => " << findEtcFile("badName", true) << nl
         << endl;
 
-    Info<< "\nEnd" << endl;
-
+    Info<< "\nEnd\n" << endl;
     return 0;
 }
 
diff --git a/applications/test/fileNameClean/fileNameCleanTest.C b/applications/test/fileNameClean/fileNameCleanTest.C
index b41cc434ca0c51a070de7fceedb11065ffc25008..2d791439e99ae8bdd833217e7d52098191cbf53b 100644
--- a/applications/test/fileNameClean/fileNameCleanTest.C
+++ b/applications/test/fileNameClean/fileNameCleanTest.C
@@ -95,8 +95,7 @@ int main(int argc, char *argv[])
         printCleaning(pathName);
     }
 
-    Info<< "\nEnd" << endl;
-
+    Info<< "\nEnd\n" << endl;
     return 0;
 }
 
diff --git a/applications/test/liquid/liquidTest.C b/applications/test/liquid/liquidTest.C
index 34837df39a36e0f2697fee15ce3401941a1ff3f0..fe32c13e2804f2f5863724203b6b67fe34884208 100644
--- a/applications/test/liquid/liquidTest.C
+++ b/applications/test/liquid/liquidTest.C
@@ -39,7 +39,7 @@ int main()
     Info<< fuel.rho(1e5, 300) << endl;
     Info<< fuel << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/mesh/meshTest.C b/applications/test/mesh/meshTest.C
index 50419836759fd452f9a5dea4f9a5a64a1476b21b..91a003bc17d365d1e454e3b8c1bc09274232f3e5 100644
--- a/applications/test/mesh/meshTest.C
+++ b/applications/test/mesh/meshTest.C
@@ -59,7 +59,7 @@ int main(int argc, char *argv[])
 
     Info<< Cf << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/pTraits/pTraitsTest.C b/applications/test/pTraits/pTraitsTest.C
index 4fcdfce7198e991c6d2e56e482c972fbee5432d4..2697e6b73263e0145c280d258fb2adbd1a7e9659 100644
--- a/applications/test/pTraits/pTraitsTest.C
+++ b/applications/test/pTraits/pTraitsTest.C
@@ -38,7 +38,7 @@ int main()
 {
     Info<< pTraits<scalar>::typeName << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/primitivePatch/testPrimitivePatch.C b/applications/test/primitivePatch/testPrimitivePatch.C
index e19b7d0512ba0517975e2395a3d5c5da8bc1694b..cf24ab3435f7fe5be5d5dca5e3ec2ab45b36ae5e 100644
--- a/applications/test/primitivePatch/testPrimitivePatch.C
+++ b/applications/test/primitivePatch/testPrimitivePatch.C
@@ -137,7 +137,7 @@ void writeFaceEdges
         const labelList& myEdges = faceEdges[faceI];
 
         forAll(myEdges, i)
-        {   
+        {
             const edge& e = edges[myEdges[i]];
 
             feStream<< "l " << e.start()+1 << ' ' << e.end()+1 << endl;
@@ -172,7 +172,7 @@ void writeEdgeFaces
         const labelList& myFaces = edgeFaces[edgeI];
 
         forAll(myFaces, i)
-        {   
+        {
             efStream<< "l " << myFaces[0]+1 << ' ' << myFaces[i]+1 << endl;
         }
     }
@@ -249,7 +249,7 @@ int main(int argc, char *argv[])
 
     writeFaceFaces(localPoints, localFaces, faceFaces);
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/readCHEMKINIII/readCHEMKINIII.C b/applications/test/readCHEMKINIII/readCHEMKINIII.C
index 50721d64ead761f0d695ff8596db2bbf29b2b537..10514de3fe13402a27efa5e8d67b0233542b8469 100644
--- a/applications/test/readCHEMKINIII/readCHEMKINIII.C
+++ b/applications/test/readCHEMKINIII/readCHEMKINIII.C
@@ -91,7 +91,7 @@ int main(int argc, char *argv[])
         Info<< testReactions << endl;
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/router/processorRouter.C b/applications/test/router/processorRouter.C
index e94025ff2b6ad0616022767d5343aafd3d62e0fd..5f68822cf30a55a476a3d8a5af6834ce30a1e1ce 100644
--- a/applications/test/router/processorRouter.C
+++ b/applications/test/router/processorRouter.C
@@ -71,7 +71,7 @@ labelList procNeighbours(const polyMesh& mesh)
         {
             const polyPatch& patch = mesh.boundaryMesh()[patchI];
 
-            const processorPolyPatch& procPatch = 
+            const processorPolyPatch& procPatch =
                 refCast<const processorPolyPatch>(patch);
 
             label procId = procPatch.neighbProcNo() - Pstream::firstSlave() + 1;
@@ -96,7 +96,7 @@ point meshCentre(const polyMesh& mesh)
 
 int main(int argc, char *argv[])
 {
-#   include "setRootCase.H"    
+#   include "setRootCase.H"
 #   include "createTime.H"
 #   include "createMesh.H"
 
@@ -230,7 +230,7 @@ int main(int argc, char *argv[])
                     // Dump route as lines.
                     labelList route(cellRouter.getRoute(-(pathI + 1)));
 
-                    for(label elemI = 1; elemI < route.size(); elemI++)
+                    for (label elemI = 1; elemI < route.size(); elemI++)
                     {
                         objFile
                             << "l " << route[elemI-1]+1 << ' '
diff --git a/applications/test/router/router.C b/applications/test/router/router.C
index 1af001a81f97174474d242e37206e5255038f4e8..a4747396964d397a50b4458d639f9f8385bcaeb1 100644
--- a/applications/test/router/router.C
+++ b/applications/test/router/router.C
@@ -38,7 +38,7 @@ Foam::label Foam::router::count(const label weight) const
     {
         cnt += weights_[nodeI];
     }
-    
+
     return cnt;
 }
 
@@ -315,7 +315,7 @@ bool Foam::router::route(const labelList& path, const label pathValue)
     setWeights(0, path[0]);
 
     // Check if all endPoints can be reached
-    for(label leafI = 1; leafI < path.size(); leafI++)
+    for (label leafI = 1; leafI < path.size(); leafI++)
     {
         if (weights_[path[leafI]] == labelMax)
         {
@@ -329,7 +329,7 @@ bool Foam::router::route(const labelList& path, const label pathValue)
     }
 
     // Search back from all endpoints to start and fix weights
-    for(label leafI = 1; leafI < path.size(); leafI++)
+    for (label leafI = 1; leafI < path.size(); leafI++)
     {
         fixWeights
         (
@@ -370,7 +370,7 @@ bool Foam::router::route(const labelList& path, const label pathValue)
         {
             weights_[nodeI] = 0;
         }
-    }    
+    }
 
     return true;
 }
diff --git a/applications/test/simpleMatrix/simpleMatrixTest.C b/applications/test/simpleMatrix/simpleMatrixTest.C
index e26c4ea4a7502af3c2e613b8fbbb5f227348533d..709eb819f31f0ec4ff7dc39e06f9c763438897db 100644
--- a/applications/test/simpleMatrix/simpleMatrixTest.C
+++ b/applications/test/simpleMatrix/simpleMatrixTest.C
@@ -56,7 +56,7 @@ int main(int argc, char *argv[])
     Info<< hmm.LUsolve() << endl;
     Info<< hmm << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/test/string/stringTest.C b/applications/test/string/stringTest.C
index 2ed59bf88f7b4ab293a37bfe71b8251d51e38aea..7c74de93ed2a2d9fbbc7b700440d8ffd445e8321 100644
--- a/applications/test/string/stringTest.C
+++ b/applications/test/string/stringTest.C
@@ -102,8 +102,7 @@ int main(int argc, char *argv[])
     Info<< "Ostream<<  >" << s2 << "<\n";
     Info<< "hash:" << hex << string::hash()(s2) << endl;
 
-    Info << "End\n" << endl;
-
+    Info<< "\nEnd\n" << endl;
     return 0;
 }
 
diff --git a/applications/test/testPointEdgeWave/testPointEdgeWave.C b/applications/test/testPointEdgeWave/testPointEdgeWave.C
index 124b7a921ab6d1b72688bfdcecfae95452ce24e3..10856cbead9564fcf9ba5601a66eab5aab87913d 100644
--- a/applications/test/testPointEdgeWave/testPointEdgeWave.C
+++ b/applications/test/testPointEdgeWave/testPointEdgeWave.C
@@ -52,7 +52,7 @@ int main(int argc, char *argv[])
 
     // Get name of patch
     word patchName(args.additionalArgs()[0]);
-    
+
     // Find the label in patches by name.
     label patchI = patches.findPatchID(patchName);
 
@@ -131,8 +131,7 @@ int main(int argc, char *argv[])
 
     psf.write();
 
-    Info << nl << "End" << endl;
-
+    Info<< "\nEnd\n" << endl;
     return 0;
 }
 
diff --git a/applications/utilities/errorEstimation/estimateScalarError/estimateScalarError.C b/applications/utilities/errorEstimation/estimateScalarError/estimateScalarError.C
index 9fb3a646d651fd9e49bda17cc88cb4217d295915..76f67f6cdbad9c030a45c5f8738f7aa961e0acdb 100644
--- a/applications/utilities/errorEstimation/estimateScalarError/estimateScalarError.C
+++ b/applications/utilities/errorEstimation/estimateScalarError/estimateScalarError.C
@@ -98,10 +98,10 @@ int main(int argc, char *argv[])
 
         if (THeader.headerOk() && Uheader.headerOk())
         {
-            Info << "Reading T" << endl;
+            Info<< "Reading T" << endl;
             volScalarField T(THeader, mesh);
 
-            Info << "Reading U" << endl;
+            Info<< "Reading U" << endl;
             volVectorField U(Uheader, mesh);
 
 #           include "createPhi.H"
diff --git a/applications/utilities/errorEstimation/icoErrorEstimate/icoErrorEstimate.C b/applications/utilities/errorEstimation/icoErrorEstimate/icoErrorEstimate.C
index c236b76eb4077d3ac58404f393fb49bc12c0f931..df1069f0bfc908bc4b964e3bc0b26c2418f7ebf7 100644
--- a/applications/utilities/errorEstimation/icoErrorEstimate/icoErrorEstimate.C
+++ b/applications/utilities/errorEstimation/icoErrorEstimate/icoErrorEstimate.C
@@ -93,10 +93,10 @@ int main(int argc, char *argv[])
 
         if (pHeader.headerOk() && Uheader.headerOk())
         {
-            Info << "Reading p" << endl;
+            Info<< "Reading p" << endl;
             volScalarField p(pHeader, mesh);
 
-            Info << "Reading U" << endl;
+            Info<< "Reading U" << endl;
             volVectorField U(Uheader, mesh);
 
 #           include "createPhi.H"
diff --git a/applications/utilities/errorEstimation/icoMomentError/icoMomentError.C b/applications/utilities/errorEstimation/icoMomentError/icoMomentError.C
index 67551e1eeccc631b48d02a815307f9f52e309748..edfe1a3b598a20d42fe61455927bd0b23e47addb 100644
--- a/applications/utilities/errorEstimation/icoMomentError/icoMomentError.C
+++ b/applications/utilities/errorEstimation/icoMomentError/icoMomentError.C
@@ -94,10 +94,10 @@ int main(int argc, char *argv[])
 
         if (pHeader.headerOk() && Uheader.headerOk())
         {
-            Info << "Reading p" << endl;
+            Info<< "Reading p" << endl;
             volScalarField p(pHeader, mesh);
 
-            Info << "Reading U" << endl;
+            Info<< "Reading U" << endl;
             volVectorField U(Uheader, mesh);
 
 #           include "createPhi.H"
diff --git a/applications/utilities/errorEstimation/momentScalarError/momentScalarError.C b/applications/utilities/errorEstimation/momentScalarError/momentScalarError.C
index f1767e75b01e6f2aa025bf39be577c686f2effa4..145f03f737cbcd9393634de9c19f21e2070986cb 100644
--- a/applications/utilities/errorEstimation/momentScalarError/momentScalarError.C
+++ b/applications/utilities/errorEstimation/momentScalarError/momentScalarError.C
@@ -99,10 +99,10 @@ int main(int argc, char *argv[])
 
         if (THeader.headerOk() && Uheader.headerOk())
         {
-            Info << "Reading T" << endl;
+            Info<< "Reading T" << endl;
             volScalarField T(THeader, mesh);
 
-            Info << "Reading U" << endl;
+            Info<< "Reading U" << endl;
             volVectorField U(Uheader, mesh);
 
 #           include "createPhi.H"
diff --git a/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMesh.C b/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMesh.C
index 82e6f2c4c912863c9c8948bfbe8dcb47813a0b63..858ceb2fdb9d3659271118976892cb2d35b2db7a 100644
--- a/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMesh.C
+++ b/applications/utilities/mesh/advanced/autoRefineMesh/autoRefineMesh.C
@@ -1015,7 +1015,7 @@ int main(int argc, char *argv[])
     }
 
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/advanced/collapseEdges/collapseEdges.C b/applications/utilities/mesh/advanced/collapseEdges/collapseEdges.C
index 51ae42fb25c6f7f6e22ef6886536396f4d37934e..bc0a575207d8a8f9f28e721f6bc42f80f800d497 100644
--- a/applications/utilities/mesh/advanced/collapseEdges/collapseEdges.C
+++ b/applications/utilities/mesh/advanced/collapseEdges/collapseEdges.C
@@ -596,7 +596,7 @@ int main(int argc, char *argv[])
         mesh.write();
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/advanced/combinePatchFaces/combinePatchFaces.C b/applications/utilities/mesh/advanced/combinePatchFaces/combinePatchFaces.C
index 5e240daff160087d0548267752782b6143839953..5fc2803c8d8ca22e66797eef75c466d4ad8d7b29 100644
--- a/applications/utilities/mesh/advanced/combinePatchFaces/combinePatchFaces.C
+++ b/applications/utilities/mesh/advanced/combinePatchFaces/combinePatchFaces.C
@@ -510,7 +510,7 @@ int main(int argc, char *argv[])
         Info<< "Mesh unchanged." << endl;
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/advanced/modifyMesh/Tuple.H b/applications/utilities/mesh/advanced/modifyMesh/Tuple.H
deleted file mode 100644
index 5660e085dc3850539943acf997569c45a222ad07..0000000000000000000000000000000000000000
--- a/applications/utilities/mesh/advanced/modifyMesh/Tuple.H
+++ /dev/null
@@ -1,215 +0,0 @@
-/*---------------------------------------------------------------------------*\
-  =========                 |
-  \\      /  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::Tuple
-
-Description
-    A 2 Tuple. Differs from Tuple in that the two elements can be different
-    type.
-
-
-\*---------------------------------------------------------------------------*/
-
-#ifndef Tuple_H
-#define Tuple_H
-
-#include "Istream.H"
-#include "Ostream.H"
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-
-// Forward declaration of friend functions and operators
-
-template<class Type1, class Type2>
-class Tuple;
-
-template<class Type1, class Type2>
-Istream& operator>>(Istream&, Tuple<Type1, Type2>&);
-
-template<class Type1, class Type2>
-Ostream& operator<<(Ostream&, const Tuple<Type1, Type2>&);
-
-/*---------------------------------------------------------------------------*\
-                            Class Tuple Declaration
-\*---------------------------------------------------------------------------*/
-
-template<class Type1, class Type2>
-class Tuple
-{
-    // Private data
-
-       Type1 first_;
-       Type2 second_;
-
-
-public:
-
-    // Constructors
-
-        //- Null constructor for lists
-        inline Tuple()
-        {}
-
-        //- Construct from components
-        inline Tuple(const Type1& first, const Type2& second)
-        :
-            first_(first),
-            second_(second)
-        {}
-
-        //- Construct from Istream
-        inline Tuple(Istream& is)
-        {
-            // Read beginning of pair
-            is.readBegin("pair");
-
-            is >> first_ >> second_;
-
-            // Read end of pair
-            is.readEnd("pair");
-
-            // Check state of Istream
-            is.check("Tuple::Tuple(Istream&)");
-        }
-
-
-    // Member Functions
-
-        //- Return first
-        inline Type1 first() const
-        {
-            return first_;
-        }
-
-        //- Return first
-        inline Type1& first()
-        {
-            return first_;
-        }
-
-        //- Return second
-        inline Type2 second() const
-        {
-            return second_;
-        }
-
-        //- Return second
-        inline Type2& second()
-        {
-            return second_;
-        }
-
-        //- Return reverse pair
-        inline Tuple<Type1, Type2> reverseTuple() const
-        {
-            return Tuple<Type1, Type2>(second_, first_);
-        }
-
-
-    // Friend Operators
-
-        inline friend bool operator==
-        (
-            const Tuple<Type1, Type2>& a,
-            const Tuple<Type1, Type2>& b
-        )
-        {
-            return
-            (
-                (a.first_ == b.first_) && (a.second_ == b.second_)
-            );
-        }
-
-        inline friend bool operator!=
-        (
-            const Tuple<Type1, Type2>& a,
-            const Tuple<Type1, Type2>& b
-        )
-        {
-            return (!(a == b));
-        }
-
-
-    // IOstream Operators
-
-        friend Istream& operator>> <Type1, Type2>
-        (
-            Istream& is,
-            Tuple<Type1, Type2>& p
-        );
-        friend Ostream& operator<< <Type1, Type2>
-        (
-            Ostream& os,
-            const Tuple<Type1, Type2>& p
-        );
-};
-
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-template<class Type1, class Type2>
-Istream& operator>>(Istream& is, Tuple<Type1, Type2>& p)
-{
-    // Read beginning of Tuple<Type, Type>
-    is.readBegin("Tuple<Type, Type>");
-
-    is >> p.first_ >> p.second_;
-
-    // Read end of Tuple<Type, Type>
-    is.readEnd("Tuple<Type, Type>");
-
-    // Check state of Ostream
-    is.check("Istream& operator>>(Istream&, Tuple<Type, Type>&)");
-
-    return is;
-}
-
-template<class Type1, class Type2>
-Ostream& operator<<(Ostream& os, const Tuple<Type1, Type2>& p)
-{
-    os  << token::BEGIN_LIST
-        << p.first_ << token::SPACE
-        << p.second_
-        << token::END_LIST;
-
-    // Check state of Ostream
-    os.check("Ostream& operator<<(Ostream&, const Tuple<Type, Type>&)");
-
-    return os;
-}
-
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-} // End namespace Foam
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-#endif
-
-// ************************************************************************* //
diff --git a/applications/utilities/mesh/advanced/modifyMesh/modifyMesh.C b/applications/utilities/mesh/advanced/modifyMesh/modifyMesh.C
index a78ade8d6d42231a9514b922b821bec35cd75c19..efe2b761ed4b39a337ed9a36c9b1aedd1b5b9d25 100644
--- a/applications/utilities/mesh/advanced/modifyMesh/modifyMesh.C
+++ b/applications/utilities/mesh/advanced/modifyMesh/modifyMesh.C
@@ -375,8 +375,8 @@ int main(int argc, char *argv[])
 
     bool cellsToSplit = cellsToPyramidise.size();
 
-    //List<Tuple<pointField,point> >
-    //  cellsToCreate(dict.lookup("cellsToCreate"));
+    // List<Tuple2<pointField,point> >
+    //     cellsToCreate(dict.lookup("cellsToCreate"));
 
     Info<< "Read from " << dict.name() << nl
         << "  Boundary cutting module:" << nl
@@ -560,7 +560,7 @@ int main(int argc, char *argv[])
         }
 
         // Write resulting mesh
-        Info << "Writing modified mesh to time " << runTime.timeName() << endl;
+        Info<< "Writing modified mesh to time " << runTime.timeName() << endl;
         mesh.write();
     }
     else if (edgeToPos.size())
@@ -613,7 +613,7 @@ int main(int argc, char *argv[])
         }
 
         // Write resulting mesh
-        Info << "Writing modified mesh to time " << runTime.timeName() << endl;
+        Info<< "Writing modified mesh to time " << runTime.timeName() << endl;
         mesh.write();
     }
     else
@@ -656,13 +656,12 @@ int main(int argc, char *argv[])
         }
 
         // Write resulting mesh
-        Info << "Writing modified mesh to time " << runTime.timeName() << endl;
+        Info<< "Writing modified mesh to time " << runTime.timeName() << endl;
         mesh.write();
     }
 
 
-    Info << nl << "End" << endl;
-
+    Info<< "\nEnd\n" << endl;
     return 0;
 }
 
diff --git a/applications/utilities/mesh/advanced/refineWallLayer/refineWallLayer.C b/applications/utilities/mesh/advanced/refineWallLayer/refineWallLayer.C
index 4e48feeea549bf7d5b0dda2dff8f4c0c8241f4ea..7e42676f3a413ece91b20cfe01ec0848bac435e7 100644
--- a/applications/utilities/mesh/advanced/refineWallLayer/refineWallLayer.C
+++ b/applications/utilities/mesh/advanced/refineWallLayer/refineWallLayer.C
@@ -234,11 +234,11 @@ int main(int argc, char *argv[])
     }
 
     // Write resulting mesh
-    Info << "Writing refined morphMesh to time " << runTime.timeName() << endl;
+    Info<< "Writing refined morphMesh to time " << runTime.timeName() << endl;
 
     mesh.write();
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/advanced/refinementLevel/refinementLevel.C b/applications/utilities/mesh/advanced/refinementLevel/refinementLevel.C
index 7732c985b8484a2c822c846c3a5b554da162aa80..d3b1e14c63e5dffa651cdbd7504d98ce914a4057 100644
--- a/applications/utilities/mesh/advanced/refinementLevel/refinementLevel.C
+++ b/applications/utilities/mesh/advanced/refinementLevel/refinementLevel.C
@@ -126,41 +126,41 @@ int main(int argc, char *argv[])
     // Create bin0. Have upperlimit as factor times lowerlimit.
     bins.append(DynamicList<label>());
     lowerLimits.append(sortedVols[0]);
-    upperLimits.append(1.1*lowerLimits[lowerLimits.size()-1]);
+    upperLimits.append(1.1 * lowerLimits.last());
 
     forAll(sortedVols, i)
     {
-        if (sortedVols[i] > upperLimits[upperLimits.size()-1])
+        if (sortedVols[i] > upperLimits.last())
         {
             // New value outside of current bin
 
             // Shrink old bin.
-            DynamicList<label>& bin = bins[bins.size()-1];
+            DynamicList<label>& bin = bins.last();
 
             bin.shrink();
 
             Info<< "Collected " << bin.size() << " elements in bin "
-                << lowerLimits[lowerLimits.size()-1] << " .. "
-                << upperLimits[upperLimits.size()-1] << endl;
+                << lowerLimits.last() << " .. "
+                << upperLimits.last() << endl;
 
             // Create new bin.
             bins.append(DynamicList<label>());
             lowerLimits.append(sortedVols[i]);
-            upperLimits.append(1.1*lowerLimits[lowerLimits.size()-1]);
+            upperLimits.append(1.1 * lowerLimits.last());
 
-            Info<< "Creating new bin " << lowerLimits[lowerLimits.size()-1]
-                << " .. " << upperLimits[upperLimits.size()-1]
+            Info<< "Creating new bin " << lowerLimits.last()
+                << " .. " << upperLimits.last()
                 << endl;
         }
 
         // Append to current bin.
-        DynamicList<label>& bin = bins[bins.size()-1];
+        DynamicList<label>& bin = bins.last();
 
         bin.append(sortedVols.indices()[i]);
     }
     Info<< endl;
 
-    bins[bins.size()-1].shrink();
+    bins.last().shrink();
     bins.shrink();
     lowerLimits.shrink();
     upperLimits.shrink();
@@ -355,8 +355,7 @@ int main(int argc, char *argv[])
             << nl << endl;
     }
 
-    Info << nl << "End" << endl;
-
+    Info<< "\nEnd\n" << endl;
     return 0;
 }
 
diff --git a/applications/utilities/mesh/advanced/selectCells/selectCells.C b/applications/utilities/mesh/advanced/selectCells/selectCells.C
index c7dbdd8e42da3f7d080acc54fd36af7768c54209..4d690016be3703c44ceb4a9a86174c57e781e585 100644
--- a/applications/utilities/mesh/advanced/selectCells/selectCells.C
+++ b/applications/utilities/mesh/advanced/selectCells/selectCells.C
@@ -469,7 +469,7 @@ int main(int argc, char *argv[])
             MESH,       // meshType
             NONMESH,    // fill type
             mesh.nCells()
-        ); 
+        );
 
 
         Info<< "Removing points connecting cells unconnected by faces ..."
@@ -510,7 +510,7 @@ int main(int argc, char *argv[])
     writeSet(selectedCells, "cells selected for meshing");
 
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/advanced/splitCells/splitCells.C b/applications/utilities/mesh/advanced/splitCells/splitCells.C
index c916be8daa13324e333b20146943fda309bbe4cd..6cad468c2c37ea7ed6158e54ade21599bce595aa 100644
--- a/applications/utilities/mesh/advanced/splitCells/splitCells.C
+++ b/applications/utilities/mesh/advanced/splitCells/splitCells.C
@@ -701,7 +701,7 @@ int main(int argc, char *argv[])
         mesh.write();
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/conversion/ansysToFoam/ansysToFoam.L b/applications/utilities/mesh/conversion/ansysToFoam/ansysToFoam.L
index cbb52ab0e0a3f7cea098ebcd5e068d45a2f94b76..bcdf44f265f9c4f6568dca11c61e6e50d08410fd 100644
--- a/applications/utilities/mesh/conversion/ansysToFoam/ansysToFoam.L
+++ b/applications/utilities/mesh/conversion/ansysToFoam/ansysToFoam.L
@@ -264,10 +264,10 @@ int main(int argc, char *argv[])
     }
 
     yyFlexLexer lexer(&ansysStream);
-    while(lexer.yylex() != 0)
+    while (lexer.yylex() != 0)
     {}
 
-    Info << "Creating points" << endl;
+    Info<< "Creating points" << endl;
 
     pointField points(slPoints.size());
 
@@ -297,7 +297,7 @@ int main(int argc, char *argv[])
         pointMap[pointMapIter()] = i++;
     }
 
-    Info << "Creating cells" << endl;
+    Info<< "Creating cells" << endl;
 
     labelList cellMap(maxCelli+1);
 
@@ -409,7 +409,7 @@ int main(int argc, char *argv[])
         { 4,  2,  1,  3,  0,  5}, // hex
     };
 
-    Info << "Creating boundary patches" << endl;
+    Info<< "Creating boundary patches" << endl;
 
     faceListList boundary(slPatchCells.size());
     wordList patchNames(slPatchCells.size());
@@ -442,11 +442,11 @@ int main(int argc, char *argv[])
 
         boundary[patchI] = patchFaces;
         patchNames[patchI] = word("patch") + name(patchI + 1);
-        Info << "Patch " << patchI << " named " << patchNames[patchI]
+        Info<< "Patch " << patchI << " named " << patchNames[patchI]
             << ": " << boundary[patchI].size() << " faces" << endl;
     }
 
-    Info << "ansysToFoam: " << endl
+    Info<< "ansysToFoam: " << endl
         << "Ansys file format does not provide information about the type of "
         << "the patch (eg. wall, symmetry plane, cyclic etc)." << endl
         << "All the patches have been created "
@@ -491,7 +491,7 @@ int main(int argc, char *argv[])
     // Set the precision of the points data to 10
     IOstream::defaultPrecision(10);
 
-    Info << "Writing polyMesh" << endl;
+    Info<< "Writing polyMesh" << endl;
     pShapeMesh.write();
 
     Info<< nl << "end" << endl;
diff --git a/applications/utilities/mesh/conversion/cfx4ToFoam/cfx4ToFoam.C b/applications/utilities/mesh/conversion/cfx4ToFoam/cfx4ToFoam.C
index d193a481330205b146f4c3afe20ec4fab7ea1a25..7684db4c32f78c115bedb53f625f9e3a8d3c964d 100644
--- a/applications/utilities/mesh/conversion/cfx4ToFoam/cfx4ToFoam.C
+++ b/applications/utilities/mesh/conversion/cfx4ToFoam/cfx4ToFoam.C
@@ -73,7 +73,7 @@ int main(int argc, char *argv[])
 
     cfxFile >> nblock >> npatch >> nglue >> nelem >> npoint;
 
-    Info << "Reading blocks" << endl;
+    Info<< "Reading blocks" << endl;
 
     PtrList<hexBlock> blocks(nblock);
 
@@ -90,7 +90,7 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info << "Reading patch definitions" << endl;
+    Info<< "Reading patch definitions" << endl;
 
     wordList cfxPatchTypes(npatch);
     wordList cfxPatchNames(npatch);
@@ -126,7 +126,7 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info << "Reading block glueing information" << endl;
+    Info<< "Reading block glueing information" << endl;
 
     labelList glueMasterPatches(nglue, -1);
     labelList glueSlavePatches(nglue, -1);
@@ -145,15 +145,15 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info << "Reading block points" << endl;
+    Info<< "Reading block points" << endl;
 
     forAll (blocks, blockI)
     {
-        Info << "block " << blockI << " is a ";
+        Info<< "block " << blockI << " is a ";
         blocks[blockI].readPoints(cfxFile);
     }
 
-    Info << "Calculating block offsets" << endl;
+    Info<< "Calculating block offsets" << endl;
 
     labelList blockOffsets(nblock, -1);
 
@@ -172,7 +172,7 @@ int main(int argc, char *argv[])
           + blocks[blockI - 1].nBlockPoints();
     }
 
-    Info << "Assembling patches" << endl;
+    Info<< "Assembling patches" << endl;
 
     faceListList rawPatches(npatch);
 
@@ -203,13 +203,13 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info << "Merging points ";
+    Info<< "Merging points ";
 
     labelList pointMergeList(nMeshPoints, -1);
 
     // In order to ensure robust merging, it is necessary to traverse
     // the patch glueing list until the pointMergeList stops changing.
-    // 
+    //
 
     // For efficiency, create merge pairs in the first pass
     labelListListList glueMergePairs(glueMasterPatches.size());
@@ -396,7 +396,7 @@ int main(int argc, char *argv[])
                     )
                     {
                         changedPointMerge = true;
-                            
+
                         pointMergeList[PpointLabel]
                       = pointMergeList[NpointLabel]
                       = min
@@ -408,10 +408,10 @@ int main(int argc, char *argv[])
                 }
             }
         }
-        Info << "." << flush;
+        Info<< "." << flush;
     }
     while (changedPointMerge && nPasses < 8);
-    Info << endl;
+    Info<< endl;
 
     if (changedPointMerge == true)
     {
@@ -509,7 +509,7 @@ int main(int argc, char *argv[])
 
     nMeshPoints = nNewPoints;
 
-    Info << "Creating points" << endl;
+    Info<< "Creating points" << endl;
 
     pointField points(nMeshPoints);
 
@@ -536,7 +536,7 @@ int main(int argc, char *argv[])
         points *= scaleFactor;
     }
 
-    Info << "Creating cells" << endl;
+    Info<< "Creating cells" << endl;
 
     cellShapeList cellShapes(nMeshCells);
 
@@ -568,7 +568,7 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info << "Creating boundary patches" << endl;
+    Info<< "Creating boundary patches" << endl;
 
     faceListList boundary(npatch);
     wordList patchNames(npatch);
@@ -600,7 +600,7 @@ int main(int argc, char *argv[])
 
             if (existingPatch >= 0)
             {
-                Info << "CFX patch " << patchI
+                Info<< "CFX patch " << patchI
                     << ", of type " << cfxPatchTypes[patchI]
                     << ", name " << cfxPatchNames[patchI]
                     << " already exists as FOAM patch " << existingPatch
@@ -652,7 +652,7 @@ int main(int argc, char *argv[])
                     }
                 }
 
-                Info << "CFX patch " << patchI
+                Info<< "CFX patch " << patchI
                     << ", of type " << cfxPatchTypes[patchI]
                     << ", name " << cfxPatchNames[patchI]
                     << " converted into FOAM patch " << nCreatedPatches
@@ -660,7 +660,7 @@ int main(int argc, char *argv[])
 
                 if (cfxPatchTypes[patchI] == "WALL")
                 {
-                    Info << "wall." << endl;
+                    Info<< "wall." << endl;
 
                     patchTypes[nCreatedPatches] = wallPolyPatch::typeName;
                     patchNames[nCreatedPatches] = cfxPatchNames[patchI];
@@ -668,7 +668,7 @@ int main(int argc, char *argv[])
                 }
                 else if (cfxPatchTypes[patchI] == "SYMMET")
                 {
-                    Info << "symmetryPlane." << endl;
+                    Info<< "symmetryPlane." << endl;
 
                     patchTypes[nCreatedPatches] = symmetryPolyPatch::typeName;
                     patchNames[nCreatedPatches] = cfxPatchNames[patchI];
@@ -683,7 +683,7 @@ int main(int argc, char *argv[])
                  || cfxPatchTypes[patchI] == "USER2D"
                 )
                 {
-                    Info << "generic." << endl;
+                    Info<< "generic." << endl;
 
                     patchTypes[nCreatedPatches] = polyPatch::typeName;
                     patchNames[nCreatedPatches] = cfxPatchNames[patchI];
@@ -737,10 +737,10 @@ int main(int argc, char *argv[])
     // Set the precision of the points data to 10
     IOstream::defaultPrecision(10);
 
-    Info << "Writing polyMesh" << endl;
+    Info<< "Writing polyMesh" << endl;
     pShapeMesh.write();
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/conversion/cfx4ToFoam/hexBlock.C b/applications/utilities/mesh/conversion/cfx4ToFoam/hexBlock.C
index b9bfee00ffbfa8f6e5c45d4586192e67dc9cb362..bf16792211a08e9521e4f453e3c829e6bd174f61 100644
--- a/applications/utilities/mesh/conversion/cfx4ToFoam/hexBlock.C
+++ b/applications/utilities/mesh/conversion/cfx4ToFoam/hexBlock.C
@@ -70,12 +70,12 @@ void hexBlock::readPoints(Istream& is)
 
     if (((i ^ j) & k) > 0)
     {
-        Info << "right-handed block" << endl;
+        Info<< "right-handed block" << endl;
         blockHandedness_ = right;
     }
     else
     {
-        Info << "left-handed block" << endl;
+        Info<< "left-handed block" << endl;
         blockHandedness_ = left;
     }
 }
diff --git a/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L b/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L
index b66b9512a8568717d59067426539aaea4f469210..cf46939eaeb73fa17130c965cdbe545695e420aa 100644
--- a/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L
+++ b/applications/utilities/mesh/conversion/fluent3DMeshToFoam/fluent3DMeshToFoam.L
@@ -324,7 +324,7 @@ endOfSection               {space}")"{space}
         // point group type skipped
         strtol(endPtr, &endPtr, 16);
 
-        pointi = pointGroupStartIndex[pointGroupStartIndex.size()-1];
+        pointi = pointGroupStartIndex.last();
 
         // reset number of components to default
         pointGroupNumberOfComponents = 3;
@@ -336,11 +336,11 @@ endOfSection               {space}")"{space}
         }
 
         Info<< "PointGroup: "
-            << pointGroupZoneID[pointGroupZoneID.size()-1]
+            << pointGroupZoneID.last()
             << " start: "
-            << pointGroupStartIndex[pointGroupStartIndex.size()-1]
+            << pointGroupStartIndex.last()
             << " end: "
-            << pointGroupEndIndex[pointGroupEndIndex.size()-1] << flush;
+            << pointGroupEndIndex.last() << flush;
     }
 
 <readNumberOfPoints,readPointGroupData>{endOfSection} {
@@ -387,14 +387,14 @@ endOfSection               {space}")"{space}
         Info<< "done." << endl;
 
         // check read of points
-        if (pointi != pointGroupEndIndex[pointGroupEndIndex.size()-1]+1)
+        if (pointi != pointGroupEndIndex.last()+1)
         {
             Warning
                 << "Problem with reading points: " << nl
                 << "    start index: "
-                << pointGroupStartIndex[pointGroupStartIndex.size()-1]
+                << pointGroupStartIndex.last()
                 << " end index: "
-                << pointGroupEndIndex[pointGroupEndIndex.size()-1]
+                << pointGroupEndIndex.last()
                 << " last points read: " << pointi << nl
                 << "    on line " << lineNo << endl;
         }
@@ -440,14 +440,14 @@ endOfSection               {space}")"{space}
 
         faceGroupElementType = strtol(endPtr, &endPtr, 16);
 
-        facei = faceGroupStartIndex[faceGroupStartIndex.size()-1];
+        facei = faceGroupStartIndex.last();
 
         Info<< "FaceGroup: "
-            << faceGroupZoneID[faceGroupZoneID.size()-1]
+            << faceGroupZoneID.last()
             << " start: "
-            << faceGroupStartIndex[faceGroupStartIndex.size()-1]
+            << faceGroupStartIndex.last()
             << " end: "
-            << faceGroupEndIndex[faceGroupEndIndex.size()-1] << flush;
+            << faceGroupEndIndex.last() << flush;
     }
 
 <readNumberOfFaces,readFaceGroupData>{space}{endOfSection} {
@@ -507,14 +507,14 @@ endOfSection               {space}")"{space}
         Info<< "done." << endl;
 
         // check read of fluentFaces
-        if (facei != faceGroupEndIndex[faceGroupEndIndex.size()-1]+1)
+        if (facei != faceGroupEndIndex.last()+1)
         {
             Warning
                 << "Problem with reading fluentFaces: " << nl
                 << "    start index: "
-                << faceGroupStartIndex[faceGroupStartIndex.size()-1]
+                << faceGroupStartIndex.last()
                 << " end index: "
-                << faceGroupEndIndex[faceGroupEndIndex.size()-1]
+                << faceGroupEndIndex.last()
                 << " last fluentFaces read: " << facei << nl
                 << "    on line " << lineNo << endl;
         }
@@ -560,13 +560,13 @@ endOfSection               {space}")"{space}
         cellGroupType.append(strtol(endPtr, &endPtr, 16));
 
         Info<< "CellGroup: "
-            << cellGroupZoneID[cellGroupZoneID.size()-1]
+            << cellGroupZoneID.last()
             << " start: "
-            << cellGroupStartIndex[cellGroupStartIndex.size()-1]
+            << cellGroupStartIndex.last()
             << " end: "
-            << cellGroupEndIndex[cellGroupEndIndex.size()-1]
+            << cellGroupEndIndex.last()
             << " type: "
-            << cellGroupType[cellGroupType.size()-1]
+            << cellGroupType.last()
             << endl;
     }
 
@@ -587,13 +587,13 @@ endOfSection               {space}")"{space}
         strtol(endPtr, &endPtr, 16);
 
         Info<< "CellGroup: "
-            << cellGroupZoneID[cellGroupZoneID.size()-1]
+            << cellGroupZoneID.last()
             << " start: "
-            << cellGroupStartIndex[cellGroupStartIndex.size()-1]
+            << cellGroupStartIndex.last()
             << " end: "
-            << cellGroupEndIndex[cellGroupEndIndex.size()-1]
+            << cellGroupEndIndex.last()
             << " type: "
-            << cellGroupType[cellGroupType.size()-1]
+            << cellGroupType.last()
             << endl;
     }
 
@@ -813,7 +813,7 @@ int main(int argc, char *argv[])
 
     yyFlexLexer lexer(&fluentStream.stdStream());
 
-    while(lexer.yylex() != 0)
+    while (lexer.yylex() != 0)
     {}
 
     Info<< "\nFINISHED LEXING\n\n";
@@ -973,7 +973,7 @@ int main(int argc, char *argv[])
 
             // Set the owner of these faces to -1 so that they do not get
             // added to the mesh
-            for(label facei = start; facei <= end; facei++)
+            for (label facei = start; facei <= end; facei++)
             {
                 owner[facei] = -1;
             }
@@ -1356,7 +1356,7 @@ int main(int argc, char *argv[])
     mesh.write();
 
 
-    Info<< nl << "End" << endl;
+    Info<< "\nEnd\n" << endl;
     return 0;
 }
 
diff --git a/applications/utilities/mesh/conversion/fluentMeshToFoam/fluentMeshToFoam.L b/applications/utilities/mesh/conversion/fluentMeshToFoam/fluentMeshToFoam.L
index d1afc4523a5e0ba97cacaa6abd9a4eeecdeebfa7..3460a213e87598728a01fba28dc801bbea4bd383 100644
--- a/applications/utilities/mesh/conversion/fluentMeshToFoam/fluentMeshToFoam.L
+++ b/applications/utilities/mesh/conversion/fluentMeshToFoam/fluentMeshToFoam.L
@@ -898,7 +898,7 @@ int main(int argc, char *argv[])
     }
 
     yyFlexLexer lexer(&fluentStream);
-    while(lexer.yylex() != 0)
+    while (lexer.yylex() != 0)
     {}
 
     Info<< "\n\nFINISHED LEXING\n\n\n";
@@ -1388,7 +1388,7 @@ int main(int argc, char *argv[])
                 meshFaces[j] = cMeshFace;
                 pFaceSet.insert(cMeshFace);
             }
-            if(writeSets)
+            if (writeSets)
             {
                 Info<< "Writing patch " << patchNames[patchI]
                     << " of size " << sz << " to faceSet." << endl;
@@ -1404,7 +1404,11 @@ int main(int argc, char *argv[])
         //it will be put in a default wall boundary
         //internal boundaries are simply ignored
 
-        if(patchTypes[patchI] != "internal" && !pShapeMesh.isInternalFace(meshFaces[0]))
+        if
+        (
+            patchTypes[patchI] != "internal"
+         && !pShapeMesh.isInternalFace(meshFaces[0])
+        )
         {
             //first face is external and has valid non-internal type
 
@@ -1423,7 +1427,7 @@ int main(int argc, char *argv[])
                         << exit(FatalError);
                 }
 
-                if(facePatchID[faceI - pShapeMesh.nInternalFaces()]!= -1)
+                if (facePatchID[faceI - pShapeMesh.nInternalFaces()]!= -1)
                 {
                     FatalErrorIn(args.executable())
                         << "Face " << faceI << " on new patch "
@@ -1475,7 +1479,7 @@ int main(int argc, char *argv[])
         DynamicList<label> defaultBoundaryFaces(facePatchID.size());
         forAll(facePatchID, idI)
         {
-            if(facePatchID[idI] == -1)
+            if (facePatchID[idI] == -1)
             {
                 defaultBoundaryFaces.append(idI);
                 facePatchID[idI] = nBoundaries;
@@ -1575,50 +1579,50 @@ int main(int argc, char *argv[])
             boundaryZones[pI].append(bPatches[pI].name());
         }
 
-	    label cnt=0;
-	    SLList<label>::iterator cg = cellGroupZoneID.begin();
-	    SLList<label>::iterator start = cellGroupStartIndex.begin();
-	    SLList<label>::iterator end = cellGroupEndIndex.begin();
+        label cnt=0;
+        SLList<label>::iterator cg = cellGroupZoneID.begin();
+        SLList<label>::iterator start = cellGroupStartIndex.begin();
+        SLList<label>::iterator end = cellGroupEndIndex.begin();
 
-	    for (; cg != cellGroupZoneID.end(); ++cg, ++start, ++end)
-	    {
-	        const word& name = patchNameIDs[cg()];
-	        const word& type = patchTypeIDs[cg()];
+        for (; cg != cellGroupZoneID.end(); ++cg, ++start, ++end)
+        {
+            const word& name = patchNameIDs[cg()];
+            const word& type = patchTypeIDs[cg()];
 
-	        Info<< "Writing cell zone: " << name
+            Info<< "Writing cell zone: " << name
                 << " of type " << type << " starting at " << start() - 1
                 << " ending at " << end() - 1 << " to cellSet." << endl;
 
-	        labelList cls(end() - start() + 1);
+            labelList cls(end() - start() + 1);
 
             // Mark zone cells, used for finding faces
             boolList zoneCell(pShapeMesh.nCells(), false);
 
-	        // shift cell indizes by 1
-	        label nr=0;
-	        for (label celli = (start() - 1); celli < end(); celli++)
+            // shift cell indizes by 1
+            label nr=0;
+            for (label celli = (start() - 1); celli < end(); celli++)
             {
                 cls[nr]=celli;
                 zoneCell[celli] = true;
                 nr++;
-	        }
+            }
 
-	        cz[cnt] = new cellZone
-	        (
+            cz[cnt] = new cellZone
+            (
                 name,
                 cls,
                 cnt,
                 pShapeMesh.cellZones()
-	        );
+            );
 
             DynamicList<label> zoneFaces(pShapeMesh.nFaces());
             forAll(pShapeMesh.faceNeighbour(), faceI)
             {
                 label nei = pShapeMesh.faceNeighbour()[faceI];
                 label own = pShapeMesh.faceOwner()[faceI];
-                if(nei != -1)
+                if (nei != -1)
                 {
-                    if(zoneCell[nei] && zoneCell[own])
+                    if (zoneCell[nei] && zoneCell[own])
                     {
                         zoneFaces.append(faceI);
                     }
@@ -1641,7 +1645,7 @@ int main(int argc, char *argv[])
                 const labelList& faceCells = bPatches[pI].faceCells();
                 forAll(faceCells, fcI)
                 {
-                    if(zoneCell[faceCells[fcI] ])
+                    if (zoneCell[faceCells[fcI] ])
                     {
                         boundaryZones[pI].append(name);
                         break;
@@ -1649,8 +1653,8 @@ int main(int argc, char *argv[])
                 }
             }
 
-	        cnt++;
-	    }
+            cnt++;
+        }
 
         pShapeMesh.addZones(pz, fz, cz);
 
@@ -1715,7 +1719,7 @@ int main(int argc, char *argv[])
                 cellSet internal(pShapeMesh, name, end() - start());
 
                 // shift cell indizes by 1
-                for(label celli=start() - 1; celli<=end() - 1; celli++)
+                for (label celli = start() - 1; celli <= end() - 1; celli++)
                 {
                     internal.insert(celli);
                 }
@@ -1729,7 +1733,7 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info<< nl << "End" << endl;
+    Info<< "\nEnd\n" << endl;
     return 0;
 }
 
diff --git a/applications/utilities/mesh/conversion/foamMeshToFluent/fluentFvMesh.C b/applications/utilities/mesh/conversion/foamMeshToFluent/fluentFvMesh.C
index 65ee7d1b497396b953e203a8b9d0a64e41c66c1d..228194e4c3069fc25ab4029b256d3a13c32dc5fa 100644
--- a/applications/utilities/mesh/conversion/foamMeshToFluent/fluentFvMesh.C
+++ b/applications/utilities/mesh/conversion/foamMeshToFluent/fluentFvMesh.C
@@ -63,7 +63,7 @@ void Foam::fluentFvMesh::writeFluentMesh() const
         ).c_str()
     );
 
-    Info << "Writing Header" << endl;
+    Info<< "Writing Header" << endl;
 
     fluentMeshFile
         << "(0 \"FOAM to Fluent Mesh File\")" << std::endl << std::endl
diff --git a/applications/utilities/mesh/conversion/foamMeshToFluent/foamMeshToFluent.C b/applications/utilities/mesh/conversion/foamMeshToFluent/foamMeshToFluent.C
index a276e534a17f44b64e0a629a3e721934ccc52d3f..a4d8b25f3be24cf67d4379cc85c9e177ab95e06d 100644
--- a/applications/utilities/mesh/conversion/foamMeshToFluent/foamMeshToFluent.C
+++ b/applications/utilities/mesh/conversion/foamMeshToFluent/foamMeshToFluent.C
@@ -57,7 +57,7 @@ int main(int argc, char *argv[])
 
     mesh.writeFluentMesh();
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/conversion/gambitToFoam/gambitToFoam.L b/applications/utilities/mesh/conversion/gambitToFoam/gambitToFoam.L
index d349f7709c12c072fd2ff0fbbc61d2780298a1ab..bc88b46c1e0333331f431c3498f5f2414208ea07 100644
--- a/applications/utilities/mesh/conversion/gambitToFoam/gambitToFoam.L
+++ b/applications/utilities/mesh/conversion/gambitToFoam/gambitToFoam.L
@@ -233,7 +233,7 @@ mtype                 {space}"MTYPE:"{space}
 
 <readProgramID>{space}{word} {
 
-        Info << "Written by " << YYText() << " ";
+        Info<< "Written by " << YYText() << " ";
         BEGIN(controlInfo);
     }
 
@@ -245,20 +245,20 @@ mtype                 {space}"MTYPE:"{space}
 
 <readVersionID>{space}{versionNumber} {
 
-        Info << " version " << YYText() << endl;
+        Info<< " version " << YYText() << endl;
         BEGIN(controlInfo);
     }
 
 
 <controlInfo>{space}{dateDDMonYYYY}{space}{time} {
 
-        Info << "File written on " << YYText() << endl;
+        Info<< "File written on " << YYText() << endl;
     }
 
 
 <controlInfo>{space}{dateDDMMYYYY}{space}{time} {
 
-        Info << "File written on " << YYText() << endl;
+        Info<< "File written on " << YYText() << endl;
     }
 
 
@@ -304,7 +304,7 @@ mtype                 {space}"MTYPE:"{space}
 {nodalCoords}{spaceNl} {
 
         curNumberOfNodes = 0;
-        Info << "Reading nodal coordinates" << endl;
+        Info<< "Reading nodal coordinates" << endl;
         BEGIN(nodalCoords);
     }
 
@@ -332,7 +332,7 @@ mtype                 {space}"MTYPE:"{space}
 {cellsAndElements}{spaceNl} {
 
         curNumberOfCells = 0;
-        Info << "Reading cells" << endl;
+        Info<< "Reading cells" << endl;
         BEGIN(cellsAndElements);
     }
 
@@ -422,7 +422,7 @@ mtype                 {space}"MTYPE:"{space}
  /*             ------ Reading element group information ------               */
 
 {cellStreams}{spaceNl} {
-        Info << "Reading cell streams" << endl;
+        Info<< "Reading cell streams" << endl;
         BEGIN(cellStreams);
     }
 
@@ -504,7 +504,7 @@ mtype                 {space}"MTYPE:"{space}
 
 
 <cellStreamFlags>{labelList} {
-        Info << "Reading cell stream labels" << endl;
+        Info<< "Reading cell stream labels" << endl;
         BEGIN(cellStreamLabels);
     }
 
@@ -529,7 +529,7 @@ mtype                 {space}"MTYPE:"{space}
 
 <cellStreamLabels>{endOfSection}\n {
 
-        Info << "Finished reading cell stream labels" << endl;
+        Info<< "Finished reading cell stream labels" << endl;
 
         // reset current group ID and a number of flags
         curGroupID = 0;
@@ -541,7 +541,7 @@ mtype                 {space}"MTYPE:"{space}
 
 {boundaryPatch}{spaceNl} {
         curPatchFace = 0;
-        Info << "Reading patches" << endl;
+        Info<< "Reading patches" << endl;
         BEGIN(boundaryPatchParams);
     }
 
@@ -665,10 +665,10 @@ int main(int argc, char *argv[])
     }
 
     yyFlexLexer lexer(&gambitStream);
-    while(lexer.yylex() != 0)
+    while (lexer.yylex() != 0)
     {}
 
-    Info << "Finished lexing" << endl;
+    Info<< "Finished lexing" << endl;
 
     // make a point mapping array
     label maxPointIndex = 0;
@@ -815,7 +815,7 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info << "gambitToFoam: " << endl
+    Info<< "gambitToFoam: " << endl
         << "Gambit file format does not provide information about the type of "
         << "the patch (eg. wall, symmetry plane, cyclic etc)." << endl
         << "All the patches have been created "
@@ -864,10 +864,10 @@ int main(int argc, char *argv[])
     // Set the precision of the points data to 10
     IOstream::defaultPrecision(10);
 
-    Info << "Writing polyMesh" << endl;
+    Info<< "Writing polyMesh" << endl;
     pShapeMesh.write();
 
-    Info<< nl << "End" << endl;
+    Info<< "\nEnd\n" << endl;
     return 0;
 }
 
diff --git a/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C b/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C
index a7f9d01a7f0a3285844e29ccf60cf260c3b01643..16977b92c6788d7761cd4da49b40de7c6f036609 100644
--- a/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C
+++ b/applications/utilities/mesh/conversion/gmshToFoam/gmshToFoam.C
@@ -314,14 +314,14 @@ void readPhysNames(IFstream& inFile, Map<word>& physicalNames)
         IStringStream lineStr(line);
         label nSpaces = lineStr.str().count(' ');
 
-        if(nSpaces == 1)
+        if (nSpaces == 1)
         {
             lineStr >> regionI >> regionName;
 
             Info<< "    " << regionI << '\t'
                 << string::validate<word>(regionName) << endl;
         }
-        else if(nSpaces == 2)
+        else if (nSpaces == 2)
         {
             // >= Gmsh2.4 physical types has tag in front.
             label physType;
@@ -885,7 +885,7 @@ int main(int argc, char *argv[])
     // Now use the patchFaces to patch up the outside faces of the mesh.
 
     // Get the patch for all the outside faces (= default patch added as last)
-    const polyPatch& pp = mesh.boundaryMesh()[mesh.boundaryMesh().size()-1];
+    const polyPatch& pp = mesh.boundaryMesh().last();
 
     // Storage for faceZones.
     List<DynamicList<label> > zoneFaces(patchFaces.size());
diff --git a/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C b/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C
index 1776285e462db03cd31365ece6e603c9304e18eb..f289e8bb389a3e91b243cfb0022e94b90c9f8479 100644
--- a/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C
+++ b/applications/utilities/mesh/conversion/ideasUnvToFoam/ideasUnvToFoam.C
@@ -324,13 +324,13 @@ void readCells
             cellVerts.append(cellShape(tet, cVerts, true));
             cellMaterial.append(physProp);
 
-            if (cellVerts[cellVerts.size()-1].size() != cVerts.size())
+            if (cellVerts.last().size() != cVerts.size())
             {
                 Pout<< "Line:" << is.lineNumber()
                     << " element:" << cellI
                     << " type:" << feID
                     << " collapsed from " << cVerts << nl
-                    << " to:" << cellVerts[cellVerts.size()-1]
+                    << " to:" << cellVerts.last()
                     << endl;
             }
         }
@@ -347,13 +347,13 @@ void readCells
             cellVerts.append(cellShape(prism, cVerts, true));
             cellMaterial.append(physProp);
 
-            if (cellVerts[cellVerts.size()-1].size() != cVerts.size())
+            if (cellVerts.last().size() != cVerts.size())
             {
                 Pout<< "Line:" << is.lineNumber()
                     << " element:" << cellI
                     << " type:" << feID
                     << " collapsed from " << cVerts << nl
-                    << " to:" << cellVerts[cellVerts.size()-1]
+                    << " to:" << cellVerts.last()
                     << endl;
             }
         }
@@ -371,13 +371,13 @@ void readCells
             cellVerts.append(cellShape(hex, cVerts, true));
             cellMaterial.append(physProp);
 
-            if (cellVerts[cellVerts.size()-1].size() != cVerts.size())
+            if (cellVerts.last().size() != cVerts.size())
             {
                 Pout<< "Line:" << is.lineNumber()
                     << " element:" << cellI
                     << " type:" << feID
                     << " collapsed from " << cVerts << nl
-                    << " to:" << cellVerts[cellVerts.size()-1]
+                    << " to:" << cellVerts.last()
                     << endl;
             }
         }
@@ -412,7 +412,7 @@ void readPatches
     Sout<< "Starting reading patches at line " << is.lineNumber() << '.'
         << endl;
 
-    while(true)
+    while (true)
     {
         string line;
         is.getLine(line);
@@ -511,7 +511,7 @@ void readDOFS
     }
 
     Info<< "For DOF set " << group
-        << " named " << patchNames[patchNames.size()-1]
+        << " named " << patchNames.last()
         << " trying to read vertex indices."
         << endl;
 
@@ -534,7 +534,7 @@ void readDOFS
     }
 
     Info<< "For DOF set " << group
-        << " named " << patchNames[patchNames.size()-1]
+        << " named " << patchNames.last()
         << " read " << vertices.size() << " vertex indices." << endl;
 
     dofVertices.append(vertices.shrink());
diff --git a/applications/utilities/mesh/conversion/kivaToFoam/kivaToFoam.C b/applications/utilities/mesh/conversion/kivaToFoam/kivaToFoam.C
index f76e4dae462db79a9446aaed6fe9d99dc3a370c6..551741974bf2be71dabfe5dd454f43bfada765b4 100644
--- a/applications/utilities/mesh/conversion/kivaToFoam/kivaToFoam.C
+++ b/applications/utilities/mesh/conversion/kivaToFoam/kivaToFoam.C
@@ -103,7 +103,7 @@ int main(int argc, char *argv[])
 
 #   include "readKivaGrid.H"
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H b/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H
index ba2b615df18aa7cc6b32de4133ae0d65be446987..92c7b7c355f558bf0c3a0251bd41caba7ec0b618 100644
--- a/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H
+++ b/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H
@@ -20,7 +20,7 @@ pointField points(nPoints);
 label i4;
 labelList idface(nPoints), fv(nPoints);
 
-for(label i=0; i<nPoints; i++)
+for (label i=0; i<nPoints; i++)
 {
     scalar ffv;
     kivaFile
@@ -44,7 +44,7 @@ labelList i1tab(nPoints), i3tab(nPoints), i8tab(nPoints), idreg(nPoints),
 
 label nBfaces = 0;
 
-for(label i=0; i<nPoints; i++)
+for (label i=0; i<nPoints; i++)
 {
     label i1, i3, i8;
     scalar ff, fbcl, fbcf, fbcb;
@@ -85,7 +85,7 @@ if (mTable == 0)
 
 labelList imtab(nPoints), jmtab(nPoints), kmtab(nPoints);
 
-for(label i=0; i<nPoints; i++)
+for (label i=0; i<nPoints; i++)
 {
     label im, jm, km;
     kivaFile >> i4 >> im >> jm >> km;
@@ -115,7 +115,7 @@ forAll (pointMap, i)
 }
 
 // Initialise all cells to hex and search and set map for collocated points
-for(label i=0; i<nPoints; i++)
+for (label i=0; i<nPoints; i++)
 {
     if (f[i] > 0.0)
     {
@@ -237,7 +237,7 @@ List<SLList<face> > pFaces[nBCs];
 face quadFace(4);
 face triFace(3);
 
-for(label i=0; i<nPoints; i++)
+for (label i=0; i<nPoints; i++)
 {
     if (f[i] > 0)
     {
diff --git a/applications/utilities/mesh/conversion/plot3dToFoam/hexBlock.C b/applications/utilities/mesh/conversion/plot3dToFoam/hexBlock.C
index c1f781f899862e51ad9afc9bce0e41a81636ecd3..3ed248a86ebb1a4d3d4f051c750a88d986445d63 100644
--- a/applications/utilities/mesh/conversion/plot3dToFoam/hexBlock.C
+++ b/applications/utilities/mesh/conversion/plot3dToFoam/hexBlock.C
@@ -70,7 +70,7 @@ void hexBlock::setHandedness()
                     }
                     else
                     {
-                        Info << "Left-handed block." << endl;
+                        Info<< "Left-handed block." << endl;
                         blockHandedness_ = left;
                     }
                     return;
diff --git a/applications/utilities/mesh/conversion/polyDualMesh/meshDualiser.C b/applications/utilities/mesh/conversion/polyDualMesh/meshDualiser.C
index dfc1fbb20e651bb85c0ea2edee738d3e111234ae..52898444ae4bacd21d0885035d2778e5e3f7d02c 100644
--- a/applications/utilities/mesh/conversion/polyDualMesh/meshDualiser.C
+++ b/applications/utilities/mesh/conversion/polyDualMesh/meshDualiser.C
@@ -1410,7 +1410,7 @@ void Foam::meshDualiser::setRefinement
                     meshMod
                 );
             }
-            while(fp != 0);
+            while (fp != 0);
         }
     }
 
diff --git a/applications/utilities/mesh/conversion/sammToFoam/createPolyBoundary.C b/applications/utilities/mesh/conversion/sammToFoam/createPolyBoundary.C
index efca6a37b5854ff93dc7fc29b5aa95e276a87e9e..f3fc9a6e1dcda75a28ef798bdd08332bdf896a0b 100644
--- a/applications/utilities/mesh/conversion/sammToFoam/createPolyBoundary.C
+++ b/applications/utilities/mesh/conversion/sammToFoam/createPolyBoundary.C
@@ -111,8 +111,8 @@ void sammMesh::createPolyBoundary()
     // reset the size of the face list
     meshFaces_.setSize(nCreatedFaces);
 
-    Info << "Number of boundary faces: " << nBoundaryFacesFound << endl;
-    Info << "Total number of faces: " << nCreatedFaces << endl;
+    Info<< "Number of boundary faces: " << nBoundaryFacesFound << endl;
+    Info<< "Total number of faces: " << nCreatedFaces << endl;
 }
 
 
diff --git a/applications/utilities/mesh/conversion/sammToFoam/createPolyCells.C b/applications/utilities/mesh/conversion/sammToFoam/createPolyCells.C
index b2f1a54c4f579d481818fac61795d934b13fccb5..80dd2e7541c10a77e54d7a39869f53a349a5b30c 100644
--- a/applications/utilities/mesh/conversion/sammToFoam/createPolyCells.C
+++ b/applications/utilities/mesh/conversion/sammToFoam/createPolyCells.C
@@ -55,7 +55,7 @@ void sammMesh::createPolyCells()
         maxFaces += cellFaces_[cellI].size();
     }
 
-    Info << "Maximum possible number of faces in mesh: " << maxFaces << endl;
+    Info<< "Maximum possible number of faces in mesh: " << maxFaces << endl;
 
     meshFaces_.setSize(maxFaces);
 
@@ -72,7 +72,7 @@ void sammMesh::createPolyCells()
         // Insertion cannot be done in one go as the faces need to be
         // added into the list in the increasing order of neighbour
         // cells.  Therefore, all neighbours will be detected first
-        // and then added in the correct order.  
+        // and then added in the correct order.
 
         const faceList& curFaces = cellFaces_[cellI];
 
@@ -109,7 +109,7 @@ void sammMesh::createPolyCells()
                     label curNei = curNeighbours[neiI];
 
                     // reject neighbours with the lower label. This should
-                    // also reject current cell. 
+                    // also reject current cell.
                     if (curNei > cellI)
                     {
                         // get the list of search faces
diff --git a/applications/utilities/mesh/conversion/sammToFoam/purgeCellShapes.C b/applications/utilities/mesh/conversion/sammToFoam/purgeCellShapes.C
index 50fd89ce8f7ec14157dd0208a053c9995942406c..3abcdd645fa6c308c3c7e708642c5d751db3acab 100644
--- a/applications/utilities/mesh/conversion/sammToFoam/purgeCellShapes.C
+++ b/applications/utilities/mesh/conversion/sammToFoam/purgeCellShapes.C
@@ -55,12 +55,12 @@ void sammMesh::purgeCellShapes()
 
             if (!found)
             {
-                Info << "Purging cell shape " << cellI << endl;
+                Info<< "Purging cell shape " << cellI << endl;
                 cellShapes_[cellI] = cellShape(*unknownPtr_, labelList(0));
                 break;
             }
         }
-    }   
+    }
 }
 
 
diff --git a/applications/utilities/mesh/conversion/sammToFoam/readCouples.C b/applications/utilities/mesh/conversion/sammToFoam/readCouples.C
index 161123803ec0d0489d9513c917a4c346fc1733e8..3d9609e84de77e682c8c612dcbab6cfec4249183 100644
--- a/applications/utilities/mesh/conversion/sammToFoam/readCouples.C
+++ b/applications/utilities/mesh/conversion/sammToFoam/readCouples.C
@@ -40,7 +40,7 @@ void sammMesh::readCouples()
 
     if (couplesFile.good())
     {
-        Info << "\nReading couples" << endl;
+        Info<< "\nReading couples" << endl;
 
         // A mesh with couples cannot be a shape mesh
         isShapeMesh_ = false;
@@ -71,7 +71,7 @@ void sammMesh::readCouples()
             // get reference to master cell faces
             faceList& masterFaces = cellFaces_[masterCell - 1];
 
-//             Info << "Master cell: " << masterCell - 1 << " index: "
+//             Info<< "Master cell: " << masterCell - 1 << " index: "
 //                 << cellShapes_[masterCell - 1].model().index()
 //                 << " face: " <<
 //                 masterFaces
@@ -116,14 +116,14 @@ void sammMesh::readCouples()
                                 [slaveFace]
                         ].reverseFace();
 
-//                 Info << " slave cell: " << slaveCell - 1 << " index: "
+//                 Info<< " slave cell: " << slaveCell - 1 << " index: "
 //                     << cellShapes_[slaveCell - 1].model().index()
 //                     << " face: " << masterFaces[slaveToAdd] << endl;
 
                 slaveToAdd++;
 
             }
-//             Info << endl;
+//             Info<< endl;
 
         }
 
diff --git a/applications/utilities/mesh/conversion/sammToFoam/sammMesh.C b/applications/utilities/mesh/conversion/sammToFoam/sammMesh.C
index a5bfd9791c28a5529525ca32efab93bb2c00f54e..8ed4ddea84bc4f56eb5d7922e7bfacd58d301c58 100644
--- a/applications/utilities/mesh/conversion/sammToFoam/sammMesh.C
+++ b/applications/utilities/mesh/conversion/sammToFoam/sammMesh.C
@@ -104,7 +104,7 @@ List<const label*> sammMesh::sammAddressingTable
 // Make polyhedral mesh data (packing)
 void sammMesh::createPolyMeshData()
 {
-    Info << "Creating a polyMesh" << endl;
+    Info<< "Creating a polyMesh" << endl;
 
     createPolyCells();
 
@@ -124,7 +124,7 @@ void sammMesh::createPolyMeshData()
         {
             if (curFaceLabels[faceI] == -1)
             {
-                Info << "cell " << cellI
+                Info<< "cell " << cellI
                     << " has got an unmatched face. "
                     << "Index: " << cellShapes_[cellI].model().index() << endl
 //                     << "cell shape: " << cellShapes_[cellI] << endl
@@ -142,7 +142,7 @@ void sammMesh::createPolyMeshData()
 
     if (nProblemCells > 0)
     {
-        Info << "Number of problem cells: " << nProblemCells << endl;
+        Info<< "Number of problem cells: " << nProblemCells << endl;
     }
 }
 
diff --git a/applications/utilities/mesh/conversion/sammToFoam/sammToFoam.C b/applications/utilities/mesh/conversion/sammToFoam/sammToFoam.C
index 8095529d3270eeb39c7bbe16771b388aa50b0ced..0f5f2a2eb83e0675c14a50a9460a70549cadb003 100644
--- a/applications/utilities/mesh/conversion/sammToFoam/sammToFoam.C
+++ b/applications/utilities/mesh/conversion/sammToFoam/sammToFoam.C
@@ -61,10 +61,10 @@ int main(int argc, char *argv[])
     // Set the precision of the points data to 10
     IOstream::defaultPrecision(10);
 
-    Info << "Writing mesh" << endl;
+    Info<< "Writing mesh" << endl;
     makeMesh.writeMesh();
 
-    Info<< nl << "End" << nl << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/conversion/sammToFoam/writeMesh.C b/applications/utilities/mesh/conversion/sammToFoam/writeMesh.C
index 546b6e24de485dcb329579c913fc5bc72926d44d..141765be351633a50eb7d36989720d1328dfa81b 100644
--- a/applications/utilities/mesh/conversion/sammToFoam/writeMesh.C
+++ b/applications/utilities/mesh/conversion/sammToFoam/writeMesh.C
@@ -37,7 +37,7 @@ void sammMesh::writeMesh()
 {
     if (isShapeMesh_)
     {
-        Info << "This is a shapeMesh." << endl;
+        Info<< "This is a shapeMesh." << endl;
 
         polyMesh pShapeMesh
         (
@@ -57,7 +57,7 @@ void sammMesh::writeMesh()
             patchPhysicalTypes_
         );
 
-        Info << "Writing polyMesh" << endl;
+        Info<< "Writing polyMesh" << endl;
         pShapeMesh.write();
     }
     else
@@ -66,7 +66,7 @@ void sammMesh::writeMesh()
 
         createPolyMeshData();
 
-        Info << "This is a polyMesh" << endl;
+        Info<< "This is a polyMesh" << endl;
 
         polyMesh pMesh
         (
@@ -83,7 +83,7 @@ void sammMesh::writeMesh()
 
         pMesh.addPatches(polyBoundaryPatches(pMesh));
 
-        Info << "Writing polyMesh" << endl;
+        Info<< "Writing polyMesh" << endl;
         pMesh.write();
     }
 }
diff --git a/applications/utilities/mesh/conversion/starToFoam/createBoundaryFaces.C b/applications/utilities/mesh/conversion/starToFoam/createBoundaryFaces.C
index 09a09de8d31fcf7fe84345f593c98447f8974df2..3875b68345a3a7874205676e3fc254d0a4fb7bdf 100644
--- a/applications/utilities/mesh/conversion/starToFoam/createBoundaryFaces.C
+++ b/applications/utilities/mesh/conversion/starToFoam/createBoundaryFaces.C
@@ -127,7 +127,7 @@ void starMesh::markBoundaryFaces()
                 {
                     const label curCellIndex = facePointCells[cellI];
 
-                    const faceList& curCellFaces = 
+                    const faceList& curCellFaces =
                         cellFaces_[curCellIndex];
 
                     forAll(curCellFaces, cellFaceI)
@@ -159,11 +159,11 @@ void starMesh::markBoundaryFaces()
                 {
                     if (curFace[spI] > -1 && curFace[spI] < starPointID_.size())
                     {
-                        Info << "," << starPointID_[curFace[spI]];
+                        Info<< "," << starPointID_[curFace[spI]];
                     }
                     else
                     {
-                        Info << ",???";
+                        Info<< ",???";
                     }
                 }
 
@@ -176,7 +176,7 @@ void starMesh::markBoundaryFaces()
 
 void starMesh::collectBoundaryFaces()
 {
-    Info << "Collecting boundary faces" << endl;
+    Info<< "Collecting boundary faces" << endl;
     forAll(boundary_, patchI)
     {
         faceList& patchFaces = boundary_[patchI];
@@ -193,7 +193,7 @@ void starMesh::collectBoundaryFaces()
         }
     }
 
-    Info << "Finished collecting boundary faces" << endl;
+    Info<< "Finished collecting boundary faces" << endl;
 }
 
 
diff --git a/applications/utilities/mesh/conversion/starToFoam/createCoupleMatches.C b/applications/utilities/mesh/conversion/starToFoam/createCoupleMatches.C
index 5857f03e243a3259949b1f214ba5e9efddbef9ce..d1a074c391b10456fd73e29f25f1a9627131be5c 100644
--- a/applications/utilities/mesh/conversion/starToFoam/createCoupleMatches.C
+++ b/applications/utilities/mesh/conversion/starToFoam/createCoupleMatches.C
@@ -67,7 +67,7 @@ void starMesh::createCoupleMatches()
     {
         if (coupleI % infoJump == 0)
         {
-            Info << "Doing couple " << coupleI << ". STAR couple ID: "
+            Info<< "Doing couple " << coupleI << ". STAR couple ID: "
                 << couples_[coupleI].coupleID() << endl;
         }
 
@@ -179,7 +179,7 @@ void starMesh::createCoupleMatches()
                 d -= n*(n & d);
 
 #               ifdef DEBUG_COUPLE_INTERSECTION
-                Info << "curMasterEdge: " << curMasterEdge << endl
+                Info<< "curMasterEdge: " << curMasterEdge << endl
                     << "P: " << P << endl << "d: " << d << endl;
 #               endif
 
@@ -198,7 +198,7 @@ void starMesh::createCoupleMatches()
                     scalar det = -(e & (n ^ d));
 
 #                   ifdef DEBUG_COUPLE_INTERSECTION
-                    Info << "curSlaveEdge: " << curSlaveEdge << endl
+                    Info<< "curSlaveEdge: " << curSlaveEdge << endl
                         << "S: " << S << endl
                         << "e: " << e << endl;
 #                   endif
@@ -209,7 +209,7 @@ void starMesh::createCoupleMatches()
                         scalar beta = ((S - P) & (n ^ d))/det;
 
 #                       ifdef DEBUG_COUPLE_INTERSECTION
-                        Info << " beta: " << beta << endl;
+                        Info<< " beta: " << beta << endl;
 #                       endif
 
                         if (beta > -smallMergeTol_ && beta < 1 + smallMergeTol_)
@@ -219,7 +219,7 @@ void starMesh::createCoupleMatches()
                                 (((S - P) & d) + beta*(d & e))/magSqr(d);
 
 #                           ifdef DEBUG_COUPLE_INTERSECTION
-                            Info << " alpha: " << alpha << endl;
+                            Info<< " alpha: " << alpha << endl;
 #                           endif
 
                             if
@@ -413,7 +413,7 @@ void starMesh::createCoupleMatches()
                             scalar beta1 = (sp & e)/magSqr(e);
 
 #                           ifdef DEBUG_COUPLE_INTERSECTION
-                            Info << "P: " << P << " S: " << S << " d: " << d
+                            Info<< "P: " << P << " S: " << S << " d: " << d
                                 << " e: " << e << " sp: " << sp
                                 << " beta1: " << beta1 << endl;
 #                           endif
@@ -446,7 +446,7 @@ void starMesh::createCoupleMatches()
                             )
                             {
 #                               ifdef DEBUG_COUPLE_INTERSECTION
-                                Info << "adding irregular slave "
+                                Info<< "adding irregular slave "
                                     << "intersection2: "
                                     << points_[masterEdges[masterEdgeI].end()]
                                     << endl;
@@ -463,10 +463,10 @@ void starMesh::createCoupleMatches()
             } // end of master edges
 
 #           ifdef DEBUG_COUPLE_INTERSECTION
-            Info << "additional slave edge points: " << endl;
+            Info<< "additional slave edge points: " << endl;
             forAll (slaveEdgePoints, edgeI)
             {
-                Info << "edge: " << edgeI << ": " << slaveEdgePoints[edgeI]
+                Info<< "edge: " << edgeI << ": " << slaveEdgePoints[edgeI]
                     << endl;
             }
 #           endif
@@ -475,7 +475,7 @@ void starMesh::createCoupleMatches()
             if (nLivePoints + coupleFacePoints.size() >= points_.size())
             {
                 // increase the size of the points list
-                Info << "Resizing points list" << endl;
+                Info<< "Resizing points list" << endl;
                 points_.setSize(points_.size() + couples_.size());
             }
 
@@ -511,7 +511,7 @@ void starMesh::createCoupleMatches()
             label nTmpMasterLabels = 0;
 
 #           ifdef DEBUG_COUPLE_INTERSECTION
-            Info << "masterFace: " << masterFace << endl
+            Info<< "masterFace: " << masterFace << endl
                 << "nAdditionalMasterPoints: " << nAdditionalMasterPoints
                 << endl;
 #           endif
@@ -545,7 +545,7 @@ void starMesh::createCoupleMatches()
                     points_[masterEdges[masterEdgeI].start()];
 
                 // loop until the next label to add is -1
-                for(;;)
+                for (;;)
                 {
                     label nextPointLabel = -1;
                     label usedI = -1;
@@ -588,7 +588,7 @@ void starMesh::createCoupleMatches()
                         }
 
 #                       ifdef DEBUG_FACE_ORDERING
-                        Info << "nextPointLabel: " << nextPointLabel << endl;
+                        Info<< "nextPointLabel: " << nextPointLabel << endl;
 #                       endif
 
                         i++;
@@ -619,7 +619,7 @@ void starMesh::createCoupleMatches()
             tmpMasterFace.setSize(nTmpMasterLabels);
 
 #           ifdef DEBUG_FACE_ORDERING
-            Info << "tmpMasterFace: " << tmpMasterFace << endl;
+            Info<< "tmpMasterFace: " << tmpMasterFace << endl;
 #           endif
 
             // Eliminate all zero-length edges
@@ -657,7 +657,7 @@ void starMesh::createCoupleMatches()
                         );
 
 #                   ifdef DEBUG_FACE_ORDERING
-                    Info << "Collapsed: nMaster: " << nMaster
+                    Info<< "Collapsed: nMaster: " << nMaster
                         << " label: " << newMasterFace[nMaster] << endl;
 #                   endif
 
@@ -727,7 +727,7 @@ void starMesh::createCoupleMatches()
                 vector edgeVector = slaveEdges[slaveEdgeI].vec(points_);
 
 #               ifdef DEBUG_FACE_ORDERING
-                Info << "curSEdgePoints.size(): "
+                Info<< "curSEdgePoints.size(): "
                     << curSEdgePoints.size() << endl
                     << "edgeVector: " << edgeVector << endl;
 #               endif
@@ -739,7 +739,7 @@ void starMesh::createCoupleMatches()
                     points_[slaveEdges[slaveEdgeI].start()];
 
                 // loop until the next label to add is -1
-                for(;;)
+                for (;;)
                 {
                     label nextPointLabel = -1;
                     label usedI = -1;
@@ -782,7 +782,7 @@ void starMesh::createCoupleMatches()
                         }
 
 #                       ifdef DEBUG_FACE_ORDERING
-                        Info << "nextPointLabel: " << nextPointLabel << endl;
+                        Info<< "nextPointLabel: " << nextPointLabel << endl;
 #                       endif
 
                         i++;
@@ -813,7 +813,7 @@ void starMesh::createCoupleMatches()
             tmpSlaveFace.setSize(nTmpSlaveLabels);
 
 #           ifdef DEBUG_FACE_ORDERING
-            Info << "tmpSlaveFace: " << tmpSlaveFace << endl;
+            Info<< "tmpSlaveFace: " << tmpSlaveFace << endl;
 #           endif
 
             // Eliminate all zero-length edges
@@ -834,7 +834,7 @@ void starMesh::createCoupleMatches()
             forAll(slvEdgesToCollapse, edgeI)
             {
 #               ifdef DEBUG_FACE_ORDERING
-                Info << "slave edge length: " << edgeI << ", "
+                Info<< "slave edge length: " << edgeI << ", "
                     << slvEdgesToCollapse[edgeI].mag(points_)<< endl;
 #               endif
 
@@ -880,7 +880,7 @@ void starMesh::createCoupleMatches()
             edgeList newSlaveEdges = newSlaveFace.edges();
 
 #           ifdef DEBUG_RIGHT_HAND_WALK
-            Info << "newMasterEdges: " << newMasterEdges << endl
+            Info<< "newMasterEdges: " << newMasterEdges << endl
                 << "newSlaveEdges: " << newSlaveEdges << endl;
 #           endif
 
@@ -926,7 +926,7 @@ void starMesh::createCoupleMatches()
                     startEdgeFound = 2;
 
 #                   ifdef DEBUG_RIGHT_HAND_WALK
-                    Info << "slave edge found" << endl;
+                    Info<< "slave edge found" << endl;
 #                   endif
 
                     break;
@@ -969,7 +969,7 @@ void starMesh::createCoupleMatches()
                         startEdgeFound = 1;
 
 #                       ifdef DEBUG_RIGHT_HAND_WALK
-                        Info << "master edge found" << endl;
+                        Info<< "master edge found" << endl;
 #                       endif
 
                         break;
@@ -986,7 +986,7 @@ void starMesh::createCoupleMatches()
             if (startEdgeFound > 0)
             {
 #               ifdef DEBUG_RIGHT_HAND_WALK
-                Info << "start edge: " << startEdge << endl;
+                Info<< "start edge: " << startEdge << endl;
 #               endif
 
                 // Loop through both faces and add all edges
@@ -1004,7 +1004,7 @@ void starMesh::createCoupleMatches()
                 planeNormal /= mag(planeNormal) + VSMALL;
 
 #               ifdef DEBUG_RIGHT_HAND_WALK
-                Info << "planeNormal: " << planeNormal << endl;
+                Info<< "planeNormal: " << planeNormal << endl;
 #               endif
 
                 // Do a check to control the right-hand turn.  This is
@@ -1034,7 +1034,7 @@ void starMesh::createCoupleMatches()
                 if (tripleProduct < 0)
                 {
 #                   ifdef DEBUG_RIGHT_HAND_WALK
-                    Info << "Turning edge for right-hand turn rule" << endl;
+                    Info<< "Turning edge for right-hand turn rule" << endl;
 #                   endif
                     startEdge = startEdge.reverseEdge();
                 }
@@ -1155,7 +1155,7 @@ void starMesh::createCoupleMatches()
                         scalar curGoStraight = newDir & ahead;
 
 #                       ifdef DEBUG_RIGHT_HAND_WALK
-                        Info << "curRightTurn: " << curRightTurn
+                        Info<< "curRightTurn: " << curRightTurn
                             << " curGoStraight: " << curGoStraight << endl;
 #                       endif
 
@@ -1167,7 +1167,7 @@ void starMesh::createCoupleMatches()
                                 if (curGoStraight > goStraight)
                                 {
 #                                   ifdef DEBUG_RIGHT_HAND_WALK
-                                    Info << "a" << endl;
+                                    Info<< "a" << endl;
 #                                   endif
 
                                     // Good edge, turning left less than before
@@ -1179,7 +1179,7 @@ void starMesh::createCoupleMatches()
                             else // new edge turning right
                             {
 #                               ifdef DEBUG_RIGHT_HAND_WALK
-                                Info << "b" << endl;
+                                Info<< "b" << endl;
 #                               endif
 
                                 // good edge, turning right
@@ -1197,7 +1197,7 @@ void starMesh::createCoupleMatches()
                                 if (curGoStraight < goStraight)
                                 {
 #                                   ifdef DEBUG_RIGHT_HAND_WALK
-                                    Info << "c" << endl;
+                                    Info<< "c" << endl;
 #                                   endif
 
                                     // good edge, turning right more than before
@@ -1256,7 +1256,7 @@ void starMesh::createCoupleMatches()
                 intersectedFace.setSize(nIntFacePoints);
 
 #               ifdef DEBUG_COUPLE
-                Info << "intersectedFace: " << intersectedFace << endl;
+                Info<< "intersectedFace: " << intersectedFace << endl;
 #               endif
 
                 // check the intersection face for duplicate points
@@ -1315,7 +1315,7 @@ void starMesh::createCoupleMatches()
             forAll (intersectedFace, intPointI)
             {
 #               ifdef DEBUG_COUPLE_PROJECTION
-                Info << "Proj: old point: "
+                Info<< "Proj: old point: "
                     << points_[intersectedFace[intPointI]] << endl;
 #               endif
 
@@ -1501,7 +1501,7 @@ void starMesh::createCoupleMatches()
         points_.setSize(nLivePoints);
 
         // Finished
-        Info << "Finished doing couples" << endl;
+        Info<< "Finished doing couples" << endl;
     }
 }
 
diff --git a/applications/utilities/mesh/conversion/starToFoam/createPolyBoundary.C b/applications/utilities/mesh/conversion/starToFoam/createPolyBoundary.C
index 5f1e4b726045d4c96433d30af01a186a87edd631..e8eb4ec479c85108f35e0d1e1f745b02a7f1914b 100644
--- a/applications/utilities/mesh/conversion/starToFoam/createPolyBoundary.C
+++ b/applications/utilities/mesh/conversion/starToFoam/createPolyBoundary.C
@@ -99,7 +99,7 @@ void starMesh::createPolyBoundary()
                                         << curCellFaces[cellFaceI]
                                         << endl;
 
-                                    Info << "PROSTAR Command: vset,news,vlis";
+                                    Info<< "PROSTAR Command: vset,news,vlis";
                                     forAll (curCellFaces[cellFaceI], spI)
                                     {
                                         // check if the point is given by STAR
@@ -118,10 +118,10 @@ void starMesh::createPolyBoundary()
                                         }
                                         else
                                         {
-                                            Info << ",???";
+                                            Info<< ",???";
                                         }
                                     }
-                                    Info << " $ bset,add,vset,all" << endl;
+                                    Info<< " $ bset,add,vset,all" << endl;
                                 }
                                 else
                                 {
@@ -135,7 +135,7 @@ void starMesh::createPolyBoundary()
                                         << curCellFaces[cellFaceI]
                                         << endl;
 
-                                    Info << "PROSTAR Command: vset,news,vlis";
+                                    Info<< "PROSTAR Command: vset,news,vlis";
                                     forAll (curCellFaces[cellFaceI], spI)
                                     {
                                         // check if the point is given by STAR
@@ -154,10 +154,10 @@ void starMesh::createPolyBoundary()
                                         }
                                         else
                                         {
-                                            Info << ",???";
+                                            Info<< ",???";
                                         }
                                     }
-                                    Info << " $ bset,add,vset,all" << endl;
+                                    Info<< " $ bset,add,vset,all" << endl;
 
                                 }
                             }
@@ -191,7 +191,7 @@ void starMesh::createPolyBoundary()
             {
                 const face& missingFace = cellFaces_[cellI][faceI];
 
-                Info << "starMesh::createPolyBoundary() : "
+                Info<< "starMesh::createPolyBoundary() : "
                     << "missing face found in cell " << cellI
                     << ".\nType: " << cellShapes_[cellI].model().name()
                     << ". STAR cell number: " << starCellID_[cellI]
@@ -199,7 +199,7 @@ void starMesh::createPolyBoundary()
 
                 nMissingFaceFound++;
 
-                Info << "PROSTAR Command: vset,news,vlis";
+                Info<< "PROSTAR Command: vset,news,vlis";
                 forAll (missingFace, spI)
                 {
                     // check if the point is given by STAR or created locally
@@ -209,21 +209,21 @@ void starMesh::createPolyBoundary()
                      && missingFace[spI] < starPointID_.size()
                     )
                     {
-                        Info << "," << starPointID_[missingFace[spI]];
+                        Info<< "," << starPointID_[missingFace[spI]];
                     }
                     else
                     {
-                        Info << ",???";
+                        Info<< ",???";
                     }
                 }
-                Info << " $ bset,add,vset,all" << endl;
+                Info<< " $ bset,add,vset,all" << endl;
             }
         }
     }
 
     if (nMissingFaceFound > 0)
     {
-        Info << "Number of unmatched faces: " << nMissingFaceFound << endl;
+        Info<< "Number of unmatched faces: " << nMissingFaceFound << endl;
     }
 
     // reset the size of the face list
@@ -256,14 +256,14 @@ void starMesh::createPolyBoundary()
         {
             const face& problemFace = meshFaces_[faceI];
 
-            Info << "starMesh::createPolyBoundary() : "
+            Info<< "starMesh::createPolyBoundary() : "
                 << "problem with face " << faceI << ": addressed "
                 << markupFaces[faceI] << " times (should be 2!). Face: "
                 << problemFace << endl;
 
             nProblemFacesFound++;
 
-            Info << "PROSTAR Command: vset,news,vlis";
+            Info<< "PROSTAR Command: vset,news,vlis";
             forAll (problemFace, spI)
             {
                 // check if the point is given by STAR or created locally
@@ -273,25 +273,25 @@ void starMesh::createPolyBoundary()
                  && problemFace[spI] < starPointID_.size()
                 )
                 {
-                    Info << "," << starPointID_[problemFace[spI]];
+                    Info<< "," << starPointID_[problemFace[spI]];
                 }
                 else
                 {
-                    Info << ",???";
+                    Info<< ",???";
                 }
             }
-            Info << " $ bset,add,vset,all" << endl;
+            Info<< " $ bset,add,vset,all" << endl;
         }
     }
 
     if (nProblemFacesFound > 0)
     {
-        Info << "Number of incorrectly matched faces: "
+        Info<< "Number of incorrectly matched faces: "
             << nProblemFacesFound << endl;
     }
 
-    Info << "Number of boundary faces: " << nBoundaryFacesFound << endl;
-    Info << "Total number of faces: " << nCreatedFaces << endl;
+    Info<< "Number of boundary faces: " << nBoundaryFacesFound << endl;
+    Info<< "Total number of faces: " << nCreatedFaces << endl;
 }
 
 
diff --git a/applications/utilities/mesh/conversion/starToFoam/createPolyCells.C b/applications/utilities/mesh/conversion/starToFoam/createPolyCells.C
index fc2e65a0b984503a3ce8a30ec13e48d70c1a61f5..c4847fc3903faf20cfd2a11a7fd9af405d02eac5 100644
--- a/applications/utilities/mesh/conversion/starToFoam/createPolyCells.C
+++ b/applications/utilities/mesh/conversion/starToFoam/createPolyCells.C
@@ -55,7 +55,7 @@ void starMesh::createPolyCells()
         maxFaces += cellFaces_[cellI].size();
     }
 
-    Info << "Maximum possible number of faces in mesh: " << maxFaces << endl;
+    Info<< "Maximum possible number of faces in mesh: " << maxFaces << endl;
 
     meshFaces_.setSize(maxFaces);
 
@@ -72,7 +72,7 @@ void starMesh::createPolyCells()
         // Insertion cannot be done in one go as the faces need to be
         // added into the list in the increasing order of neighbour
         // cells.  Therefore, all neighbours will be detected first
-        // and then added in the correct order.  
+        // and then added in the correct order.
 
         const faceList& curFaces = cellFaces_[cellI];
 
@@ -109,7 +109,7 @@ void starMesh::createPolyCells()
                     label curNei = curNeighbours[neiI];
 
                     // reject neighbours with the lower label. This should
-                    // also reject current cell. 
+                    // also reject current cell.
                     if (curNei > cellI)
                     {
                         // get the list of search faces
diff --git a/applications/utilities/mesh/conversion/starToFoam/mergeCoupleFacePoints.C b/applications/utilities/mesh/conversion/starToFoam/mergeCoupleFacePoints.C
index 5850c723e0f707643bbc04768043e7e1dfbe757a..73ca9628d8db42652315f3121d133b3c76062499 100644
--- a/applications/utilities/mesh/conversion/starToFoam/mergeCoupleFacePoints.C
+++ b/applications/utilities/mesh/conversion/starToFoam/mergeCoupleFacePoints.C
@@ -48,9 +48,9 @@ void starMesh::mergeCoupleFacePoints()
     // merge set.  Once all cells (and thus points) are visited, go
     // through the renumbering list and for each merging point use the
     // label of the merge set as the new point label.
-    // This is VERY fancy. Use care if/when changing. 
+    // This is VERY fancy. Use care if/when changing.
 
-    Info << endl << "Creating merge sets" << endl;
+    Info<< endl << "Creating merge sets" << endl;
 
     // Create a renumbering list for points
     // In the first instance the renumbering list is used as a
@@ -162,7 +162,7 @@ void starMesh::mergeCoupleFacePoints()
 
                             if (nMergeSets >= mergeSetID.size())
                             {
-                                Info << "Resizing mergeSetID" << endl;
+                                Info<< "Resizing mergeSetID" << endl;
 
                                 mergeSetID.setSize
                                     (mergeSetID.size() + mergeIncrement);
@@ -327,7 +327,7 @@ void starMesh::mergeCoupleFacePoints()
             // This should be OK as the compressed points list will always
             // have less points that the original lists.  Even if there is
             // no points removed, this will copy the list back onto itself
-            // 
+            //
             renumberPoints[pointI] = nUsedPoints;
             points_[nUsedPoints] = points_[pointI];
 
@@ -345,7 +345,7 @@ void starMesh::mergeCoupleFacePoints()
     // reset number of points which need to be sorted
     points_.setSize(nUsedPoints);
 
-    Info << "Renumbering all faces" << endl;
+    Info<< "Renumbering all faces" << endl;
 
     forAll (cellFaces_, cellI)
     {
@@ -374,7 +374,7 @@ void starMesh::mergeCoupleFacePoints()
         }
     }
 
-    Info << "Renumbering all cell shapes" << endl;
+    Info<< "Renumbering all cell shapes" << endl;
 
     forAll (cellShapes_, cellI)
     {
@@ -402,7 +402,7 @@ void starMesh::mergeCoupleFacePoints()
         }
     }
 
-    Info << "Renumbering STAR point lookup" << endl;
+    Info<< "Renumbering STAR point lookup" << endl;
 
     labelList oldStarPointID = starPointID_;
 
diff --git a/applications/utilities/mesh/conversion/starToFoam/purgeCellShapes.C b/applications/utilities/mesh/conversion/starToFoam/purgeCellShapes.C
index 88f62252361f4699a64efce88c3b90d936cc756b..92dedc00e62a013f4b2a65f212d52915186a1e9e 100644
--- a/applications/utilities/mesh/conversion/starToFoam/purgeCellShapes.C
+++ b/applications/utilities/mesh/conversion/starToFoam/purgeCellShapes.C
@@ -55,12 +55,12 @@ void starMesh::purgeCellShapes()
 
             if (!found)
             {
-                Info << "Purging cell shape " << cellI << endl;
+                Info<< "Purging cell shape " << cellI << endl;
                 cellShapes_[cellI] = cellShape(*unknownPtr_, labelList(0));
                 break;
             }
         }
-    }   
+    }
 }
 
 
diff --git a/applications/utilities/mesh/conversion/starToFoam/readCouples.C b/applications/utilities/mesh/conversion/starToFoam/readCouples.C
index 975dab47d8199ea17b4f94c387de8372dcefb0e1..4d586c3da7f2090045e30f8aa9cb4000e40fa7ca 100644
--- a/applications/utilities/mesh/conversion/starToFoam/readCouples.C
+++ b/applications/utilities/mesh/conversion/starToFoam/readCouples.C
@@ -44,7 +44,7 @@ void starMesh::readCouples()
 
         if (couplesFile.good())
         {
-            Info << "\nReading couples" << endl;
+            Info<< "\nReading couples" << endl;
 
             label matchLabel, nEntries, typeFlag;
             label starMasterCell, rotXMasterFace;
@@ -178,7 +178,7 @@ void starMesh::readCouples()
             }
         }
 
-        Info << "finished reading couples" << endl;
+        Info<< "finished reading couples" << endl;
     }
 }
 
diff --git a/applications/utilities/mesh/conversion/starToFoam/starMesh.C b/applications/utilities/mesh/conversion/starToFoam/starMesh.C
index a495ae03624437cc6d0a5e769ebf4ae0d9c49b8e..9f9ddfe94b5fff50caef4dfead37a9b963e1c3d9 100644
--- a/applications/utilities/mesh/conversion/starToFoam/starMesh.C
+++ b/applications/utilities/mesh/conversion/starToFoam/starMesh.C
@@ -87,7 +87,7 @@ const label starMesh::sammAddressingTable[9][12] =
 // (first index) and STAR face number
 // - first column is always -1
 // - last column is -1 for all but hexagonal prism
-// WARNING: Possible bug for sammTrim2 
+// WARNING: Possible bug for sammTrim2
 // The lookup table for SAMM shapes is based on the rotation of the
 // shape. This would imply that the table below needs to be split between
 // the regular shapes (3-9), which are OK, and the SAMM shapes, for which
@@ -95,7 +95,7 @@ const label starMesh::sammAddressingTable[9][12] =
 // cell, firts find out the face index in the normal rotation using the cell
 // face permutation table and then use the index from the shape face lookup.
 // Additionally, have in mind that this silliness does not allow matches
-// on face 7 and 8 of the samm cell. 
+// on face 7 and 8 of the samm cell.
 
 const label starMesh::sammFacePermutationTable[24][8] =
 {
@@ -180,7 +180,7 @@ const label starMesh::shapeFaceLookup[19][9] =
 // samm trim 8:
 // star number: 1 2 3 4 5 6 7 8  In ROTATION 0
 // foam number: 2 5 4 7 1 0 3 6
-// confirmed:   1 0 6 
+// confirmed:   1 0 6
 
 
 // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
@@ -188,7 +188,7 @@ const label starMesh::shapeFaceLookup[19][9] =
 // Make polyhedral mesh data (packing)
 void starMesh::createPolyMeshData()
 {
-    Info << "Creating a polyMesh" << endl;
+    Info<< "Creating a polyMesh" << endl;
 
     createPolyCells();
 
@@ -203,7 +203,7 @@ void starMesh::createPolyMeshData()
 // a memory peak
 void starMesh::clearExtraStorage()
 {
-    Info << "Clearing extra storage" << endl;
+    Info<< "Clearing extra storage" << endl;
 
     starPointLabelLookup_.setSize(0);
     starPointID_.setSize(0);
diff --git a/applications/utilities/mesh/conversion/starToFoam/starToFoam.C b/applications/utilities/mesh/conversion/starToFoam/starToFoam.C
index 2c2aeaa76b5ba2cc2a3350c6ebe7075e21ff3f23..7ed1cddd368a185c2810f5238b8e79669c19e489 100644
--- a/applications/utilities/mesh/conversion/starToFoam/starToFoam.C
+++ b/applications/utilities/mesh/conversion/starToFoam/starToFoam.C
@@ -61,10 +61,10 @@ int main(int argc, char *argv[])
     // Set the precision of the points data to 10
     IOstream::defaultPrecision(10);
 
-    Info << "Writing mesh" << endl;
+    Info<< "Writing mesh" << endl;
     makeMesh.writeMesh();
 
-    Info<< nl << "End" << nl << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/conversion/starToFoam/writeMesh.C b/applications/utilities/mesh/conversion/starToFoam/writeMesh.C
index 3e0cdee1fbce0caa0cb38d79b25eeeca1d3f08e7..746087fb7e37130b93949a6b52964e11eb0267c2 100644
--- a/applications/utilities/mesh/conversion/starToFoam/writeMesh.C
+++ b/applications/utilities/mesh/conversion/starToFoam/writeMesh.C
@@ -37,9 +37,9 @@ void starMesh::writeMesh()
 {
     if (isShapeMesh_)
     {
-        Info << "This is a shapeMesh." << endl;
+        Info<< "This is a shapeMesh." << endl;
 
-        Info << "Default patch type set to empty" << endl;
+        Info<< "Default patch type set to empty" << endl;
 
         clearExtraStorage();
 
@@ -61,7 +61,7 @@ void starMesh::writeMesh()
             patchPhysicalTypes_
         );
 
-        Info << "Writing polyMesh" << endl;
+        Info<< "Writing polyMesh" << endl;
         pShapeMesh.write();
     }
     else
@@ -70,7 +70,7 @@ void starMesh::writeMesh()
 
         createPolyMeshData();
 
-        Info << "This is a polyMesh" << endl;
+        Info<< "This is a polyMesh" << endl;
 
         clearExtraStorage();
 
@@ -90,7 +90,7 @@ void starMesh::writeMesh()
         // adding patches also checks the mesh
         pMesh.addPatches(polyBoundaryPatches(pMesh));
 
-        Info << "Writing polyMesh" << endl;
+        Info<< "Writing polyMesh" << endl;
         pMesh.write();
     }
 }
diff --git a/applications/utilities/mesh/conversion/writeMeshObj/writeMeshObj.C b/applications/utilities/mesh/conversion/writeMeshObj/writeMeshObj.C
index d2b23fef161b22f9f746251fc4b5c87a02bb4a29..c00be771118e664310f55dd9e2d2f5e5ec0a9951 100644
--- a/applications/utilities/mesh/conversion/writeMeshObj/writeMeshObj.C
+++ b/applications/utilities/mesh/conversion/writeMeshObj/writeMeshObj.C
@@ -62,7 +62,7 @@ void writePoints(const polyMesh& mesh, const fileName& timeName)
 
     fileName pointFile(mesh.time().path()/"meshPoints_" + timeName + ".obj");
 
-    Info << "Writing mesh points and edges to " << pointFile << endl;
+    Info<< "Writing mesh points and edges to " << pointFile << endl;
 
     OFstream pointStream(pointFile);
 
@@ -91,7 +91,7 @@ void writePoints
 {
     fileName fName(mesh.time().path()/"meshPoints_" + timeName + ".obj");
 
-    Info << "Writing mesh points and edges to " << fName << endl;
+    Info<< "Writing mesh points and edges to " << fName << endl;
 
     OFstream str(fName);
 
@@ -162,7 +162,7 @@ void writePoints
       / "meshPoints_" + timeName + '_' + name(cellI) + ".obj"
     );
 
-    Info << "Writing mesh points and edges to " << fName << endl;
+    Info<< "Writing mesh points and edges to " << fName << endl;
 
     OFstream pointStream(fName);
 
@@ -182,7 +182,7 @@ void writeFaceCentres(const polyMesh& mesh,const fileName& timeName)
       / "meshFaceCentres_" + timeName + ".obj"
     );
 
-    Info << "Writing mesh face centres to " << faceFile << endl;
+    Info<< "Writing mesh face centres to " << faceFile << endl;
 
     OFstream faceStream(faceFile);
 
@@ -200,7 +200,7 @@ void writeCellCentres(const polyMesh& mesh, const fileName& timeName)
         mesh.time().path()/"meshCellCentres_" + timeName + ".obj"
     );
 
-    Info << "Writing mesh cell centres to " << cellFile << endl;
+    Info<< "Writing mesh cell centres to " << cellFile << endl;
 
     OFstream cellStream(cellFile);
 
@@ -228,7 +228,7 @@ void writePatchCentres
             mesh.time().path()/"patch_" + pp.name() + '_' + timeName + ".obj"
         );
 
-        Info << "Writing patch face centres to " << faceFile << endl;
+        Info<< "Writing patch face centres to " << faceFile << endl;
 
         OFstream patchFaceStream(faceFile);
 
@@ -258,7 +258,7 @@ void writePatchFaces
           / "patchFaces_" + pp.name() + '_' + timeName + ".obj"
         );
 
-        Info << "Writing patch faces to " << faceFile << endl;
+        Info<< "Writing patch faces to " << faceFile << endl;
 
         OFstream patchFaceStream(faceFile);
 
@@ -301,7 +301,7 @@ void writePatchBoundaryEdges
           / "patchEdges_" + pp.name() + '_' + timeName + ".obj"
         );
 
-        Info << "Writing patch edges to " << edgeFile << endl;
+        Info<< "Writing patch edges to " << edgeFile << endl;
 
         OFstream patchEdgeStream(edgeFile);
 
@@ -351,7 +351,7 @@ void writePointCells
       / "pointEdges_" + timeName + '_' + name(pointI) + ".obj"
     );
 
-    Info << "Writing pointEdges to " << pFile << endl;
+    Info<< "Writing pointEdges to " << pFile << endl;
 
     OFstream pointStream(pFile);
 
@@ -492,7 +492,7 @@ int main(int argc, char *argv[])
                   + ".obj"
                 );
 
-                Info << "Writing mesh points and edges to " << fName << endl;
+                Info<< "Writing mesh points and edges to " << fName << endl;
 
                 OFstream str(fName);
 
@@ -506,7 +506,7 @@ int main(int argc, char *argv[])
             }
             else if
             (
-                !patchFaces 
+                !patchFaces
              && !patchEdges
              && !doCell
              && !doPoint
@@ -530,14 +530,14 @@ int main(int argc, char *argv[])
         }
         else
         {
-            Info << "No mesh." << endl;
+            Info<< "No mesh." << endl;
         }
 
-        Info << nl << endl;
+        Info<< nl << endl;
     }
 
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/generation/blockMesh/blockMeshApp.C b/applications/utilities/mesh/generation/blockMesh/blockMeshApp.C
index 6cdec703dcd52eae4e0568b5f3babef066a26803..bb30cfd4a561d3f90bd2971502b250909f284a69 100644
--- a/applications/utilities/mesh/generation/blockMesh/blockMeshApp.C
+++ b/applications/utilities/mesh/generation/blockMesh/blockMeshApp.C
@@ -382,7 +382,7 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info<< nl << "End" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/generation/blockMesh/mergePatchPairs.H b/applications/utilities/mesh/generation/blockMesh/mergePatchPairs.H
index aeb3137adfe091daaabbda9490016527a066afe9..2fd2fe2dc1d5d1f6f8bef68d48b66638d80316d9 100644
--- a/applications/utilities/mesh/generation/blockMesh/mergePatchPairs.H
+++ b/applications/utilities/mesh/generation/blockMesh/mergePatchPairs.H
@@ -83,11 +83,11 @@
                 );
             }  // end of all merge pairs
 
-            Info << "Adding point and face zones" << endl;
+            Info<< "Adding point and face zones" << endl;
             mesh.addZones(pz, fz, cz);
 
 
-            Info << "Creating attachPolyTopoChanger" << endl;
+            Info<< "Creating attachPolyTopoChanger" << endl;
             attachPolyTopoChanger polyMeshAttacher(mesh);
             polyMeshAttacher.setSize(mergePatchPairs.size());
 
diff --git a/applications/utilities/mesh/generation/extrudeMesh/extrudeMesh.C b/applications/utilities/mesh/generation/extrudeMesh/extrudeMesh.C
index 5aadec52c9cba46ff39ed64e92031a848eb8e0fe..f970c80e71c4cf5cbce74cf9f5ed82e784f118bd 100644
--- a/applications/utilities/mesh/generation/extrudeMesh/extrudeMesh.C
+++ b/applications/utilities/mesh/generation/extrudeMesh/extrudeMesh.C
@@ -418,8 +418,8 @@ int main(int argc, char *argv[])
         frontPatchFaces.setSize(layerFaces.size());
         forAll(backPatchFaces, i)
         {
-            backPatchFaces[i] = layerFaces[i][0];
-            frontPatchFaces[i] = layerFaces[i][layerFaces[i].size()-1];
+            backPatchFaces[i]  = layerFaces[i].first();
+            frontPatchFaces[i] = layerFaces[i].last();
         }
 
         // Create dummy fvSchemes, fvSolution
@@ -693,7 +693,7 @@ int main(int argc, char *argv[])
             << exit(FatalError);
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/generation/snappyHexMesh/Make/options b/applications/utilities/mesh/generation/snappyHexMesh/Make/options
index e6db59c8250a374574abe60d32f0445bc89f226a..d2ae5219d3c7ff37174e855b7607db591e83a070 100644
--- a/applications/utilities/mesh/generation/snappyHexMesh/Make/options
+++ b/applications/utilities/mesh/generation/snappyHexMesh/Make/options
@@ -1,6 +1,6 @@
 EXE_INC = \
     /* -g -DFULLDEBUG -O0 */ \
-    -I$(LIB_SRC)/decompositionMethods/decompositionMethods/lnInclude \
+    -I$(LIB_SRC)/parallel/decompositionMethods/lnInclude \
     -I$(LIB_SRC)/mesh/autoMesh/lnInclude \
     -I$(LIB_SRC)/meshTools/lnInclude \
     -I$(LIB_SRC)/triSurface/lnInclude \
diff --git a/applications/utilities/mesh/manipulation/cellSet/cellSet.C b/applications/utilities/mesh/manipulation/cellSet/cellSet.C
index e8036274261ada966abc16b8210fdf36fcf84623..9edfa8d44a28ce931e4d76cbb6bcca62dbc7373d 100644
--- a/applications/utilities/mesh/manipulation/cellSet/cellSet.C
+++ b/applications/utilities/mesh/manipulation/cellSet/cellSet.C
@@ -189,7 +189,7 @@ int main(int argc, char *argv[])
         currentSet.write();
     }
 
-    Info << nl << "End" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/manipulation/checkMesh/checkMesh.C b/applications/utilities/mesh/manipulation/checkMesh/checkMesh.C
index 6caeffbd4ec7d53a8392460a635f4820c9740940..0ce3a9d8e6483e355cfc12e5b2a22231e5aff936 100644
--- a/applications/utilities/mesh/manipulation/checkMesh/checkMesh.C
+++ b/applications/utilities/mesh/manipulation/checkMesh/checkMesh.C
@@ -120,7 +120,7 @@ int main(int argc, char *argv[])
             }
             else
             {
-                Info << "\nMesh OK.\n" << endl;
+                Info<< "\nMesh OK.\n" << endl;
             }
         }
     }
diff --git a/applications/utilities/mesh/manipulation/checkMesh/printMeshStats.C b/applications/utilities/mesh/manipulation/checkMesh/printMeshStats.C
index 269656594c5c6524c6508c7c602967ac419173df..462d1531f8d3139c111934a82580be07eb40c6c3 100644
--- a/applications/utilities/mesh/manipulation/checkMesh/printMeshStats.C
+++ b/applications/utilities/mesh/manipulation/checkMesh/printMeshStats.C
@@ -96,7 +96,7 @@ void Foam::printMeshStats(const polyMesh& mesh, const bool allTopology)
     label nTetWedge = 0;
     label nUnknown = 0;
 
-    for(label cellI = 0; cellI < mesh.nCells(); cellI++)
+    for (label cellI = 0; cellI < mesh.nCells(); cellI++)
     {
         if (hex.isA(mesh, cellI))
         {
diff --git a/applications/utilities/mesh/manipulation/createBaffles/createBaffles.C b/applications/utilities/mesh/manipulation/createBaffles/createBaffles.C
index c6fa2012188efe580b77cd5527572b7a09cfd58f..64403919f39d4899c7d7093b619bd93bb16e7334 100644
--- a/applications/utilities/mesh/manipulation/createBaffles/createBaffles.C
+++ b/applications/utilities/mesh/manipulation/createBaffles/createBaffles.C
@@ -186,7 +186,7 @@ int main(int argc, char *argv[])
         {
             newPatches.append(findPatchID(mesh, patchNames[i]));
             Info<< "Using additional patch " << patchNames[i]
-                << " at index " << newPatches[newPatches.size()-1] << endl;
+                << " at index " << newPatches.last() << endl;
         }
     }
 
diff --git a/applications/utilities/mesh/manipulation/faceSet/faceSet.C b/applications/utilities/mesh/manipulation/faceSet/faceSet.C
index 8441a1cdbe2ce773f4021ad2e572e7de02959b79..9bd9736cab31320557d705f9af4b8e0ef775d628 100644
--- a/applications/utilities/mesh/manipulation/faceSet/faceSet.C
+++ b/applications/utilities/mesh/manipulation/faceSet/faceSet.C
@@ -189,7 +189,7 @@ int main(int argc, char *argv[])
         currentSet.write();
     }
 
-    Info << nl << "End" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/manipulation/flattenMesh/flattenMesh.C b/applications/utilities/mesh/manipulation/flattenMesh/flattenMesh.C
index 69ba27f117535a54228ae3900e02ea6bcb3dbd6a..81fd297a888ed39a7c530a180c853d147cc06b79 100644
--- a/applications/utilities/mesh/manipulation/flattenMesh/flattenMesh.C
+++ b/applications/utilities/mesh/manipulation/flattenMesh/flattenMesh.C
@@ -95,7 +95,7 @@ int main(int argc, char *argv[])
     // Set the precision of the points data to 10
     IOstream::defaultPrecision(10);
 
-    Info << "Writing points into directory " << points.path() << nl << endl;
+    Info<< "Writing points into directory " << points.path() << nl << endl;
     points.write();
 
     return 0;
diff --git a/applications/utilities/mesh/manipulation/insideCells/insideCells.C b/applications/utilities/mesh/manipulation/insideCells/insideCells.C
index 7087e0506258a52dda7c281b90f2cfbd0c52909f..22f99465632927c606b7909e4b9e197d74d12a47 100644
--- a/applications/utilities/mesh/manipulation/insideCells/insideCells.C
+++ b/applications/utilities/mesh/manipulation/insideCells/insideCells.C
@@ -89,7 +89,7 @@ int main(int argc, char *argv[])
 
     insideCells.write();
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C b/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C
index b13dfb86ef04bc243b54d7517902d8e7a103ce7d..620201ba91795b2bfbb362b3c603811fded8cfba 100644
--- a/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C
+++ b/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C
@@ -77,7 +77,7 @@ int main(int argc, char *argv[])
     masterMesh.merge();
     masterMesh.polyMesh::write();
 
-    Info << nl << "End" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/manipulation/mergeMeshes/mergePolyMesh.C b/applications/utilities/mesh/manipulation/mergeMeshes/mergePolyMesh.C
index 616cfb4ce74b274996d3a770e7cdd4b1248d10d1..d1b633a4b9ee61adaaa06b8b5c0478111756a001 100644
--- a/applications/utilities/mesh/manipulation/mergeMeshes/mergePolyMesh.C
+++ b/applications/utilities/mesh/manipulation/mergeMeshes/mergePolyMesh.C
@@ -385,7 +385,7 @@ void Foam::mergePolyMesh::merge()
     // Add the patches if necessary
     if (patchNames_.size() != boundaryMesh().size())
     {
-        Info << "Copying old patches" << endl;
+        Info<< "Copying old patches" << endl;
 
         List<polyPatch*> newPatches(patchNames_.size());
 
@@ -399,7 +399,7 @@ void Foam::mergePolyMesh::merge()
             newPatches[patchI] = oldPatches[patchI].clone(oldPatches).ptr();
         }
 
-        Info << "Adding new patches. " << endl;
+        Info<< "Adding new patches. " << endl;
 
         label endOfLastPatch =
             oldPatches[patchI - 1].start() + oldPatches[patchI - 1].size();
diff --git a/applications/utilities/mesh/manipulation/mirrorMesh/mirrorFvMesh.C b/applications/utilities/mesh/manipulation/mirrorMesh/mirrorFvMesh.C
index 9876f4a06f7e8025054049522e9c6e9e4a6cafc1..0c976715904f7a8374658ce2331a71d2ad242a66 100644
--- a/applications/utilities/mesh/manipulation/mirrorMesh/mirrorFvMesh.C
+++ b/applications/utilities/mesh/manipulation/mirrorMesh/mirrorFvMesh.C
@@ -33,8 +33,8 @@ License
 const Foam::label Foam::mirrorFvMesh::cellRenumber[8][8] =
 {
     {-1, -1, -1, -1, -1, -1, -1, -1},    // unknown
-    {-1, -1, -1, -1, -1, -1, -1, -1},    // 
-    {-1, -1, -1, -1, -1, -1, -1, -1},    // 
+    {-1, -1, -1, -1, -1, -1, -1, -1},    //
+    {-1, -1, -1, -1, -1, -1, -1, -1},    //
     { 0,  3,  2,  1,  4,  7,  6,  5},    // hex
     { 2,  1,  0,  5,  4,  3,  6, -1},    // wedge
     { 0,  2,  1,  3,  5,  4, -1, -1},    // prism
@@ -74,7 +74,7 @@ Foam::mirrorFvMesh::mirrorFvMesh(const IOobject& io)
     const polyPatchList& oldPatches = boundaryMesh();
 
     // Mirror the points
-    Info << "Mirroring points. Old points: " << oldPoints.size();
+    Info<< "Mirroring points. Old points: " << oldPoints.size();
 
     pointField newPoints(2*oldPoints.size());
     label nNewPoints = 0;
@@ -120,10 +120,10 @@ Foam::mirrorFvMesh::mirrorFvMesh(const IOobject& io)
     }
 
     // Reset the size of the point list
-    Info << " New points: " << nNewPoints << endl;
+    Info<< " New points: " << nNewPoints << endl;
     newPoints.setSize(nNewPoints);
 
-    Info << "Mirroring faces. Old faces: " << oldFaces.size();
+    Info<< "Mirroring faces. Old faces: " << oldFaces.size();
 
     // Algorithm:
     // During mirroring, the faces that were previously boundary faces
@@ -329,14 +329,14 @@ Foam::mirrorFvMesh::mirrorFvMesh(const IOobject& io)
 
     // Tidy up the lists
     newFaces.setSize(nNewFaces);
-    Info << " New faces: " << nNewFaces << endl;
+    Info<< " New faces: " << nNewFaces << endl;
 
     newPatchTypes.setSize(nNewPatches);
     newPatchNames.setSize(nNewPatches);
     newPatchSizes.setSize(nNewPatches);
     newPatchStarts.setSize(nNewPatches);
 
-    Info << "Mirroring patches. Old patches: " << boundary().size()
+    Info<< "Mirroring patches. Old patches: " << boundary().size()
         << " New patches: " << nNewPatches << endl;
 
     Info<< "Mirroring cells.  Old cells: " << oldCells.size()
@@ -378,9 +378,9 @@ Foam::mirrorFvMesh::mirrorFvMesh(const IOobject& io)
     }
 
     // Mirror the cell shapes
-    Info << "Mirroring cell shapes." << endl;
+    Info<< "Mirroring cell shapes." << endl;
 
-    Info << nl << "Creating new mesh" << endl;
+    Info<< nl << "Creating new mesh" << endl;
     mirrorMeshPtr_ = new fvMesh
     (
         io,
diff --git a/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMesh.C b/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMesh.C
index a8b93b8d6823e63708484c3f39f2ec5d8e756d8a..a762dda0da4784d327365f159a4fb101c1838960 100644
--- a/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMesh.C
+++ b/applications/utilities/mesh/manipulation/mirrorMesh/mirrorMesh.C
@@ -54,10 +54,10 @@ int main(int argc, char *argv[])
     // Set the precision of the points data to 10
     IOstream::defaultPrecision(10);
 
-    Info << "Writing mirrored mesh" << endl;
+    Info<< "Writing mirrored mesh" << endl;
     mesh.mirrorMesh().write();
 
-    Info << "End" << endl;
+    Info<< "End" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/manipulation/objToVTK/objToVTK.C b/applications/utilities/mesh/manipulation/objToVTK/objToVTK.C
index 07190e49f9842dbfbae3f00ec5d7544934ff9df6..cf0b6ccd2790117f2e5437c4574186b9c8c528ae 100644
--- a/applications/utilities/mesh/manipulation/objToVTK/objToVTK.C
+++ b/applications/utilities/mesh/manipulation/objToVTK/objToVTK.C
@@ -266,7 +266,7 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/manipulation/pointSet/pointSet.C b/applications/utilities/mesh/manipulation/pointSet/pointSet.C
index 1aa70191f84cc2e1b16875a2f206ab9fcfeea870..fb0c7b12fd7899f391bccca44c87bb0f41043287 100644
--- a/applications/utilities/mesh/manipulation/pointSet/pointSet.C
+++ b/applications/utilities/mesh/manipulation/pointSet/pointSet.C
@@ -189,7 +189,7 @@ int main(int argc, char *argv[])
         currentSet.write();
     }
 
-    Info << nl << "End" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/manipulation/renumberMesh/Make/options b/applications/utilities/mesh/manipulation/renumberMesh/Make/options
index a8d7971b3b4a3ff72007b43a9db20a85694ca376..3b3b8ad48f32676c2865d1da6cef3fc0d0f803f7 100644
--- a/applications/utilities/mesh/manipulation/renumberMesh/Make/options
+++ b/applications/utilities/mesh/manipulation/renumberMesh/Make/options
@@ -2,7 +2,7 @@ EXE_INC = \
     -I$(LIB_SRC)/meshTools/lnInclude \
     -I$(LIB_SRC)/dynamicMesh/lnInclude \
     -I$(LIB_SRC)/finiteVolume/lnInclude \
-    -I$(LIB_SRC)/decompositionMethods/decompositionMethods/lnInclude
+    -I$(LIB_SRC)/parallel/decompositionMethods/lnInclude
 
 EXE_LIBS = \
     -lmeshTools \
diff --git a/applications/utilities/mesh/manipulation/rotateMesh/rotateMesh.C b/applications/utilities/mesh/manipulation/rotateMesh/rotateMesh.C
index d7a84ee45a88d7cf9bbe91dd50a8ac728ecd65f6..84b2ed78a79419c78012888731c4b5e3d522450a 100644
--- a/applications/utilities/mesh/manipulation/rotateMesh/rotateMesh.C
+++ b/applications/utilities/mesh/manipulation/rotateMesh/rotateMesh.C
@@ -103,7 +103,7 @@ int main(int argc, char *argv[])
         // Set the precision of the points data to 10
         IOstream::defaultPrecision(10);
 
-        Info << "Writing points into directory " << points.path() << nl << endl;
+        Info<< "Writing points into directory " << points.path() << nl << endl;
         points.write();
     }
 
diff --git a/applications/utilities/mesh/manipulation/setSet/setSet.C b/applications/utilities/mesh/manipulation/setSet/setSet.C
index 7b348015d40cf5147d80f8eb5868b398bf086c5c..b704c71a5de2dd2f83f9526e94234b4e53ff0c71 100644
--- a/applications/utilities/mesh/manipulation/setSet/setSet.C
+++ b/applications/utilities/mesh/manipulation/setSet/setSet.C
@@ -284,10 +284,10 @@ void printHelp(Ostream& os)
         << endl
         << "Zones can be set using zoneSets from corresponding sets:" << endl
         << "    cellZoneSet c0Zone new setToCellZone c0" << endl
-        << "    faceZoneSet f0Zone new setToFaceZone f0" << endl 
+        << "    faceZoneSet f0Zone new setToFaceZone f0" << endl
         << endl
         << "or if orientation is important:" << endl
-        << "    faceZoneSet f0Zone new setsToFaceZone f0 c0" << endl 
+        << "    faceZoneSet f0Zone new setsToFaceZone f0 c0" << endl
         << endl
         << "ZoneSets can be manipulated using the general actions:" << endl
         << "    list            - prints the contents of the set" << endl
@@ -992,7 +992,7 @@ int main(int argc, char *argv[])
         delete fileStreamPtr;
     }
 
-    Pout<< "\nEnd" << endl;
+    Pout<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/manipulation/setsToZones/setsToZones.C b/applications/utilities/mesh/manipulation/setsToZones/setsToZones.C
index df419e118b70418f11d54e277dc60f701576855a..30aba0f5ab8f7a9552cdb98d249e89e9f66f5900 100644
--- a/applications/utilities/mesh/manipulation/setsToZones/setsToZones.C
+++ b/applications/utilities/mesh/manipulation/setsToZones/setsToZones.C
@@ -341,7 +341,7 @@ int main(int argc, char *argv[])
             << exit(FatalError);
     }
 
-    Info<< nl << "End" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/manipulation/splitMesh/splitMesh.C b/applications/utilities/mesh/manipulation/splitMesh/splitMesh.C
index de6d5c10e4ec187c3f0b6c1999772120e62be77a..d1455a55c5636b429ff77bb800b0674932ee0f89 100644
--- a/applications/utilities/mesh/manipulation/splitMesh/splitMesh.C
+++ b/applications/utilities/mesh/manipulation/splitMesh/splitMesh.C
@@ -236,7 +236,7 @@ int main(int argc, char *argv[])
             mesh.faceZones()
         );
 
-    Info << "Adding point and face zones" << endl;
+    Info<< "Adding point and face zones" << endl;
     mesh.addZones(pz, fz, cz);
 
     attachPolyTopoChanger splitter(mesh);
diff --git a/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C b/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C
index a5adac74e87d19a1a973835265d719375a47dfb8..9d164f3553872b8514a65ec3cd1b768f495e08e2 100644
--- a/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C
+++ b/applications/utilities/mesh/manipulation/stitchMesh/stitchMesh.C
@@ -172,7 +172,7 @@ int main(int argc, char *argv[])
 
     // set up the tolerances for the sliding mesh
     dictionary slidingTolerances;
-    if (args.options().found("toleranceDict")) 
+    if (args.options().found("toleranceDict"))
     {
         IOdictionary toleranceFile(
             IOobject(
@@ -180,7 +180,7 @@ int main(int argc, char *argv[])
                 runTime.constant(),
                 mesh,
                 IOobject::MUST_READ,
-                IOobject::NO_WRITE                 
+                IOobject::NO_WRITE
             )
         );
         slidingTolerances += toleranceFile;
@@ -231,7 +231,7 @@ int main(int argc, char *argv[])
 
         // Note: make sure to add the zones BEFORE constructing polyMeshModifier
         // (since looks up various zones at construction time)
-        Info << "Adding point and face zones" << endl;
+        Info<< "Adding point and face zones" << endl;
         mesh.addZones(pz.shrink(), fz.shrink(), cz.shrink());
 
         // Add the perfect interface mesh modifier
@@ -316,7 +316,7 @@ int main(int argc, char *argv[])
 
         // Note: make sure to add the zones BEFORE constructing polyMeshModifier
         // (since looks up various zones at construction time)
-        Info << "Adding point and face zones" << endl;
+        Info<< "Adding point and face zones" << endl;
         mesh.addZones(pz.shrink(), fz.shrink(), cz.shrink());
 
         // Add the sliding interface mesh modifier
@@ -393,7 +393,7 @@ int main(int argc, char *argv[])
         mesh.setInstance(oldInstance);
         stitcher.instance() = oldInstance;
     }
-    Info << nl << "Writing polyMesh to time " << runTime.timeName() << endl;
+    Info<< nl << "Writing polyMesh to time " << runTime.timeName() << endl;
 
     IOstream::defaultPrecision(10);
 
diff --git a/applications/utilities/mesh/manipulation/subsetMesh/subsetMesh.C b/applications/utilities/mesh/manipulation/subsetMesh/subsetMesh.C
index f00cc8716fe0a1db3043dd93cc672e3b287a1515..303df1cbae05214a22aa5a4507691cda94580374 100644
--- a/applications/utilities/mesh/manipulation/subsetMesh/subsetMesh.C
+++ b/applications/utilities/mesh/manipulation/subsetMesh/subsetMesh.C
@@ -439,7 +439,7 @@ int main(int argc, char *argv[])
     }
 
 
-    Info << nl << "End" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C b/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C
index a76c4ad327b9939e7d26ce5ad7c604aa0602b9c4..f9b6354dd4e31d2c04d8e79b6da69661ea257baf 100644
--- a/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C
+++ b/applications/utilities/mesh/manipulation/transformPoints/transformPoints.C
@@ -267,7 +267,7 @@ int main(int argc, char *argv[])
     // Set the precision of the points data to 10
     IOstream::defaultPrecision(10);
 
-    Info << "Writing points into directory " << points.path() << nl << endl;
+    Info<< "Writing points into directory " << points.path() << nl << endl;
     points.write();
 
     return 0;
diff --git a/applications/utilities/miscellaneous/patchSummary/patchSummary.C b/applications/utilities/miscellaneous/patchSummary/patchSummary.C
index 67ae5270274bc6a6dd84d0fc510ae9979ae954a4..33028ea017f46da7dd2e9cdfbc80c9b8204e16fc 100644
--- a/applications/utilities/miscellaneous/patchSummary/patchSummary.C
+++ b/applications/utilities/miscellaneous/patchSummary/patchSummary.C
@@ -98,11 +98,11 @@ int main(int argc, char *argv[])
             outputFieldList<sphericalTensor>(vsptf, patchI);
             outputFieldList<symmTensor>(vsytf, patchI);
             outputFieldList<tensor>(vtf, patchI);
-            Info << endl;
+            Info<< endl;
         }
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/parallelProcessing/decomposePar/Make/files b/applications/utilities/parallelProcessing/decomposePar/Make/files
index d5b8de23cb73bcd5cd29d90725ffc1f2e8e96956..076ecd41bf0d9d5dc6c407fe6090941a978a6197 100644
--- a/applications/utilities/parallelProcessing/decomposePar/Make/files
+++ b/applications/utilities/parallelProcessing/decomposePar/Make/files
@@ -1,7 +1,7 @@
-decomposeMesh.C
 decomposePar.C
 domainDecomposition.C
-distributeCells.C
+domainDecompositionMesh.C
+domainDecompositionDistribute.C
 fvFieldDecomposer.C
 pointFieldDecomposer.C
 lagrangianFieldDecomposer.C
diff --git a/applications/utilities/parallelProcessing/decomposePar/Make/options b/applications/utilities/parallelProcessing/decomposePar/Make/options
index a1b8151fdd0fef6e0a5087b2708fea8ffd0ce2aa..58cb426daf10bcd05385a3a1805d2abdf48c10e6 100644
--- a/applications/utilities/parallelProcessing/decomposePar/Make/options
+++ b/applications/utilities/parallelProcessing/decomposePar/Make/options
@@ -1,5 +1,5 @@
 EXE_INC = \
-    -I$(LIB_SRC)/decompositionMethods/decompositionMethods/lnInclude \
+    -I$(LIB_SRC)/parallel/decompositionMethods/lnInclude \
     -I$(LIB_SRC)/finiteVolume/lnInclude \
     -I$(LIB_SRC)/lagrangian/basic/lnInclude \
     -I$(LIB_SRC)/meshTools/lnInclude
diff --git a/applications/utilities/parallelProcessing/decomposePar/decomposePar.C b/applications/utilities/parallelProcessing/decomposePar/decomposePar.C
index b2e08a6907a7fa0b4d5943dee6e577cbebf7748c..f8a8ca01d57b492b5f2604462fb091d7fcf055e4 100644
--- a/applications/utilities/parallelProcessing/decomposePar/decomposePar.C
+++ b/applications/utilities/parallelProcessing/decomposePar/decomposePar.C
@@ -106,7 +106,6 @@ int main(int argc, char *argv[])
         Info<< "Decomposing mesh " << regionName << nl << endl;
     }
 
-
     bool writeCellDist           = args.optionFound("cellDist");
     bool copyUniform             = args.optionFound("copyUniform");
     bool decomposeFieldsOnly     = args.optionFound("fields");
diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C
index d3b9bd049249ba3211935864d8438eb32a204517..392594cc6240d2482102bac10d5ce0212c00023e 100644
--- a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C
+++ b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C
@@ -38,7 +38,7 @@ License
 
 // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
 
-void domainDecomposition::mark
+void Foam::domainDecomposition::mark
 (
     const labelList& zoneElems,
     const label zoneI,
@@ -66,7 +66,7 @@ void domainDecomposition::mark
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
 // from components
-domainDecomposition::domainDecomposition(const IOobject& io)
+Foam::domainDecomposition::domainDecomposition(const IOobject& io)
 :
     fvMesh(io),
     decompositionDict_
@@ -105,13 +105,13 @@ domainDecomposition::domainDecomposition(const IOobject& io)
 
 // * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
 
-domainDecomposition::~domainDecomposition()
+Foam::domainDecomposition::~domainDecomposition()
 {}
 
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-bool domainDecomposition::writeDecomposition()
+bool Foam::domainDecomposition::writeDecomposition()
 {
     Info<< "\nConstructing processor meshes" << endl;
 
diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.H b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.H
index 6ec357a02ef08eb837324816a275e88255aab648..c8b8d9ac3dca6d8232866c1c073c444c00b84b7e 100644
--- a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.H
+++ b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.H
@@ -26,7 +26,7 @@ Class
     Foam::domainDecomposition
 
 Description
-    Automatic domain decomposition class for FOAM meshes
+    Automatic domain decomposition class for finite-volume meshes
 
 SourceFiles
     domainDecomposition.C
@@ -42,13 +42,11 @@ SourceFiles
 #include "PtrList.H"
 #include "point.H"
 
-#ifndef namespaceFoam
-#define namespaceFoam
-    using namespace Foam;
-#endif
+namespace Foam
+{
 
 /*---------------------------------------------------------------------------*\
-                           Class domainDecomposition Declaration
+                     Class domainDecomposition Declaration
 \*---------------------------------------------------------------------------*/
 
 class domainDecomposition
@@ -79,7 +77,7 @@ class domainDecomposition
         // original face. In order to do this properly, all face
         // indices will be incremented by 1 and the decremented as
         // necessary t avoid the problem of face number zero having no
-        // sign.  
+        // sign.
         labelListList procFaceAddressing_;
 
         //- Labels of cells for each processor
@@ -165,6 +163,11 @@ public:
 };
 
 
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
 #endif
diff --git a/applications/utilities/parallelProcessing/decomposePar/distributeCells.C b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDistribute.C
similarity index 99%
rename from applications/utilities/parallelProcessing/decomposePar/distributeCells.C
rename to applications/utilities/parallelProcessing/decomposePar/domainDecompositionDistribute.C
index ffd54ac6851818258383cbae31e424dbfdbd7519..d6e68ea880e13749712f983aab80ddc9fe044a47 100644
--- a/applications/utilities/parallelProcessing/decomposePar/distributeCells.C
+++ b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDistribute.C
@@ -33,7 +33,7 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-void domainDecomposition::distributeCells()
+void Foam::domainDecomposition::distributeCells()
 {
     Info<< "\nCalculating distribution of cells" << endl;
 
diff --git a/applications/utilities/parallelProcessing/decomposePar/decomposeMesh.C b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C
similarity index 97%
rename from applications/utilities/parallelProcessing/decomposePar/decomposeMesh.C
rename to applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C
index 2e29b243aaef87077953eb5c18755e2347358ab4..1b31d9edd59b4c7c7cc0d46c87b4af619e5985a3 100644
--- a/applications/utilities/parallelProcessing/decomposePar/decomposeMesh.C
+++ b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C
@@ -40,7 +40,7 @@ Description
 
 // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
 
-void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
+void Foam::domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
 {
     // Decide which cell goes to which processor
     distributeCells();
@@ -87,7 +87,7 @@ void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
         }
     }
 
-    Info << "\nDistributing faces to processors" << endl;
+    Info<< "\nDistributing faces to processors" << endl;
 
     // Loop through all internal faces and decide which processor they belong to
     // First visit all internal faces. If cells at both sides belong to the
@@ -158,7 +158,7 @@ void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
                         SLList<label>::iterator curInterProcBdrsNeiIter =
                             interProcBoundaries[neighbourProc].begin();
 
-                        SLList<SLList<label> >::iterator 
+                        SLList<SLList<label> >::iterator
                             curInterProcBFacesNeiIter =
                             interProcBFaces[neighbourProc].begin();
 
@@ -307,7 +307,7 @@ void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
                         SLList<label>::iterator curInterProcBdrsOwnIter =
                             interProcBoundaries[ownerProc].begin();
 
-                        SLList<SLList<label> >::iterator 
+                        SLList<SLList<label> >::iterator
                             curInterProcBFacesOwnIter =
                             interProcBFaces[ownerProc].begin();
 
@@ -432,7 +432,7 @@ void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
                         // Note: I cannot add the other side of the cyclic
                         // boundary here because this would violate the order.
                         // They will be added in a separate loop below
-                        // 
+                        //
                     }
                 }
 
@@ -483,7 +483,7 @@ void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
             // calculate the size
             label nFacesOnProcessor = curProcFaces.size();
 
-            for 
+            for
             (
                 SLList<SLList<label> >::iterator curInterProcBFacesIter =
                     interProcBFaces[procI].begin();
@@ -506,7 +506,7 @@ void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
 
             // Add internal and boundary faces
             // Remember to increment the index by one such that the
-            // turning index works properly.  
+            // turning index works properly.
             for
             (
                 SLList<label>::iterator curProcFacesIter = curProcFaces.begin();
@@ -576,7 +576,7 @@ void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
                     // add the face
 
                     // Remember to increment the index by one such that the
-                    // turning index works properly.  
+                    // turning index works properly.
                     if (cellToProc_[owner[curFacesIter()]] == procI)
                     {
                         curProcFaceAddressing[nFaces] = curFacesIter() + 1;
@@ -598,7 +598,7 @@ void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
         }
     }
 
-    Info << "\nCalculating processor boundary addressing" << endl;
+    Info<< "\nCalculating processor boundary addressing" << endl;
     // For every patch of processor boundary, find the index of the original
     // patch. Mis-alignment is caused by the fact that patches with zero size
     // are omitted. For processor patches, set index to -1.
@@ -656,7 +656,7 @@ void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
         curBoundaryAddressing.setSize(nPatches);
     }
 
-    Info << "\nDistributing points to processors" << endl;
+    Info<< "\nDistributing points to processors" << endl;
     // For every processor, loop through the list of faces for the processor.
     // For every face, loop through the list of points and mark the point as
     // used for the processor. Collect the list of used points for the
@@ -748,7 +748,7 @@ void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
                 {
                     // Mark the original face as used
                     // Remember to decrement the index by one (turning index)
-                    // 
+                    //
                     const label curF = mag(curFaceLabels[facei]) - 1;
 
                     const face& f = fcs[curF];
@@ -775,3 +775,5 @@ void domainDecomposition::decomposeMesh(const bool filterEmptyPatches)
         sort(globallySharedPoints_);
     }
 }
+
+// ************************************************************************* //
diff --git a/applications/utilities/parallelProcessing/decomposePar/fvFieldDecomposer.C b/applications/utilities/parallelProcessing/decomposePar/fvFieldDecomposer.C
index f5a6451c1266b6a0e02c165c3501c037c7f85b64..ca440ec85c210bd2574e898d4cfed06a8c4f75e7 100644
--- a/applications/utilities/parallelProcessing/decomposePar/fvFieldDecomposer.C
+++ b/applications/utilities/parallelProcessing/decomposePar/fvFieldDecomposer.C
@@ -26,14 +26,10 @@ License
 
 #include "fvFieldDecomposer.H"
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
-fvFieldDecomposer::patchFieldDecomposer::patchFieldDecomposer
+Foam::fvFieldDecomposer::patchFieldDecomposer::patchFieldDecomposer
 (
     const unallocLabelList& addressingSlice,
     const label addressingOffset
@@ -41,15 +37,15 @@ fvFieldDecomposer::patchFieldDecomposer::patchFieldDecomposer
 :
     directAddressing_(addressingSlice)
 {
-    forAll (directAddressing_, i)
+    forAll(directAddressing_, i)
     {
-        // Subtract one to align addressing.  
+        // Subtract one to align addressing.
         directAddressing_[i] -= addressingOffset + 1;
     }
 }
 
 
-fvFieldDecomposer::processorVolPatchFieldDecomposer::
+Foam::fvFieldDecomposer::processorVolPatchFieldDecomposer::
 processorVolPatchFieldDecomposer
 (
     const fvMesh& mesh,
@@ -61,9 +57,9 @@ processorVolPatchFieldDecomposer
     const labelList& own = mesh.faceOwner();
     const labelList& neighb = mesh.faceNeighbour();
 
-    forAll (directAddressing_, i)
+    forAll(directAddressing_, i)
     {
-        // Subtract one to align addressing.  
+        // Subtract one to align addressing.
         label ai = mag(addressingSlice[i]) - 1;
 
         if (ai < neighb.size())
@@ -97,7 +93,7 @@ processorVolPatchFieldDecomposer
 }
 
 
-fvFieldDecomposer::processorSurfacePatchFieldDecomposer::
+Foam::fvFieldDecomposer::processorSurfacePatchFieldDecomposer::
 processorSurfacePatchFieldDecomposer
 (
     const unallocLabelList& addressingSlice
@@ -106,7 +102,7 @@ processorSurfacePatchFieldDecomposer
     addressing_(addressingSlice.size()),
     weights_(addressingSlice.size())
 {
-    forAll (addressing_, i)
+    forAll(addressing_, i)
     {
         addressing_[i].setSize(1);
         weights_[i].setSize(1);
@@ -117,7 +113,7 @@ processorSurfacePatchFieldDecomposer
 }
 
 
-fvFieldDecomposer::fvFieldDecomposer
+Foam::fvFieldDecomposer::fvFieldDecomposer
 (
     const fvMesh& completeMesh,
     const fvMesh& procMesh,
@@ -147,7 +143,7 @@ fvFieldDecomposer::fvFieldDecomposer
         static_cast<processorSurfacePatchFieldDecomposer*>(NULL)
     )
 {
-    forAll (boundaryAddressing_, patchi)
+    forAll(boundaryAddressing_, patchi)
     {
         if (boundaryAddressing_[patchi] >= 0)
         {
@@ -162,14 +158,14 @@ fvFieldDecomposer::fvFieldDecomposer
         }
         else
         {
-            processorVolPatchFieldDecomposerPtrs_[patchi] = 
+            processorVolPatchFieldDecomposerPtrs_[patchi] =
                 new processorVolPatchFieldDecomposer
                 (
                     completeMesh_,
                     procMesh_.boundary()[patchi].patchSlice(faceAddressing_)
                 );
 
-            processorSurfacePatchFieldDecomposerPtrs_[patchi] = 
+            processorSurfacePatchFieldDecomposerPtrs_[patchi] =
                 new processorSurfacePatchFieldDecomposer
                 (
                     static_cast<const unallocLabelList&>
@@ -187,9 +183,9 @@ fvFieldDecomposer::fvFieldDecomposer
 
 // * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
 
-fvFieldDecomposer::~fvFieldDecomposer()
+Foam::fvFieldDecomposer::~fvFieldDecomposer()
 {
-    forAll (patchFieldDecomposerPtrs_, patchi)
+    forAll(patchFieldDecomposerPtrs_, patchi)
     {
         if (patchFieldDecomposerPtrs_[patchi])
         {
@@ -197,7 +193,7 @@ fvFieldDecomposer::~fvFieldDecomposer()
         }
     }
 
-    forAll (processorVolPatchFieldDecomposerPtrs_, patchi)
+    forAll(processorVolPatchFieldDecomposerPtrs_, patchi)
     {
         if (processorVolPatchFieldDecomposerPtrs_[patchi])
         {
@@ -205,7 +201,7 @@ fvFieldDecomposer::~fvFieldDecomposer()
         }
     }
 
-    forAll (processorSurfacePatchFieldDecomposerPtrs_, patchi)
+    forAll(processorSurfacePatchFieldDecomposerPtrs_, patchi)
     {
         if (processorSurfacePatchFieldDecomposerPtrs_[patchi])
         {
@@ -214,9 +210,4 @@ fvFieldDecomposer::~fvFieldDecomposer()
     }
 }
 
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-} // End namespace Foam
-
 // ************************************************************************* //
diff --git a/applications/utilities/parallelProcessing/decomposePar/fvFieldDecomposerDecomposeFields.C b/applications/utilities/parallelProcessing/decomposePar/fvFieldDecomposerDecomposeFields.C
index 512ea77d1d7473017a06395001b8413f1ef79de4..afea303fbcb6b194f350dc05dedda87556239f6d 100644
--- a/applications/utilities/parallelProcessing/decomposePar/fvFieldDecomposerDecomposeFields.C
+++ b/applications/utilities/parallelProcessing/decomposePar/fvFieldDecomposerDecomposeFields.C
@@ -28,16 +28,11 @@ License
 #include "processorFvPatchField.H"
 #include "processorFvsPatchField.H"
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
 template<class Type>
-tmp<GeometricField<Type, fvPatchField, volMesh> >
-fvFieldDecomposer::decomposeField
+Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> >
+Foam::fvFieldDecomposer::decomposeField
 (
     const GeometricField<Type, fvPatchField, volMesh>& field
 ) const
@@ -106,8 +101,8 @@ fvFieldDecomposer::decomposeField
 
 
 template<class Type>
-tmp<GeometricField<Type, fvsPatchField, surfaceMesh> >
-fvFieldDecomposer::decomposeField
+Foam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh> >
+Foam::fvFieldDecomposer::decomposeField
 (
     const GeometricField<Type, fvsPatchField, surfaceMesh>& field
 ) const
@@ -217,7 +212,7 @@ fvFieldDecomposer::decomposeField
 
 
 template<class GeoField>
-void fvFieldDecomposer::decomposeFields
+void Foam::fvFieldDecomposer::decomposeFields
 (
     const PtrList<GeoField>& fields
 ) const
@@ -229,8 +224,4 @@ void fvFieldDecomposer::decomposeFields
 }
 
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-} // End namespace Foam
-
 // ************************************************************************* //
diff --git a/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposer.C b/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposer.C
index 5d8a7f4301c9463cb1d56eccf1a7a2ddcc41b083..200a4fbccec1e1a6725e485fc2c2a0ed30c5e30f 100644
--- a/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposer.C
+++ b/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposer.C
@@ -29,16 +29,10 @@ Description
 
 #include "lagrangianFieldDecomposer.H"
 
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
 // Construct from components
-lagrangianFieldDecomposer::lagrangianFieldDecomposer
+Foam::lagrangianFieldDecomposer::lagrangianFieldDecomposer
 (
     const polyMesh& mesh,
     const polyMesh& procMesh,
@@ -88,6 +82,4 @@ lagrangianFieldDecomposer::lagrangianFieldDecomposer
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-} // End namespace Foam
-
 // ************************************************************************* //
diff --git a/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposerDecomposeFields.C b/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposerDecomposeFields.C
index ae852298086ba05a9b5ce45199171031b8a84662..36a5888d458d46939f4931501993282bde40ba29 100644
--- a/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposerDecomposeFields.C
+++ b/applications/utilities/parallelProcessing/decomposePar/lagrangianFieldDecomposerDecomposeFields.C
@@ -27,15 +27,10 @@ License
 #include "lagrangianFieldDecomposer.H"
 #include "IOobjectList.H"
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
 template<class Type>
-void lagrangianFieldDecomposer::readFields
+void Foam::lagrangianFieldDecomposer::readFields
 (
     const label cloudI,
     const IOobjectList& lagrangianObjects,
@@ -70,7 +65,8 @@ void lagrangianFieldDecomposer::readFields
 
 
 template<class Type>
-tmp<IOField<Type> > lagrangianFieldDecomposer::decomposeField
+Foam::tmp<Foam::IOField<Type> >
+Foam::lagrangianFieldDecomposer::decomposeField
 (
     const word& cloudName,
     const IOField<Type>& field
@@ -100,7 +96,7 @@ tmp<IOField<Type> > lagrangianFieldDecomposer::decomposeField
 
 
 template<class GeoField>
-void lagrangianFieldDecomposer::decomposeFields
+void Foam::lagrangianFieldDecomposer::decomposeFields
 (
     const word& cloudName,
     const PtrList<GeoField>& fields
@@ -116,8 +112,4 @@ void lagrangianFieldDecomposer::decomposeFields
 }
 
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-} // End namespace Foam
-
 // ************************************************************************* //
diff --git a/applications/utilities/parallelProcessing/decomposePar/pointFieldDecomposer.C b/applications/utilities/parallelProcessing/decomposePar/pointFieldDecomposer.C
index 9be8a89e551cb6d00f569b08ffb7e0ac7cfe9e60..53c8d59aee799f22a1ec45ea9d31029490029ca7 100644
--- a/applications/utilities/parallelProcessing/decomposePar/pointFieldDecomposer.C
+++ b/applications/utilities/parallelProcessing/decomposePar/pointFieldDecomposer.C
@@ -26,14 +26,9 @@ License
 
 #include "pointFieldDecomposer.H"
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
-    
-pointFieldDecomposer::patchFieldDecomposer::patchFieldDecomposer
+
+Foam::pointFieldDecomposer::patchFieldDecomposer::patchFieldDecomposer
 (
     const pointPatch& completeMeshPatch,
     const pointPatch& procMeshPatch,
@@ -52,7 +47,7 @@ pointFieldDecomposer::patchFieldDecomposer::patchFieldDecomposer
 
     const labelList& completeMeshPatchPoints = completeMeshPatch.meshPoints();
 
-    forAll (completeMeshPatchPoints, pointi)
+    forAll(completeMeshPatchPoints, pointi)
     {
         pointMap[completeMeshPatchPoints[pointi]] = pointi;
     }
@@ -61,7 +56,7 @@ pointFieldDecomposer::patchFieldDecomposer::patchFieldDecomposer
     // patch
     const labelList& procMeshPatchPoints = procMeshPatch.meshPoints();
 
-    forAll (procMeshPatchPoints, pointi)
+    forAll(procMeshPatchPoints, pointi)
     {
         directAddressing_[pointi] =
             pointMap[directAddr[procMeshPatchPoints[pointi]]];
@@ -79,7 +74,7 @@ pointFieldDecomposer::patchFieldDecomposer::patchFieldDecomposer
 }
 
 
-pointFieldDecomposer::pointFieldDecomposer
+Foam::pointFieldDecomposer::pointFieldDecomposer
 (
     const pointMesh& completeMesh,
     const pointMesh& procMesh,
@@ -97,7 +92,7 @@ pointFieldDecomposer::pointFieldDecomposer
         static_cast<patchFieldDecomposer*>(NULL)
     )
 {
-    forAll (boundaryAddressing_, patchi)
+    forAll(boundaryAddressing_, patchi)
     {
         if (boundaryAddressing_[patchi] >= 0)
         {
@@ -114,9 +109,9 @@ pointFieldDecomposer::pointFieldDecomposer
 
 // * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
 
-pointFieldDecomposer::~pointFieldDecomposer()
+Foam::pointFieldDecomposer::~pointFieldDecomposer()
 {
-    forAll (patchFieldDecomposerPtrs_, patchi)
+    forAll(patchFieldDecomposerPtrs_, patchi)
     {
         if (patchFieldDecomposerPtrs_[patchi])
         {
@@ -128,6 +123,4 @@ pointFieldDecomposer::~pointFieldDecomposer()
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-} // End namespace Foam
-
 // ************************************************************************* //
diff --git a/applications/utilities/parallelProcessing/decomposePar/pointFieldDecomposerDecomposeFields.C b/applications/utilities/parallelProcessing/decomposePar/pointFieldDecomposerDecomposeFields.C
index 5bd8144c06b1fa6010bbc97ec96d4e86c178a050..4f22046b39d85e836ede65c57c08cf64086ae63f 100644
--- a/applications/utilities/parallelProcessing/decomposePar/pointFieldDecomposerDecomposeFields.C
+++ b/applications/utilities/parallelProcessing/decomposePar/pointFieldDecomposerDecomposeFields.C
@@ -28,16 +28,11 @@ License
 #include "processorPointPatchFields.H"
 #include "globalPointPatchFields.H"
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
 template<class Type>
-tmp<GeometricField<Type, pointPatchField, pointMesh> >
-pointFieldDecomposer::decomposeField
+Foam::tmp<Foam::GeometricField<Type, Foam::pointPatchField, Foam::pointMesh> >
+Foam::pointFieldDecomposer::decomposeField
 (
     const GeometricField<Type, pointPatchField, pointMesh>& field
 ) const
@@ -117,7 +112,7 @@ pointFieldDecomposer::decomposeField
 
 
 template<class GeoField>
-void pointFieldDecomposer::decomposeFields
+void Foam::pointFieldDecomposer::decomposeFields
 (
     const PtrList<GeoField>& fields
 ) const
@@ -131,6 +126,4 @@ void pointFieldDecomposer::decomposeFields
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-} // End namespace Foam
-
 // ************************************************************************* //
diff --git a/applications/utilities/parallelProcessing/reconstructPar/Make/files b/applications/utilities/parallelProcessing/reconstructPar/Make/files
index fa4f2375fd1ccd187ebd3307c86826ff49c2e7ec..37acabe62dbc9c7eb1c485f2ee7df91c734e1bc2 100644
--- a/applications/utilities/parallelProcessing/reconstructPar/Make/files
+++ b/applications/utilities/parallelProcessing/reconstructPar/Make/files
@@ -1,7 +1,3 @@
-processorMeshes.C
-fvFieldReconstructor.C
-pointFieldReconstructor.C
-reconstructLagrangianPositions.C
 reconstructPar.C
 
 EXE = $(FOAM_APPBIN)/reconstructPar
diff --git a/applications/utilities/parallelProcessing/reconstructPar/Make/options b/applications/utilities/parallelProcessing/reconstructPar/Make/options
index b041c31836a1f66e3fa559170637574539005686..cfa9eb8dfcd8624d2271517573a6efb6e3cc228d 100644
--- a/applications/utilities/parallelProcessing/reconstructPar/Make/options
+++ b/applications/utilities/parallelProcessing/reconstructPar/Make/options
@@ -1,9 +1,11 @@
 EXE_INC = \
     -I$(LIB_SRC)/finiteVolume/lnInclude \
-    -I$(LIB_SRC)/lagrangian/basic/lnInclude
+    -I$(LIB_SRC)/lagrangian/basic/lnInclude \
+    -I$(LIB_SRC)/parallel/reconstruct/lnInclude
 
 EXE_LIBS = \
     -lfiniteVolume \
     -lgenericPatchFields \
     -llagrangian \
-    -lmeshTools
+    -lmeshTools \
+    -lreconstruct
diff --git a/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C b/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C
index dd014c299fa1b27cc0e2ab784b12eb8442a2cd3d..fd354a47807b4d1f9f551272a302261bb268d57c 100644
--- a/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C
+++ b/applications/utilities/parallelProcessing/reconstructPar/reconstructPar.C
@@ -137,7 +137,7 @@ int main(int argc, char *argv[])
         // Set time for global database
         runTime.setTime(timeDirs[timeI], timeI);
 
-        Info << "Time = " << runTime.timeName() << endl << endl;
+        Info<< "Time = " << runTime.timeName() << endl << endl;
 
         // Set time for all databases
         forAll (databases, procI)
@@ -183,7 +183,7 @@ int main(int argc, char *argv[])
          || objects.lookupClass(surfaceScalarField::typeName).size()
         )
         {
-            Info << "Reconstructing FV fields" << nl << endl;
+            Info<< "Reconstructing FV fields" << nl << endl;
 
             fvFieldReconstructor fvReconstructor
             (
@@ -228,7 +228,7 @@ int main(int argc, char *argv[])
         }
         else
         {
-            Info << "No FV fields" << nl << endl;
+            Info<< "No FV fields" << nl << endl;
         }
 
 
@@ -242,7 +242,7 @@ int main(int argc, char *argv[])
          || objects.lookupClass(pointTensorField::typeName).size()
         )
         {
-            Info << "Reconstructing point fields" << nl << endl;
+            Info<< "Reconstructing point fields" << nl << endl;
 
             pointMesh pMesh(mesh);
             PtrList<pointMesh> pMeshes(procMeshes.meshes().size());
@@ -268,7 +268,7 @@ int main(int argc, char *argv[])
         }
         else
         {
-            Info << "No point fields" << nl << endl;
+            Info<< "No point fields" << nl << endl;
         }
 
 
@@ -388,7 +388,7 @@ int main(int argc, char *argv[])
             }
             else
             {
-                Info << "No lagrangian fields" << nl << endl;
+                Info<< "No lagrangian fields" << nl << endl;
             }
         }
 
diff --git a/applications/utilities/parallelProcessing/redistributeMeshPar/Make/options b/applications/utilities/parallelProcessing/redistributeMeshPar/Make/options
index c0f7a0877670d32235f3e117f3e4141ab34c6ee7..45ab666e2496296d016b1c0fd4e64df9ecf0f4a0 100644
--- a/applications/utilities/parallelProcessing/redistributeMeshPar/Make/options
+++ b/applications/utilities/parallelProcessing/redistributeMeshPar/Make/options
@@ -1,5 +1,5 @@
 EXE_INC = \
-    -I$(LIB_SRC)/decompositionMethods/decompositionMethods/lnInclude \
+    -I$(LIB_SRC)/parallel/decompositionMethods/lnInclude \
     -I$(LIB_SRC)/finiteVolume/lnInclude \
     -I$(LIB_SRC)/meshTools/lnInclude \
     -I$(LIB_SRC)/dynamicMesh/lnInclude
diff --git a/applications/utilities/parallelProcessing/redistributeMeshPar/redistributeMeshPar.C b/applications/utilities/parallelProcessing/redistributeMeshPar/redistributeMeshPar.C
index cb0aa6469fc9991a4f64d5dc578b3e3bd0629773..20398a16d3ed4d7ea11bd8d0c5f775ee17c30445 100644
--- a/applications/utilities/parallelProcessing/redistributeMeshPar/redistributeMeshPar.C
+++ b/applications/utilities/parallelProcessing/redistributeMeshPar/redistributeMeshPar.C
@@ -33,11 +33,11 @@ Description
     Balances mesh and writes new mesh to new time directory.
 
     Can also work like decomposePar:
-
+    @verbatim
         mkdir processor0
         cp -r constant processor0
         mpirun -np ddd redistributeMeshPar -parallel
-
+    @endverbatim
 \*---------------------------------------------------------------------------*/
 
 #include "Field.H"
diff --git a/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluent.C b/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluent.C
index 4a63948f422eb9f7d7d028158b8be41f93012795..41df27a4c8f5feed505986a42b1f56f805f51963 100644
--- a/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluent.C
+++ b/applications/utilities/postProcessing/dataConversion/foamDataToFluent/foamDataToFluent.C
@@ -183,7 +183,7 @@ int main(int argc, char *argv[])
         Info<< endl;
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightCaseTail.H b/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightCaseTail.H
index 43c1a3f801bcf9f3373de9bace53b32a790d66d6..0ddde7448a85d3e2086e880cf00c7b5321e9d947 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightCaseTail.H
+++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightCaseTail.H
@@ -16,7 +16,7 @@ if (Pstream::master())
     if (Times[0].value() < 0)
     {
         Tcorr = - Times[0].value();
-        Info << "Correcting time values. Adding " << Tcorr << endl;
+        Info<< "Correcting time values. Adding " << Tcorr << endl;
     }
 
     for (int n=startTime; n<endTime; n++)
diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C b/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C
index fc0c3db61cbc4e968edb040fe328a0c1fc66f41c..d0a59b5116f4cd0a5dd8d73a16807b16856a5fc6 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C
+++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C
@@ -175,7 +175,7 @@ int main(int argc, char *argv[])
     ensightMesh eMesh(mesh, args, binary);
 
     // Set Time to the last time before looking for the lagrangian objects
-    runTime.setTime(Times[Times.size()-1], Times.size()-1);
+    runTime.setTime(Times.last(), Times.size()-1);
 
     IOobjectList objects(mesh, runTime.timeName());
 
diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsightParts/findFields.H b/applications/utilities/postProcessing/dataConversion/foamToEnsightParts/findFields.H
index 63ef5eef21d7baee8c01bc8683fc29c16516cd4c..7a6bd938dc466be02a3dfa887bf732dbcd7db6dd 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToEnsightParts/findFields.H
+++ b/applications/utilities/postProcessing/dataConversion/foamToEnsightParts/findFields.H
@@ -8,7 +8,7 @@ HashTable< HashTable<word> > cloudFields;
 
 if (timeDirs.size())
 {
-    IOobjectList objs(mesh, timeDirs[timeDirs.size()-1].name());
+    IOobjectList objs(mesh, timeDirs.last().name());
 
     forAllConstIter(IOobjectList, objs, fieldIter)
     {
@@ -34,7 +34,7 @@ if (timeDirs.size())
     fileNameList cloudDirs = readDir
     (
         runTime.path()
-      / timeDirs[timeDirs.size()-1].name()
+      / timeDirs.last().name()
       / regionPrefix
       / cloud::prefix,
         fileName::DIRECTORY
@@ -54,7 +54,7 @@ if (timeDirs.size())
         IOobjectList objs
         (
             mesh,
-            timeDirs[timeDirs.size()-1].name(),
+            timeDirs.last().name(),
             cloud::prefix/cloudName
         );
 
diff --git a/applications/utilities/postProcessing/dataConversion/foamToFieldview9/foamToFieldview9.C b/applications/utilities/postProcessing/dataConversion/foamToFieldview9/foamToFieldview9.C
index 87270649df41445b6b77676ab141dfc0e155b68f..8f69fe0b2f6b4d74369d0805b07b4741a70dd7c1 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToFieldview9/foamToFieldview9.C
+++ b/applications/utilities/postProcessing/dataConversion/foamToFieldview9/foamToFieldview9.C
@@ -982,7 +982,7 @@ int main(int argc, char *argv[])
         rm(fvParticleFileName);
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/postProcessing/dataConversion/foamToFieldview9/writeFunctions.C b/applications/utilities/postProcessing/dataConversion/foamToFieldview9/writeFunctions.C
index f44d4499013033c25c686134b6fef7e5878befbe..d4dcdbbcf15622c5435dbbb40ceb507ac0bce997 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToFieldview9/writeFunctions.C
+++ b/applications/utilities/postProcessing/dataConversion/foamToFieldview9/writeFunctions.C
@@ -75,7 +75,7 @@ void writeBytes(char* start, int nBytes)
 
     cout<< start << " : ";
 
-    for(int i = 0; i < nBytes; i++)
+    for (int i = 0; i < nBytes; i++)
     {
         cout<< " " << start[i];
     }
diff --git a/applications/utilities/postProcessing/dataConversion/foamToFieldview9/write_binary_uns.c b/applications/utilities/postProcessing/dataConversion/foamToFieldview9/write_binary_uns.c
index 105d042792fe4c7ed0c08c92e7e8b48c31ecd1e0..6cd3eb6620b4ebfed7b19341a08af33118e25f6a 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToFieldview9/write_binary_uns.c
+++ b/applications/utilities/postProcessing/dataConversion/foamToFieldview9/write_binary_uns.c
@@ -423,7 +423,7 @@ int main()
 
 	fwrite(ibuf, sizeof(int), 3, outfp);
 
-	for(i = 0; i < num_faces_trim_cell; ++i) /* loop over the faces */
+	for (i = 0; i < num_faces_trim_cell; ++i) /* loop over the faces */
 	    fwrite(trim_cell_face[i], sizeof(int), trim_cell_face[i][0] + 1,
 		   outfp);
 
@@ -433,7 +433,7 @@ int main()
 
 	fwrite(ibuf, sizeof(int), 3, outfp);
 
-	for(i = 0; i < num_faces_hang_cell; ++i) /* loop over the faces */
+	for (i = 0; i < num_faces_hang_cell; ++i) /* loop over the faces */
 	    fwrite(hang_cell_face[i], sizeof(int), hang_cell_face[i][0] + 1,
 		   outfp);
 
@@ -519,7 +519,7 @@ int main()
 	ibuf[0] = A_WALL; /* wall value */
 	ibuf[1] = 0; /* number of hanging nodes */
 
-	for(i = 0; i < num_faces_trim_cell; ++i) /* write out face info */
+	for (i = 0; i < num_faces_trim_cell; ++i) /* write out face info */
 	{
 	    fwrite(ibuf, sizeof(int), 1, outfp); /* write wall value */
 	    fwrite(trim_cell_face[i], sizeof(int), trim_cell_face[i][0] + 1,
@@ -541,7 +541,7 @@ int main()
 	ibuf[2] = 1; /* number of hanging nodes for face 3 */
 	ibuf[3] = 31; /* the node number for the hanging node on face 3*/
 
-	for(i = 0; i < 2; ++i) /* write out face info for first 2 faces */
+	for (i = 0; i < 2; ++i) /* write out face info for first 2 faces */
 	{
 	    fwrite(ibuf, sizeof(int), 1, outfp); /* write wall value */
 	    fwrite(hang_cell_face[i], sizeof(int), hang_cell_face[i][0] + 1,
@@ -555,7 +555,7 @@ int main()
 	fwrite(&ibuf[2], sizeof(int), 2, outfp);
 
 	/* write out face info for last 3 faces */
-	for(i = 3; i < num_faces_hang_cell; ++i)
+	for (i = 3; i < num_faces_hang_cell; ++i)
 	{
 	    fwrite(ibuf, sizeof(int), 1, outfp); /* write wall value */
 	    fwrite(hang_cell_face[i], sizeof(int), hang_cell_face[i][0] + 1,
diff --git a/applications/utilities/postProcessing/dataConversion/foamToGMV/foamToGMV.C b/applications/utilities/postProcessing/dataConversion/foamToGMV/foamToGMV.C
index 05300da489a48638d8a13a65c5cbdc24a8fe1945..d9b807e316dac412d18d71bbd88e4612b92f9f41 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToGMV/foamToGMV.C
+++ b/applications/utilities/postProcessing/dataConversion/foamToGMV/foamToGMV.C
@@ -62,14 +62,14 @@ int main(int argc, char *argv[])
 
     // get the available time-steps
     instantList TimeList = runTime.times();
-    Info << TimeList << endl;
+    Info<< TimeList << endl;
     label nTimes = TimeList.size();
 
-    for(label n=1; n < nTimes; n++)
+    for (label n=1; n < nTimes; n++)
     {
         if (TimeList[n].value() > startTime)
         {
-            Info << "Time = " << TimeList[n].value() << nl;
+            Info<< "Time = " << TimeList[n].value() << nl;
 
             // Set Time
             runTime.setTime(TimeList[n], n);
diff --git a/applications/utilities/postProcessing/dataConversion/foamToGMV/gmvOutput.H b/applications/utilities/postProcessing/dataConversion/foamToGMV/gmvOutput.H
index 03523ed2de769888547857e6e52898efc7a75d30..124bab141197f36f8e01883dd9fc0ca991a14ffe 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToGMV/gmvOutput.H
+++ b/applications/utilities/postProcessing/dataConversion/foamToGMV/gmvOutput.H
@@ -24,7 +24,7 @@ for (label i=0; i < nTypes; i++)
         {
             volScalarField gmvScalarField(fieldObject, mesh);
             gmvFile << fieldName << " 0" << nl;
-            for(label indx=0;indx<mesh.nCells();indx++)
+            for (label indx=0;indx<mesh.nCells();indx++)
             {
                 gmvFile << gmvScalarField[indx] << " ";
             }
diff --git a/applications/utilities/postProcessing/dataConversion/foamToGMV/gmvOutputHeader.H b/applications/utilities/postProcessing/dataConversion/foamToGMV/gmvOutputHeader.H
index ff904f9a709d804131986edffdbbccdc9c400c2c..46fa702ea1cf0f08c205170608bc5561ff55374c 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToGMV/gmvOutputHeader.H
+++ b/applications/utilities/postProcessing/dataConversion/foamToGMV/gmvOutputHeader.H
@@ -4,29 +4,29 @@ const cellShapeList& cells = mesh.cellShapes();
 
 gmvFile << "gmvinput " << format << nl;
 gmvFile << "nodes   " << nPoints << nl;
-for(label indx=0;indx<nPoints;indx++)
+for (label indx=0;indx<nPoints;indx++)
 {
     gmvFile << points[indx].x() << " ";
 }
 gmvFile << nl;
-for(label indx=0;indx<nPoints;indx++)
+for (label indx=0;indx<nPoints;indx++)
 {
     gmvFile << points[indx].y() << " ";
 }
 gmvFile << nl;
-for(label indx=0;indx<nPoints;indx++)
+for (label indx=0;indx<nPoints;indx++)
 {
     gmvFile << points[indx].z() << " ";
 }
 gmvFile << nl;
 gmvFile << "cells   " << cells.size() << nl;
-for(label indx=0;indx<cells.size();indx++)
+for (label indx=0;indx<cells.size();indx++)
 {
     label nNodes = cells[indx].size();
     if (nNodes == 8)
     {
         gmvFile << "hex     " << 8 << " ";
-        for(label ip=0; ip<nNodes; ip++)
+        for (label ip=0; ip<nNodes; ip++)
         {
             gmvFile << cells[indx][ip] + 1 << " ";        
         }
@@ -35,7 +35,7 @@ for(label indx=0;indx<cells.size();indx++)
     else if (nNodes == 4)
     {
         gmvFile << "tet     " << 4 << " ";
-        for(label ip=0; ip<nNodes; ip++)
+        for (label ip=0; ip<nNodes; ip++)
         {
             gmvFile << cells[indx][ip] + 1 << " ";        
         }
@@ -44,7 +44,7 @@ for(label indx=0;indx<cells.size();indx++)
     else if (nNodes == 6)
     {
         gmvFile << "prism   " << 6 << " ";
-        for(label ip=0; ip<nNodes; ip++)
+        for (label ip=0; ip<nNodes; ip++)
         {
             gmvFile << cells[indx][ip] + 1 << " ";        
         }
diff --git a/applications/utilities/postProcessing/dataConversion/foamToGMV/itoa.C b/applications/utilities/postProcessing/dataConversion/foamToGMV/itoa.C
index 391d2c041c3d51f5c2faf9ffaa3d028b5e28e3f0..73df488b11bf62bdcb1bcc73b4b09b3da4cf1333 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToGMV/itoa.C
+++ b/applications/utilities/postProcessing/dataConversion/foamToGMV/itoa.C
@@ -44,7 +44,7 @@ word itoa(const label n)
 
     label leftOfN = n;
 
-    for(label i=0; i<length; i++)
+    for (label i=0; i<length; i++)
     {
         label j = label(leftOfN/pow(10, length-i-1));
         leftOfN -= j*pow(10,length-i-1);
diff --git a/applications/utilities/postProcessing/dataConversion/foamToGMV/moveMesh.H b/applications/utilities/postProcessing/dataConversion/foamToGMV/moveMesh.H
index ba4e27425a0f50014726b8fe49d4bce86453a401..e84837fd1c287473360b44207c5862b41824971c 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToGMV/moveMesh.H
+++ b/applications/utilities/postProcessing/dataConversion/foamToGMV/moveMesh.H
@@ -1,6 +1,6 @@
 IOobject ioPoints
 (
-    "points", 
+    "points",
     runTime.timeName(),
     mesh.name(),
     mesh
@@ -8,7 +8,7 @@ IOobject ioPoints
 
 if (ioPoints.headerOk())
 {
-    Info << "new points available" << endl;
+    Info<< "new points available" << endl;
     // Reading new points
     pointIOField newPoints
     (
@@ -22,6 +22,6 @@ if (ioPoints.headerOk())
             IOobject::NO_WRITE
         )
     );
-    
+
     mesh.movePoints(newPoints);
 }
diff --git a/applications/utilities/postProcessing/dataConversion/foamToTecplot360/Allwmake b/applications/utilities/postProcessing/dataConversion/foamToTecplot360/Allwmake
index 5866aa8f371296d65d50ffd0b6454e745502bcb4..bbb2c4343653286e5f8d3b5bbd87a37b6454999d 100755
--- a/applications/utilities/postProcessing/dataConversion/foamToTecplot360/Allwmake
+++ b/applications/utilities/postProcessing/dataConversion/foamToTecplot360/Allwmake
@@ -1,6 +1,9 @@
 #!/bin/sh
+cd ${0%/*} || exit 1    # run from this directory
 
 if [ "$TEC_360_2009" ]
 then
     wmake
 fi
+
+# ----------------------------------------------------------------- end-of-file
diff --git a/applications/utilities/postProcessing/dataConversion/smapToFoam/smapToFoam.C b/applications/utilities/postProcessing/dataConversion/smapToFoam/smapToFoam.C
index 748ce3f5991764aaea464b2dcf72d074efd6b810..1a29e87652603cb016eb8558ad279cc711bc365d 100644
--- a/applications/utilities/postProcessing/dataConversion/smapToFoam/smapToFoam.C
+++ b/applications/utilities/postProcessing/dataConversion/smapToFoam/smapToFoam.C
@@ -233,7 +233,7 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/PV3FoamReader_SM.xml b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/PV3FoamReader_SM.xml
index 8506772e5ce9b6a98c63fab60ebec6f40d74e9ef..18bccb0398ca89d61eed1e7a9166ee37c47b95f8 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/PV3FoamReader_SM.xml
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/PV3FoamReader_SM.xml
@@ -16,6 +16,17 @@
       </Documentation>
     </StringVectorProperty>
 
+    <!-- Send discrete time info to the animation panel -->
+    <DoubleVectorProperty
+      name="TimestepValues"
+      repeatable="1"
+      information_only="1">
+      <TimeStepsInformationHelper/>
+      <Documentation>
+        Available timestep values.
+      </Documentation>
+    </DoubleVectorProperty>
+
     <!-- Cache Mesh check-box -->
     <IntVectorProperty
       name="UiCacheMesh"
@@ -30,20 +41,33 @@
       </Documentation>
     </IntVectorProperty>
 
-
-    <!-- Send discrete time info to the animation panel -->
-    <DoubleVectorProperty
-      name="TimestepValues"
-      repeatable="1"
-      information_only="1">
-      <TimeStepsInformationHelper/>
+    <!-- Refresh button -->
+    <IntVectorProperty
+      name="UiRefresh"
+      command="SetRefresh"
+      number_of_elements="1"
+      is_internal="0"
+      default_values="0"
+      animateable="0">
+      <BooleanDomain name="bool"/>
       <Documentation>
-        Available timestep values.
+        Rescan for updated timesteps/fields.
       </Documentation>
-    </DoubleVectorProperty>
-
+    </IntVectorProperty>
 
-    <!-- Global settings -->
+    <!-- Skip Zero Time check-box -->
+    <IntVectorProperty
+      name="UiZeroTime"
+      command="SetSkipZeroTime"
+      number_of_elements="1"
+      is_internal="1"
+      default_values="0"
+      animateable="0">
+      <BooleanDomain name="bool"/>
+      <Documentation>
+        Skip including the 0/ time directory
+      </Documentation>
+    </IntVectorProperty>
 
     <!-- Extrapolate Patches check-box -->
     <IntVectorProperty
@@ -60,22 +84,24 @@
 
     <!-- Include Sets check-box -->
     <IntVectorProperty
-      name="IncludeSets"
+      name="UiIncludeSets"
       command="SetIncludeSets"
       number_of_elements="1"
+      is_internal="1"
       default_values="0"
       animateable="0">
       <Documentation>
-        Searches the polyMesh/sets/ directory
+        Search the polyMesh/sets/ directory
       </Documentation>
       <BooleanDomain name="bool"/>
     </IntVectorProperty>
 
     <!-- Include Zones check-box -->
     <IntVectorProperty
-      name="IncludeZones"
+      name="UiIncludeZones"
       command="SetIncludeZones"
       number_of_elements="1"
+      is_internal="1"
       default_values="0"
       animateable="0">
       <Documentation>
@@ -95,7 +121,7 @@
       animateable="0">
       <BooleanDomain name="bool"/>
       <Documentation>
-        Show patch names in render window.
+        Show patch names in render window
       </Documentation>
     </IntVectorProperty>
 
@@ -112,12 +138,13 @@
       </Documentation>
     </IntVectorProperty>
 
-
-    <!-- Selections -->
+    <!--
+       | Selections
+       -->
 
     <!-- Available Parts (volume, patches, lagrangian) array -->
     <StringVectorProperty
-      name="PartArrayInfo"
+      name="PartArrayStatus"
       information_only="1">
       <ArraySelectionInformationHelper attribute_name="Part"/>
     </StringVectorProperty>
@@ -129,18 +156,21 @@
       repeat_command="1"
       number_of_elements_per_command="2"
       element_types="2 0"
-      information_property="PartArrayInfo"
+      information_property="PartArrayStatus"
       animateable="0">
       <ArraySelectionDomain name="array_list">
         <RequiredProperties>
-          <Property name="PartArrayInfo" function="ArrayList"/>
+          <Property name="PartArrayStatus" function="ArrayList"/>
         </RequiredProperties>
       </ArraySelectionDomain>
+      <Documentation>
+        This property contains a list of the mesh parts (patches, sets, zones).
+      </Documentation>
     </StringVectorProperty>
 
     <!-- Available volFields array -->
     <StringVectorProperty
-      name="VolFieldArrayInfo"
+      name="VolFieldArrayStatus"
       information_only="1">
       <ArraySelectionInformationHelper attribute_name="VolField"/>
     </StringVectorProperty>
@@ -152,18 +182,21 @@
       repeat_command="1"
       number_of_elements_per_command="2"
       element_types="2 0"
-      information_property="VolFieldArrayInfo"
+      information_property="VolFieldArrayStatus"
       animateable="0">
       <ArraySelectionDomain name="array_list">
         <RequiredProperties>
-          <Property name="VolFieldArrayInfo" function="ArrayList"/>
+          <Property name="VolFieldArrayStatus" function="ArrayList"/>
         </RequiredProperties>
       </ArraySelectionDomain>
+      <Documentation>
+        This property contains a list of the volume fields
+      </Documentation>
     </StringVectorProperty>
 
     <!-- Available Lagrangian fields array -->
     <StringVectorProperty
-      name="LagrangianFieldArrayInfo"
+      name="LagrangianFieldArrayStatus"
       information_only="1">
       <ArraySelectionInformationHelper attribute_name="LagrangianField"/>
     </StringVectorProperty>
@@ -175,18 +208,21 @@
       repeat_command="1"
       number_of_elements_per_command="2"
       element_types="2 0"
-      information_property="LagrangianFieldArrayInfo"
+      information_property="LagrangianFieldArrayStatus"
       animateable="0">
       <ArraySelectionDomain name="array_list">
         <RequiredProperties>
-          <Property name="LagrangianFieldArrayInfo" function="ArrayList"/>
+          <Property name="LagrangianFieldArrayStatus" function="ArrayList"/>
         </RequiredProperties>
       </ArraySelectionDomain>
+      <Documentation>
+        This property contains a list of the lagrangian fields
+      </Documentation>
     </StringVectorProperty>
 
     <!-- Available pointFields array -->
     <StringVectorProperty
-      name="PointFieldArrayInfo"
+      name="PointFieldArrayStatus"
       information_only="1">
       <ArraySelectionInformationHelper attribute_name="PointField"/>
     </StringVectorProperty>
@@ -198,19 +234,26 @@
       repeat_command="1"
       number_of_elements_per_command="2"
       element_types="2 0"
-      information_property="PointFieldArrayInfo"
+      information_property="PointFieldArrayStatus"
       animateable="0">
       <ArraySelectionDomain name="array_list">
         <RequiredProperties>
-          <Property name="PointFieldArrayInfo" function="ArrayList"/>
+          <Property name="PointFieldArrayStatus" function="ArrayList"/>
         </RequiredProperties>
       </ArraySelectionDomain>
+      <Documentation>
+        This property contains a list of the point fields
+      </Documentation>
     </StringVectorProperty>
 
   <Hints>
     <Property name="FileName" show="0"/>
     <Property name="UiCacheMesh" show="0"/>
+    <Property name="UiZeroTime" show="0"/>
+    <Property name="UiRefresh" show="0"/>
     <Property name="UiShowPatchNames" show="0"/>
+    <Property name="UiIncludeSets" show="0"/>
+    <Property name="UiIncludeZones" show="0"/>
   </Hints>
 
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/pqPV3FoamReaderPanel.cxx b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/pqPV3FoamReaderPanel.cxx
index 4f12089f45d71be3aa020764467268814bac681d..7d421cbedd0dc863e371e5c81ee08376580f5d00 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/pqPV3FoamReaderPanel.cxx
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/pqPV3FoamReaderPanel.cxx
@@ -32,9 +32,10 @@ License
 #include <QLabel>
 #include <QLayout>
 #include <QString>
+#include <QPushButton>
 #include <QtDebug>
 
-// Paraview<->QT UI
+// Paraview <-> QT UI
 #include "pqAnimationScene.h"
 #include "pqApplicationCore.h"
 #include "pqPipelineRepresentation.h"
@@ -56,51 +57,169 @@ pqPV3FoamReaderPanel::pqPV3FoamReaderPanel
     QWidget *p
 )
 :
-    pqAutoGeneratedObjectPanel(proxy, p),
-    sourceProxy_(vtkSMSourceProxy::SafeDownCast(this->proxy()))
+    pqAutoGeneratedObjectPanel(proxy, p)
 {
     // create first sublayout (at top of the panel)
-    QGridLayout *sect1 = new QGridLayout();
-    this->PanelLayout->addLayout(sect1, 0, 0, 1, -1);
+    QGridLayout *form = new QGridLayout();
+    this->PanelLayout->addLayout(form, 0, 0, 1, -1);
 
+    vtkSMProperty* prop = 0;
+
+    // refresh button for updating times/fields
+    if ((prop = this->proxy()->GetProperty("UiRefresh")) != 0)
+    {
+        prop->SetImmediateUpdate(1);
+        QPushButton *refresh = new QPushButton("Refresh Times");
+        refresh->setToolTip("Rescan for updated times/fields.");
+
+        form->addWidget(refresh, 0, 0, Qt::AlignLeft);
+        QObject::connect
+        (
+            refresh,
+            SIGNAL(clicked()),
+            this,
+            SLOT(RefreshPressed())
+        );
+    }
+
+    // checkbox for skip zeroTime
+    if ((prop = this->proxy()->GetProperty("UiZeroTime")) != 0)
+    {
+        // immediate update on the Server Manager side
+        prop->SetImmediateUpdate(true);
+
+        ZeroTime_ = new QCheckBox("Skip Zero Time");
+        ZeroTime_->setChecked
+        (
+            vtkSMIntVectorProperty::SafeDownCast(prop)->GetElement(0)
+        );
+        ZeroTime_->setToolTip
+        (
+            "Skip including the 0/ time directory."
+        );
+
+        form->addWidget(ZeroTime_, 0, 1, Qt::AlignLeft);
+        connect
+        (
+            ZeroTime_,
+            SIGNAL(stateChanged(int)),
+            this,
+            SLOT(ZeroTimeToggled())
+        );
+    }
 
-    // checkbox for caching mesh
-    CacheMesh_ = new QCheckBox("Cache Mesh");
-    CacheMesh_->setChecked(true);
 
     // checkbox for caching mesh
-    ShowPatchNames_ = new QCheckBox("Show Patch Names");
-    ShowPatchNames_->setChecked(false);
+    if ((prop = this->proxy()->GetProperty("UiCacheMesh")) != 0)
+    {
+        // immediate update on the Server Manager side
+        prop->SetImmediateUpdate(true);
 
-    connect
-    (
-        CacheMesh_,
-        SIGNAL(stateChanged(int)),
-        this,
-        SLOT(CacheMeshToggled())
-    );
+        CacheMesh_ = new QCheckBox("Cache Mesh");
+        CacheMesh_->setChecked
+        (
+            vtkSMIntVectorProperty::SafeDownCast(prop)->GetElement(0)
+        );
+        CacheMesh_->setToolTip
+        (
+            "Cache the fvMesh in memory."
+        );
 
-    connect
-    (
-        ShowPatchNames_,
-        SIGNAL(stateChanged(int)),
-        this,
-        SLOT(ShowPatchNamesToggled())
-    );
+        form->addWidget(CacheMesh_, 1, 0, Qt::AlignLeft);
+        connect
+        (
+            CacheMesh_,
+            SIGNAL(stateChanged(int)),
+            this,
+            SLOT(CacheMeshToggled())
+        );
+    }
 
-    sect1->addWidget(CacheMesh_);
-    sect1->addWidget(ShowPatchNames_);
 
+    // checkbox for patch names
+    if ((prop = this->proxy()->GetProperty("UiShowPatchNames")) != 0)
+    {
+        // immediate update on the Server Manager side
+        prop->SetImmediateUpdate(true);
+
+        ShowPatchNames_ = new QCheckBox("Patch Names");
+        ShowPatchNames_->setChecked
+        (
+            vtkSMIntVectorProperty::SafeDownCast(prop)->GetElement(0)
+        );
+        ShowPatchNames_->setToolTip
+        (
+            "Show patch names in render window."
+        );
+
+        // row/col 0,1
+        form->addWidget(ShowPatchNames_, 1, 1, Qt::AlignLeft);
+        connect
+        (
+            ShowPatchNames_,
+            SIGNAL(stateChanged(int)),
+            this,
+            SLOT(ShowPatchNamesToggled())
+        );
+    }
+
+
+    // checkbox for include sets
+    if ((prop = this->proxy()->GetProperty("UiIncludeSets")) != 0)
+    {
+        // immediate update on the Server Manager side
+        prop->SetImmediateUpdate(true);
+
+        IncludeSets_ = new QCheckBox("Include Sets");
+        IncludeSets_->setChecked
+        (
+            vtkSMIntVectorProperty::SafeDownCast(prop)->GetElement(0)
+        );
+        IncludeSets_->setToolTip
+        (
+            "Search the polyMesh/sets/ directory."
+        );
+
+        // row/col 1,0
+        form->addWidget(IncludeSets_, 2, 0, Qt::AlignLeft);
+        connect
+        (
+            IncludeSets_,
+            SIGNAL(stateChanged(int)),
+            this,
+            SLOT(IncludeSetsToggled())
+        );
+    }
+
+
+    // checkbox for include zones
+    if ((prop = this->proxy()->GetProperty("UiIncludeZones")) != 0)
+    {
+        // immediate update on the Server Manager side
+        prop->SetImmediateUpdate(true);
+
+        IncludeZones_ = new QCheckBox("Include Zones");
+        IncludeZones_->setChecked
+        (
+            vtkSMIntVectorProperty::SafeDownCast(prop)->GetElement(0)
+        );
+        IncludeZones_->setToolTip
+        (
+            "ZoneMesh information is used to find {cell,face,point}Zones. "
+            "The polyMesh/ directory is only checked on startup."
+        );
+
+        // row/col 1,1
+        form->addWidget(IncludeZones_, 2, 1, Qt::AlignLeft);
+        connect
+        (
+            IncludeZones_,
+            SIGNAL(stateChanged(int)),
+            this,
+            SLOT(IncludeZonesToggled())
+        );
+    }
 
-    // immediate update on the Server Manager side
-    vtkSMIntVectorProperty::SafeDownCast
-    (
-        sourceProxy_->GetProperty("UiCacheMesh")
-    )->SetImmediateUpdate(true);
-    vtkSMIntVectorProperty::SafeDownCast
-    (
-        sourceProxy_->GetProperty("UiShowPatchNames")
-    )->SetImmediateUpdate(true);
 }
 
 
@@ -110,16 +229,43 @@ void pqPV3FoamReaderPanel::CacheMeshToggled()
 {
     vtkSMIntVectorProperty::SafeDownCast
     (
-        sourceProxy_->GetProperty("UiCacheMesh")
+        this->proxy()->GetProperty("UiCacheMesh")
     )->SetElement(0, CacheMesh_->isChecked());
 }
 
 
+void pqPV3FoamReaderPanel::RefreshPressed()
+{
+    // update everything
+    vtkSMIntVectorProperty::SafeDownCast
+    (
+        this->proxy()->GetProperty("UiRefresh")
+    )->Modified();
+
+    vtkSMSourceProxy::SafeDownCast(this->proxy())->UpdatePipeline();
+
+    // render all views
+    pqApplicationCore::instance()->render();
+}
+
+
+void pqPV3FoamReaderPanel::ZeroTimeToggled()
+{
+    vtkSMIntVectorProperty::SafeDownCast
+    (
+        this->proxy()->GetProperty("UiZeroTime")
+    )->SetElement(0, ZeroTime_->isChecked());
+
+    // update everything
+    RefreshPressed();
+}
+
+
 void pqPV3FoamReaderPanel::ShowPatchNamesToggled()
 {
     vtkSMIntVectorProperty::SafeDownCast
     (
-        sourceProxy_->GetProperty("UiShowPatchNames")
+        this->proxy()->GetProperty("UiShowPatchNames")
     )->SetElement(0, ShowPatchNames_->isChecked());
 
     // update the active view
@@ -132,4 +278,37 @@ void pqPV3FoamReaderPanel::ShowPatchNamesToggled()
 }
 
 
+void pqPV3FoamReaderPanel::IncludeSetsToggled()
+{
+    vtkSMProperty* prop;
+
+    vtkSMIntVectorProperty::SafeDownCast
+    (
+        this->proxy()->GetProperty("UiIncludeSets")
+    )->SetElement(0, IncludeSets_->isChecked());
+
+    if ((prop = this->proxy()->GetProperty("PartArrayStatus")) != 0)
+    {
+        this->proxy()->UpdatePropertyInformation(prop);
+    }
+}
+
+
+void pqPV3FoamReaderPanel::IncludeZonesToggled()
+{
+    vtkSMProperty* prop;
+
+    vtkSMIntVectorProperty::SafeDownCast
+    (
+        this->proxy()->GetProperty("UiIncludeZones")
+    )->SetElement(0, IncludeZones_->isChecked());
+
+    if ((prop = this->proxy()->GetProperty("PartArrayStatus")) != 0)
+    {
+        this->proxy()->UpdatePropertyInformation(prop);
+    }
+
+}
+
+
 // ************************************************************************* //
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/pqPV3FoamReaderPanel.h b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/pqPV3FoamReaderPanel.h
index fc4f5f9adad0b89b6f395a492632d1f24de18075..49a3e11edad26ca2b82e1aea9a260c7a75df569d 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/pqPV3FoamReaderPanel.h
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/pqPV3FoamReaderPanel.h
@@ -37,6 +37,7 @@ SourceFiles
 #ifndef pqPV3FoamReaderPanel_h
 #define pqPV3FoamReaderPanel_h
 
+
 #include "pqAutoGeneratedObjectPanel.h"
 
 // Forward declaration of QT classes
@@ -62,8 +63,8 @@ class pqPV3FoamReaderPanel
     Q_OBJECT;
     typedef pqAutoGeneratedObjectPanel Superclass;
 
-    //- Server Manager Source Proxy
-    vtkSMSourceProxy* sourceProxy_;
+    //- ZeroTime checkbox
+    QCheckBox* ZeroTime_;
 
     //- CacheMesh checkbox
     QCheckBox* CacheMesh_;
@@ -71,10 +72,20 @@ class pqPV3FoamReaderPanel
     //- Show Patch Names checkbox
     QCheckBox* ShowPatchNames_;
 
+    //- IncludeSets checkbox
+    QCheckBox* IncludeSets_;
+
+    //- IncludeZones checkbox
+    QCheckBox* IncludeZones_;
+
 protected slots:
 
     void CacheMeshToggled();
+    void ZeroTimeToggled();
+    void RefreshPressed();
     void ShowPatchNamesToggled();
+    void IncludeSetsToggled();
+    void IncludeZonesToggled();
 
 
 public:
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/vtkPV3FoamReader.cxx b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/vtkPV3FoamReader.cxx
index 32b01eb7958d8ff805c8fdeeea779d1a34b32cf1..4e5806b99c6137fe7ca2b2dbbe411a362746d47b 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/vtkPV3FoamReader.cxx
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/vtkPV3FoamReader.cxx
@@ -79,7 +79,9 @@ vtkPV3FoamReader::vtkPV3FoamReader()
     TimeStepRange[1] = 0;
 
     CacheMesh = 1;
+    Refresh = 0;
 
+    SkipZeroTime = 0;
     ExtrapolatePatches = 0;
     IncludeSets = 0;
     IncludeZones = 0;
@@ -336,7 +338,6 @@ int vtkPV3FoamReader::RequestData
         foamData_->setTime(nRequestTime, requestTime);
     }
 
-
     vtkMultiBlockDataSet* output = vtkMultiBlockDataSet::SafeDownCast
     (
         outputVector->GetInformationObject(0)->Get
@@ -420,7 +421,39 @@ int vtkPV3FoamReader::RequestData
 }
 
 
-void vtkPV3FoamReader::SetShowPatchNames(const int val)
+void vtkPV3FoamReader::SetRefresh(int val)
+{
+    Modified();
+}
+
+
+void vtkPV3FoamReader::SetIncludeSets(int val)
+{
+    if (IncludeSets != val)
+    {
+        IncludeSets = val;
+        if (foamData_)
+        {
+            foamData_->updateInfo();
+        }
+    }
+}
+
+
+void vtkPV3FoamReader::SetIncludeZones(int val)
+{
+    if (IncludeZones != val)
+    {
+        IncludeZones = val;
+        if (foamData_)
+        {
+            foamData_->updateInfo();
+        }
+    }
+}
+
+
+void vtkPV3FoamReader::SetShowPatchNames(int val)
 {
     if (ShowPatchNames != val)
     {
@@ -430,7 +463,6 @@ void vtkPV3FoamReader::SetShowPatchNames(const int val)
 }
 
 
-
 void vtkPV3FoamReader::updatePatchNamesView(const bool show)
 {
     pqApplicationCore* appCore = pqApplicationCore::instance();
@@ -452,7 +484,7 @@ void vtkPV3FoamReader::updatePatchNamesView(const bool show)
     // Get all the pqRenderView instances
     QList<pqRenderView*> renderViews = smModel->findItems<pqRenderView*>();
 
-    for (int viewI=0; viewI<renderViews.size(); viewI++)
+    for (int viewI=0; viewI < renderViews.size(); ++viewI)
     {
         foamData_->renderPatchNames
         (
@@ -521,7 +553,8 @@ int vtkPV3FoamReader::GetPartArrayStatus(const char* name)
 
 void vtkPV3FoamReader::SetPartArrayStatus(const char* name, int status)
 {
-    vtkDebugMacro(<<"SetPartArrayStatus");
+    vtkDebugMacro("Set mesh part \"" << name << "\" status to: " << status);
+
     if (status)
     {
         PartSelection->EnableArray(name);
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/vtkPV3FoamReader.h b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/vtkPV3FoamReader.h
index df73979205ef11886c27c7d0ced23907d9edfb9f..f3ac8a5d92958d69808af84d9435852c8e5efda9 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/vtkPV3FoamReader.h
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/PV3FoamReader/vtkPV3FoamReader.h
@@ -83,6 +83,15 @@ public:
     vtkSetMacro(CacheMesh, int);
     vtkGetMacro(CacheMesh, int);
 
+    // Description:
+    // FOAM refresh times/fields
+    virtual void SetRefresh(int);
+
+    // Description:
+    // FOAM Skip/include the 0/ time directory
+    vtkSetMacro(SkipZeroTime, int);
+    vtkGetMacro(SkipZeroTime, int);
+
     // Description:
     // GUI update control
     vtkSetMacro(UpdateGUI, int);
@@ -93,13 +102,14 @@ public:
     vtkSetMacro(ExtrapolatePatches, int);
     vtkGetMacro(ExtrapolatePatches, int);
 
+    // Description:
     // FOAM read sets control
-    vtkSetMacro(IncludeSets, int);
+    virtual void SetIncludeSets(int);
     vtkGetMacro(IncludeSets, int);
 
     // Description:
     // FOAM read zones control
-    vtkSetMacro(IncludeZones, int);
+    virtual void SetIncludeZones(int);
     vtkGetMacro(IncludeZones, int);
 
     // Description:
@@ -113,7 +123,7 @@ public:
 
     // Description:
     // Parts selection list control
-    vtkDataArraySelection* GetPartSelection();
+    virtual vtkDataArraySelection* GetPartSelection();
     int  GetNumberOfPartArrays();
     int  GetPartArrayStatus(const char* name);
     void SetPartArrayStatus(const char* name, int status);
@@ -121,7 +131,7 @@ public:
 
     // Description:
     // volField selection list control
-    vtkDataArraySelection* GetVolFieldSelection();
+    virtual vtkDataArraySelection* GetVolFieldSelection();
     int  GetNumberOfVolFieldArrays();
     int  GetVolFieldArrayStatus(const char* name);
     void SetVolFieldArrayStatus(const char* name, int status);
@@ -129,7 +139,7 @@ public:
 
     // Description:
     // pointField selection list control
-    vtkDataArraySelection* GetPointFieldSelection();
+    virtual vtkDataArraySelection* GetPointFieldSelection();
     int  GetNumberOfPointFieldArrays();
     int  GetPointFieldArrayStatus(const char* name);
     void SetPointFieldArrayStatus(const char* name, int status);
@@ -137,7 +147,7 @@ public:
 
     // Description:
     // lagrangianField selection list control
-    vtkDataArraySelection* GetLagrangianFieldSelection();
+    virtual vtkDataArraySelection* GetLagrangianFieldSelection();
     int  GetNumberOfLagrangianFieldArrays();
     int  GetLagrangianFieldArrayStatus(const char* name);
     void SetLagrangianFieldArrayStatus(const char* name, int status);
@@ -156,7 +166,6 @@ public:
 
     void SelectionModified();
 
-
 protected:
 
     //- Construct null
@@ -185,9 +194,10 @@ protected:
     //- Fill in additional port information
     virtual int FillOutputPortInformation(int, vtkInformation*);
 
-    // The observer to modify this object when array selections are modified
+    //- The observer to modify this object when array selections are modified
     vtkCallbackCommand* SelectionObserver;
 
+    //- The file name for this case
     char* FileName;
 
 private:
@@ -202,14 +212,16 @@ private:
     void updatePatchNamesView(const bool show);
 
     int TimeStepRange[2];
+    int Refresh;
     int CacheMesh;
+    int SkipZeroTime;
 
     int ExtrapolatePatches;
     int IncludeSets;
     int IncludeZones;
     int ShowPatchNames;
 
-    //- Dummy variable/switch for invoke a reader update
+    //- Dummy variable/switch to invoke a reader update
     int UpdateGUI;
 
     vtkDataArraySelection* PartSelection;
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3Foam.C b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3Foam.C
index 6a5ab601fb4be12d8f3d424b4f661bf84da1e51a..41933d5ebfec7834e4596c962deb875dc80d1284 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3Foam.C
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3Foam.C
@@ -50,16 +50,16 @@ defineTypeNameAndDebug(Foam::vtkPV3Foam, 0);
 
 void Foam::vtkPV3Foam::resetCounters()
 {
-    // Reset mesh part ids and sizes
-    partInfoVolume_.reset();
-    partInfoPatches_.reset();
-    partInfoLagrangian_.reset();
-    partInfoCellZones_.reset();
-    partInfoFaceZones_.reset();
-    partInfoPointZones_.reset();
-    partInfoCellSets_.reset();
-    partInfoFaceSets_.reset();
-    partInfoPointSets_.reset();
+    // Reset array range information (ids and sizes)
+    arrayRangeVolume_.reset();
+    arrayRangePatches_.reset();
+    arrayRangeLagrangian_.reset();
+    arrayRangeCellZones_.reset();
+    arrayRangeFaceZones_.reset();
+    arrayRangePointZones_.reset();
+    arrayRangeCellSets_.reset();
+    arrayRangeFaceSets_.reset();
+    arrayRangePointSets_.reset();
 }
 
 
@@ -92,21 +92,6 @@ void Foam::vtkPV3Foam::reduceMemory()
 
 int Foam::vtkPV3Foam::setTime(int nRequest, const double requestTimes[])
 {
-    if (debug)
-    {
-        Info<< "<beg> Foam::vtkPV3Foam::setTime(";
-        for (int requestI = 0; requestI < nRequest; ++requestI)
-        {
-            if (requestI)
-            {
-                Info<< ", ";
-            }
-
-            Info<< requestTimes[requestI];
-        }
-        Info << ") - previousIndex = " << timeIndex_ << endl;
-    }
-
     Time& runTime = dbPtr_();
 
     // Get times list
@@ -128,6 +113,22 @@ int Foam::vtkPV3Foam::setTime(int nRequest, const double requestTimes[])
         nearestIndex = 0;
     }
 
+    if (debug)
+    {
+        Info<< "<beg> Foam::vtkPV3Foam::setTime(";
+        for (int requestI = 0; requestI < nRequest; ++requestI)
+        {
+            if (requestI)
+            {
+                Info<< ", ";
+            }
+
+            Info<< requestTimes[requestI];
+        }
+        Info<< ") - previousIndex = " << timeIndex_
+            << ", nearestIndex = " << nearestIndex << endl;
+    }
+
 
     // see what has changed
     if (timeIndex_ != nearestIndex)
@@ -230,15 +231,15 @@ Foam::vtkPV3Foam::vtkPV3Foam
     timeIndex_(-1),
     meshChanged_(true),
     fieldsChanged_(true),
-    partInfoVolume_("unzoned"),
-    partInfoPatches_("patches"),
-    partInfoLagrangian_("lagrangian"),
-    partInfoCellZones_("cellZone"),
-    partInfoFaceZones_("faceZone"),
-    partInfoPointZones_("pointZone"),
-    partInfoCellSets_("cellSet"),
-    partInfoFaceSets_("faceSet"),
-    partInfoPointSets_("pointSet")
+    arrayRangeVolume_("unzoned"),
+    arrayRangePatches_("patches"),
+    arrayRangeLagrangian_("lagrangian"),
+    arrayRangeCellZones_("cellZone"),
+    arrayRangeFaceZones_("faceZone"),
+    arrayRangePointZones_("pointZone"),
+    arrayRangeCellSets_("cellSet"),
+    arrayRangeFaceSets_("faceSet"),
+    arrayRangePointSets_("pointSet")
 {
     if (debug)
     {
@@ -288,7 +289,7 @@ Foam::vtkPV3Foam::vtkPV3Foam
         meshRegion_ = caseName.substr(beg+1, end-beg-1);
 
         // some safety
-        if (!meshRegion_.size())
+        if (meshRegion_.empty())
         {
             meshRegion_ = polyMesh::defaultRegion;
         }
@@ -352,6 +353,14 @@ void Foam::vtkPV3Foam::updateInfo()
 
     vtkDataArraySelection* partSelection = reader_->GetPartSelection();
 
+    // there are two ways to ensure we have the correct list of parts:
+    // 1. remove everything and then set particular entries 'on'
+    // 2. build a 'char **' list and call SetArraysWithDefault()
+    //
+    // Nr. 2 has the potential advantage of not touching the modification
+    // time of the vtkDataArraySelection, but the qt/paraview proxy
+    // layer doesn't care about that anyhow.
+
     // enable 'internalMesh' on the first call
     // or preserve the enabled selections
     stringList enabledEntries;
@@ -369,11 +378,11 @@ void Foam::vtkPV3Foam::updateInfo()
     partSelection->RemoveAllArrays();
 
     // Update mesh parts list - add Lagrangian at the bottom
-    updateInfoInternalMesh();
-    updateInfoPatches();
-    updateInfoSets();
-    updateInfoZones();
-    updateInfoLagrangian();
+    updateInfoInternalMesh(partSelection);
+    updateInfoPatches(partSelection);
+    updateInfoSets(partSelection);
+    updateInfoZones(partSelection);
+    updateInfoLagrangian(partSelection);
 
     // restore the enabled selections
     setSelectedArrayEntries(partSelection, enabledEntries);
@@ -396,6 +405,8 @@ void Foam::vtkPV3Foam::updateInfo()
 
     if (debug)
     {
+        // just for debug info
+        getSelectedArrayEntries(partSelection);
         Info<< "<end> Foam::vtkPV3Foam::updateInfo" << endl;
     }
 
@@ -559,11 +570,25 @@ double* Foam::vtkPV3Foam::findTimes(int& nTimeSteps)
 
         nTimes = timeLst.size() - timeI;
 
-        // always skip "constant" time if possible
+        // skip "constant" time whenever possible
         if (timeI == 0 && nTimes > 1)
         {
-            timeI = 1;
-            --nTimes;
+            if (timeLst[timeI].name() == "constant")
+            {
+                ++timeI;
+                --nTimes;
+            }
+        }
+
+
+        // skip "0/" time if requested and possible
+        if (nTimes > 1 && reader_->GetSkipZeroTime())
+        {
+            if (mag(timeLst[timeI].value()) < SMALL)
+            {
+                ++timeI;
+                --nTimes;
+            }
         }
 
         if (nTimes)
@@ -607,10 +632,10 @@ void Foam::vtkPV3Foam::renderPatchNames(vtkRenderer* renderer, const bool show)
         wordHashSet selectedPatches = getSelected
         (
             reader_->GetPartSelection(),
-            partInfoPatches_
+            arrayRangePatches_
         );
 
-        if (!selectedPatches.size())
+        if (selectedPatches.empty())
         {
             return;
         }
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3Foam.H b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3Foam.H
index 05c84744775953e3672c2805f215b7f2d7b966b3..6037e78781f193928365cfcae265603383f2d776 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3Foam.H
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3Foam.H
@@ -111,7 +111,7 @@ class vtkPV3Foam
     // Private classes
 
         //- Bookkeeping for GUI checklists and the multi-block organization
-        class partInfo
+        class arrayRange
         {
             const char *name_;
             int block_;
@@ -120,11 +120,11 @@ class vtkPV3Foam
 
         public:
 
-            partInfo(const char *name, const int blockNo=0)
+            arrayRange(const char *name, const int blockNo=0)
             :
                 name_(name),
                 block_(blockNo),
-                start_(-1),
+                start_(0),
                 size_(0)
             {}
 
@@ -142,21 +142,25 @@ class vtkPV3Foam
                 return prev;
             }
 
+            //- Return block name
             const char* name() const
             {
                 return name_;
             }
 
+            //- Return array start index
             int start() const
             {
                 return start_;
             }
 
+            //- Return array end index
             int end() const
             {
                 return start_ + size_;
             }
 
+            //- Return sublist size
             int size() const
             {
                 return size_;
@@ -167,16 +171,10 @@ class vtkPV3Foam
                 return !size_;
             }
 
-            void reset()
+            //- Reset the size to zero and optionally assign a new start
+            void reset(const int startAt = 0)
             {
-                start_ = -1;
-                size_ = 0;
-            }
-
-            //- Assign new start and reset the size
-            void operator=(const int i)
-            {
-                start_ = i;
+                start_ = startAt;
                 size_ = 0;
             }
 
@@ -282,15 +280,15 @@ class vtkPV3Foam
 
         //- First instance and size of various mesh parts
         //  used to index into partStatus_ and partDataset_
-        partInfo partInfoVolume_;
-        partInfo partInfoPatches_;
-        partInfo partInfoLagrangian_;
-        partInfo partInfoCellZones_;
-        partInfo partInfoFaceZones_;
-        partInfo partInfoPointZones_;
-        partInfo partInfoCellSets_;
-        partInfo partInfoFaceSets_;
-        partInfo partInfoPointSets_;
+        arrayRange arrayRangeVolume_;
+        arrayRange arrayRangePatches_;
+        arrayRange arrayRangeLagrangian_;
+        arrayRange arrayRangeCellZones_;
+        arrayRange arrayRangeFaceZones_;
+        arrayRange arrayRangePointZones_;
+        arrayRange arrayRangeCellSets_;
+        arrayRange arrayRangeFaceSets_;
+        arrayRange arrayRangePointSets_;
 
         //- Decomposed cells information (mesh regions)
         //  TODO: regions
@@ -313,7 +311,7 @@ class vtkPV3Foam
         (
             vtkMultiBlockDataSet* output,
             vtkDataSet* dataset,
-            const partInfo&,
+            const arrayRange&,
             const label datasetNo,
             const std::string& datasetName
         );
@@ -323,7 +321,7 @@ class vtkPV3Foam
         static vtkDataSet* GetDataSetFromBlock
         (
             vtkMultiBlockDataSet* output,
-            const partInfo&,
+            const arrayRange&,
             const label datasetNo
         );
 
@@ -332,7 +330,7 @@ class vtkPV3Foam
         static label GetNumberOfDataSets
         (
             vtkMultiBlockDataSet* output,
-            const partInfo&
+            const arrayRange&
         );
 
         //- Reset data counters
@@ -344,19 +342,19 @@ class vtkPV3Foam
             void updateMeshPartsStatus();
 
             //- Internal mesh info
-            void updateInfoInternalMesh();
+            void updateInfoInternalMesh(vtkDataArraySelection*);
 
             //- Lagrangian info
-            void updateInfoLagrangian();
+            void updateInfoLagrangian(vtkDataArraySelection*);
 
             //- Patch info
-            void updateInfoPatches();
+            void updateInfoPatches(vtkDataArraySelection*);
 
             //- Set info
-            void updateInfoSets();
+            void updateInfoSets(vtkDataArraySelection*);
 
             //- Zone info
-            void updateInfoZones();
+            void updateInfoZones(vtkDataArraySelection*);
 
             //- Read zone names for zoneType from file
             wordList readZoneNames(const word& zoneType);
@@ -511,7 +509,7 @@ class vtkPV3Foam
                 const GeometricField<Type, fvPatchField, volMesh>&,
                 autoPtr<GeometricField<Type, pointPatchField, pointMesh> >&,
                 vtkMultiBlockDataSet* output,
-                const partInfo& selector,
+                const arrayRange&,
                 const List<polyDecomp>& decompLst
             );
 
@@ -521,7 +519,7 @@ class vtkPV3Foam
             (
                 const GeometricField<Type, fvPatchField, volMesh>&,
                 vtkMultiBlockDataSet* output,
-                const partInfo&,
+                const arrayRange&,
                 const label datasetNo,
                 const polyDecomp&
             );
@@ -533,7 +531,7 @@ class vtkPV3Foam
                 const word& name,
                 const Field<Type>&,
                 vtkMultiBlockDataSet* output,
-                const partInfo&,
+                const arrayRange&,
                 const label datasetNo
             );
 
@@ -543,7 +541,7 @@ class vtkPV3Foam
             (
                 const GeometricField<Type, fvPatchField, volMesh>&,
                 vtkMultiBlockDataSet* output,
-                const partInfo&,
+                const arrayRange&,
                 const label datasetNo,
                 const fvMesh&,
                 const labelList& faceLabels
@@ -555,7 +553,7 @@ class vtkPV3Foam
             (
                 const GeometricField<Type, fvPatchField, volMesh>&,
                 vtkMultiBlockDataSet* output,
-                const partInfo&,
+                const arrayRange&,
                 const label datasetNo,
                 const fvMesh&,
                 const faceSet&
@@ -576,7 +574,7 @@ class vtkPV3Foam
             (
                 const IOField<Type>&,
                 vtkMultiBlockDataSet* output,
-                const partInfo&,
+                const arrayRange&,
                 const label datasetNo
             );
 
@@ -596,7 +594,7 @@ class vtkPV3Foam
             (
                 const GeometricField<Type, pointPatchField, pointMesh>&,
                 vtkMultiBlockDataSet* output,
-                const partInfo& selector,
+                const arrayRange&,
                 const List<polyDecomp>&
             );
 
@@ -607,7 +605,7 @@ class vtkPV3Foam
                 const GeometricField<Type, pointPatchField, pointMesh>&,
                 const GeometricField<Type, fvPatchField, volMesh>&,
                 vtkMultiBlockDataSet* output,
-                const partInfo&,
+                const arrayRange&,
                 const label datasetNo,
                 const polyDecomp&
             );
@@ -619,7 +617,7 @@ class vtkPV3Foam
                 const word& name,
                 const Field<Type>&,
                 vtkMultiBlockDataSet* output,
-                const partInfo&,
+                const arrayRange&,
                 const label datasetNo
             );
 
@@ -640,7 +638,7 @@ class vtkPV3Foam
             static wordHashSet getSelected
             (
                 vtkDataArraySelection*,
-                const partInfo&
+                const arrayRange&
             );
 
             //- Retrieve the current selections
@@ -650,7 +648,7 @@ class vtkPV3Foam
             static stringList getSelectedArrayEntries
             (
                 vtkDataArraySelection*,
-                const partInfo&
+                const arrayRange&
             );
 
             //- Set selection(s)
@@ -661,7 +659,7 @@ class vtkPV3Foam
             );
 
             //- Get the first word from the mesh parts selection
-            word getPartName(int);
+            word getPartName(const int);
 
 
         //- Disallow default bitwise copy construct
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamAddToSelection.H b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamAddToSelection.H
index d6b1f1ed5233ed8bad59aabbcbb08232b33a684e..b945d6c6a063a476e4f346a444dfbf34b6fb6c8d 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamAddToSelection.H
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamAddToSelection.H
@@ -50,11 +50,17 @@ Foam::label Foam::vtkPV3Foam::addToSelection
     {
         if (suffix.size())
         {
-            select->AddArray((names[nameI] + suffix).c_str());
+            select->AddArray
+            (
+                (names[nameI] + suffix).c_str()
+            );
         }
         else
         {
-            select->AddArray(names[nameI].c_str());
+            select->AddArray
+            (
+                (names[nameI]).c_str()
+            );
         }
     }
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamFaceField.H b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamFaceField.H
index 14c0d5f9b9e82149cac48473ce6ffcfedca3fea5..68f551ae5a3979f16e7ddca13ce408a3e0950907 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamFaceField.H
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamFaceField.H
@@ -43,7 +43,7 @@ void Foam::vtkPV3Foam::convertFaceField
 (
     const GeometricField<Type, fvPatchField, volMesh>& tf,
     vtkMultiBlockDataSet* output,
-    const partInfo& selector,
+    const arrayRange& range,
     const label datasetNo,
     const fvMesh& mesh,
     const labelList& faceLabels
@@ -100,7 +100,7 @@ void Foam::vtkPV3Foam::convertFaceField
 
     vtkPolyData::SafeDownCast
     (
-        GetDataSetFromBlock(output, selector, datasetNo)
+        GetDataSetFromBlock(output, range, datasetNo)
     )   ->GetCellData()
         ->AddArray(cellData);
 
@@ -113,7 +113,7 @@ void Foam::vtkPV3Foam::convertFaceField
 (
     const GeometricField<Type, fvPatchField, volMesh>& tf,
     vtkMultiBlockDataSet* output,
-    const partInfo& selector,
+    const arrayRange& range,
     const label datasetNo,
     const fvMesh& mesh,
     const faceSet& fSet
@@ -173,7 +173,7 @@ void Foam::vtkPV3Foam::convertFaceField
 
     vtkPolyData::SafeDownCast
     (
-        GetDataSetFromBlock(output, selector, datasetNo)
+        GetDataSetFromBlock(output, range, datasetNo)
     )   ->GetCellData()
         ->AddArray(cellData);
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamFields.C b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamFields.C
index 38cc52f68047303136cd08d02e15c3ded723bcc7..b712fdebfe40b6dedb3006b053c1645b097d7cd7 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamFields.C
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamFields.C
@@ -51,7 +51,7 @@ void Foam::vtkPV3Foam::pruneObjectList
 )
 {
     // hash all the selected field names
-    if (!selected.size())
+    if (selected.empty())
     {
         objects.clear();
     }
@@ -79,7 +79,7 @@ void Foam::vtkPV3Foam::convertVolFields
         reader_->GetVolFieldSelection()
     );
 
-    if (!selectedFields.size())
+    if (selectedFields.empty())
     {
         return;
     }
@@ -89,7 +89,7 @@ void Foam::vtkPV3Foam::convertVolFields
     IOobjectList objects(mesh, dbPtr_().timeName());
     pruneObjectList(objects, selectedFields);
 
-    if (!objects.size())
+    if (objects.empty())
     {
         return;
     }
@@ -164,7 +164,7 @@ void Foam::vtkPV3Foam::convertPointFields
         reader_->GetPointFieldSelection()
     );
 
-    if (!selectedFields.size())
+    if (selectedFields.empty())
     {
         return;
     }
@@ -174,7 +174,7 @@ void Foam::vtkPV3Foam::convertPointFields
     IOobjectList objects(mesh, dbPtr_().timeName());
     pruneObjectList(objects, selectedFields);
 
-    if (!objects.size())
+    if (objects.empty())
     {
         return;
     }
@@ -229,7 +229,7 @@ void Foam::vtkPV3Foam::convertLagrangianFields
     vtkMultiBlockDataSet* output
 )
 {
-    partInfo& selector = partInfoLagrangian_;
+    arrayRange& range = arrayRangeLagrangian_;
     const fvMesh& mesh = *meshPtr_;
 
     wordHashSet selectedFields = getSelected
@@ -237,7 +237,7 @@ void Foam::vtkPV3Foam::convertLagrangianFields
         reader_->GetLagrangianFieldSelection()
     );
 
-    if (!selectedFields.size())
+    if (selectedFields.empty())
     {
         return;
     }
@@ -248,7 +248,7 @@ void Foam::vtkPV3Foam::convertLagrangianFields
         printMemory();
     }
 
-    for (int partId = selector.start(); partId < selector.end(); ++partId)
+    for (int partId = range.start(); partId < range.end(); ++partId)
     {
         const word  cloudName = getPartName(partId);
         const label datasetNo = partDataset_[partId];
@@ -270,7 +270,7 @@ void Foam::vtkPV3Foam::convertLagrangianFields
         );
         pruneObjectList(objects, selectedFields);
 
-        if (!objects.size())
+        if (objects.empty())
         {
             continue;
         }
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamLagrangianFields.H b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamLagrangianFields.H
index 58422d69f49eb4a78b1db291d32df7a7596f6783..1b6e2a15681070cd4599aeb587f72209c46b8bfa 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamLagrangianFields.H
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamLagrangianFields.H
@@ -42,7 +42,7 @@ void Foam::vtkPV3Foam::convertLagrangianFields
     const label datasetNo
 )
 {
-    const partInfo& selector = partInfoLagrangian_;
+    const arrayRange& range = arrayRangeLagrangian_;
 
     forAllConstIter(IOobjectList, objects, iter)
     {
@@ -50,7 +50,7 @@ void Foam::vtkPV3Foam::convertLagrangianFields
         if (iter()->headerClassName() == IOField<Type>::typeName)
         {
             IOField<Type> tf(*iter());
-            convertLagrangianField(tf, output, selector, datasetNo);
+            convertLagrangianField(tf, output, range, datasetNo);
         }
     }
 }
@@ -61,7 +61,7 @@ void Foam::vtkPV3Foam::convertLagrangianField
 (
     const IOField<Type>& tf,
     vtkMultiBlockDataSet* output,
-    const partInfo& selector,
+    const arrayRange& range,
     const label datasetNo
 )
 {
@@ -97,7 +97,7 @@ void Foam::vtkPV3Foam::convertLagrangianField
 
     vtkPolyData::SafeDownCast
     (
-        GetDataSetFromBlock(output, selector, datasetNo)
+        GetDataSetFromBlock(output, range, datasetNo)
     )   ->GetPointData()
         ->AddArray(pointData);
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamMesh.C b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamMesh.C
index 6550a960e14aac0b594aa80215e33f4deb536bd1..516b29d3ef4ddea2b23a473a27b7ad999442dbcb 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamMesh.C
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamMesh.C
@@ -49,13 +49,13 @@ void Foam::vtkPV3Foam::convertMeshVolume
     int& blockNo
 )
 {
-    partInfo& selector = partInfoVolume_;
-    selector.block(blockNo);   // set output block
+    arrayRange& range = arrayRangeVolume_;
+    range.block(blockNo);      // set output block
     label datasetNo = 0;       // restart at dataset 0
     const fvMesh& mesh = *meshPtr_;
 
     // resize for decomposed polyhedra
-    regionPolyDecomp_.setSize(selector.size());
+    regionPolyDecomp_.setSize(range.size());
 
     if (debug)
     {
@@ -65,7 +65,7 @@ void Foam::vtkPV3Foam::convertMeshVolume
 
     // Convert the internalMesh
     // this looks like more than one part, but it isn't
-    for (int partId = selector.start(); partId < selector.end(); ++partId)
+    for (int partId = range.start(); partId < range.end(); ++partId)
     {
         const word partName = "internalMesh";
 
@@ -82,7 +82,7 @@ void Foam::vtkPV3Foam::convertMeshVolume
 
         if (vtkmesh)
         {
-            AddToBlock(output, vtkmesh, selector, datasetNo, partName);
+            AddToBlock(output, vtkmesh, range, datasetNo, partName);
             vtkmesh->Delete();
 
             partDataset_[partId] = datasetNo++;
@@ -109,8 +109,8 @@ void Foam::vtkPV3Foam::convertMeshLagrangian
     int& blockNo
 )
 {
-    partInfo& selector = partInfoLagrangian_;
-    selector.block(blockNo);   // set output block
+    arrayRange& range = arrayRangeLagrangian_;
+    range.block(blockNo);      // set output block
     label datasetNo = 0;       // restart at dataset 0
     const fvMesh& mesh = *meshPtr_;
 
@@ -120,7 +120,7 @@ void Foam::vtkPV3Foam::convertMeshLagrangian
         printMemory();
     }
 
-    for (int partId = selector.start(); partId < selector.end(); ++partId)
+    for (int partId = range.start(); partId < range.end(); ++partId)
     {
         const word cloudName = getPartName(partId);
 
@@ -133,7 +133,7 @@ void Foam::vtkPV3Foam::convertMeshLagrangian
 
         if (vtkmesh)
         {
-            AddToBlock(output, vtkmesh, selector, datasetNo, cloudName);
+            AddToBlock(output, vtkmesh, range, datasetNo, cloudName);
             vtkmesh->Delete();
 
             partDataset_[partId] = datasetNo++;
@@ -160,8 +160,8 @@ void Foam::vtkPV3Foam::convertMeshPatches
     int& blockNo
 )
 {
-    partInfo& selector = partInfoPatches_;
-    selector.block(blockNo);   // set output block
+    arrayRange& range = arrayRangePatches_;
+    range.block(blockNo);      // set output block
     label datasetNo = 0;       // restart at dataset 0
     const fvMesh& mesh = *meshPtr_;
     const polyBoundaryMesh& patches = mesh.boundaryMesh();
@@ -172,7 +172,7 @@ void Foam::vtkPV3Foam::convertMeshPatches
         printMemory();
     }
 
-    for (int partId = selector.start(); partId < selector.end(); ++partId)
+    for (int partId = range.start(); partId < range.end(); ++partId)
     {
         const word patchName = getPartName(partId);
         const label  patchId = patches.findPatchID(patchName);
@@ -192,7 +192,7 @@ void Foam::vtkPV3Foam::convertMeshPatches
 
         if (vtkmesh)
         {
-            AddToBlock(output, vtkmesh, selector, datasetNo, patchName);
+            AddToBlock(output, vtkmesh, range, datasetNo, patchName);
             vtkmesh->Delete();
 
             partDataset_[partId] = datasetNo++;
@@ -219,15 +219,15 @@ void Foam::vtkPV3Foam::convertMeshCellZones
     int& blockNo
 )
 {
-    partInfo& selector = partInfoCellZones_;
-    selector.block(blockNo);   // set output block
+    arrayRange& range = arrayRangeCellZones_;
+    range.block(blockNo);      // set output block
     label datasetNo = 0;       // restart at dataset 0
     const fvMesh& mesh = *meshPtr_;
 
     // resize for decomposed polyhedra
-    zonePolyDecomp_.setSize(selector.size());
+    zonePolyDecomp_.setSize(range.size());
 
-    if (!selector.size())
+    if (range.empty())
     {
         return;
     }
@@ -239,7 +239,7 @@ void Foam::vtkPV3Foam::convertMeshCellZones
     }
 
     const cellZoneMesh& zMesh = mesh.cellZones();
-    for (int partId = selector.start(); partId < selector.end(); ++partId)
+    for (int partId = range.start(); partId < range.end(); ++partId)
     {
         const word zoneName = getPartName(partId);
         const label  zoneId = zMesh.findZoneID(zoneName);
@@ -281,7 +281,7 @@ void Foam::vtkPV3Foam::convertMeshCellZones
             // copy pointMap as well, otherwise pointFields fail
             zonePolyDecomp_[datasetNo].pointMap() = subsetter.pointMap();
 
-            AddToBlock(output, vtkmesh, selector, datasetNo, zoneName);
+            AddToBlock(output, vtkmesh, range, datasetNo, zoneName);
             vtkmesh->Delete();
 
             partDataset_[partId] = datasetNo++;
@@ -308,13 +308,13 @@ void Foam::vtkPV3Foam::convertMeshCellSets
     int& blockNo
 )
 {
-    partInfo& selector = partInfoCellSets_;
-    selector.block(blockNo);   // set output block
+    arrayRange& range = arrayRangeCellSets_;
+    range.block(blockNo);      // set output block
     label datasetNo = 0;       // restart at dataset 0
     const fvMesh& mesh = *meshPtr_;
 
     // resize for decomposed polyhedra
-    csetPolyDecomp_.setSize(selector.size());
+    csetPolyDecomp_.setSize(range.size());
 
     if (debug)
     {
@@ -322,7 +322,7 @@ void Foam::vtkPV3Foam::convertMeshCellSets
         printMemory();
     }
 
-    for (int partId = selector.start(); partId < selector.end(); ++partId)
+    for (int partId = range.start(); partId < range.end(); ++partId)
     {
         const word partName = getPartName(partId);
 
@@ -363,7 +363,7 @@ void Foam::vtkPV3Foam::convertMeshCellSets
             // copy pointMap as well, otherwise pointFields fail
             csetPolyDecomp_[datasetNo].pointMap() = subsetter.pointMap();
 
-            AddToBlock(output, vtkmesh, selector, datasetNo, partName);
+            AddToBlock(output, vtkmesh, range, datasetNo, partName);
             vtkmesh->Delete();
 
             partDataset_[partId] = datasetNo++;
@@ -390,12 +390,12 @@ void Foam::vtkPV3Foam::convertMeshFaceZones
     int& blockNo
 )
 {
-    partInfo& selector = partInfoFaceZones_;
-    selector.block(blockNo);   // set output block
+    arrayRange& range = arrayRangeFaceZones_;
+    range.block(blockNo);      // set output block
     label datasetNo = 0;       // restart at dataset 0
     const fvMesh& mesh = *meshPtr_;
 
-    if (!selector.size())
+    if (range.empty())
     {
         return;
     }
@@ -407,7 +407,7 @@ void Foam::vtkPV3Foam::convertMeshFaceZones
     }
 
     const faceZoneMesh& zMesh = mesh.faceZones();
-    for (int partId = selector.start(); partId < selector.end(); ++partId)
+    for (int partId = range.start(); partId < range.end(); ++partId)
     {
         const word zoneName = getPartName(partId);
         const label  zoneId = zMesh.findZoneID(zoneName);
@@ -426,7 +426,7 @@ void Foam::vtkPV3Foam::convertMeshFaceZones
         vtkPolyData* vtkmesh = faceZoneVTKMesh(mesh, zMesh[zoneId]);
         if (vtkmesh)
         {
-            AddToBlock(output, vtkmesh, selector, datasetNo, zoneName);
+            AddToBlock(output, vtkmesh, range, datasetNo, zoneName);
             vtkmesh->Delete();
 
             partDataset_[partId] = datasetNo++;
@@ -453,8 +453,8 @@ void Foam::vtkPV3Foam::convertMeshFaceSets
     int& blockNo
 )
 {
-    partInfo& selector = partInfoFaceSets_;
-    selector.block(blockNo);   // set output block
+    arrayRange& range = arrayRangeFaceSets_;
+    range.block(blockNo);      // set output block
     label datasetNo = 0;       // restart at dataset 0
     const fvMesh& mesh = *meshPtr_;
 
@@ -464,7 +464,7 @@ void Foam::vtkPV3Foam::convertMeshFaceSets
         printMemory();
     }
 
-    for (int partId = selector.start(); partId < selector.end(); ++partId)
+    for (int partId = range.start(); partId < range.end(); ++partId)
     {
         const word partName = getPartName(partId);
 
@@ -483,7 +483,7 @@ void Foam::vtkPV3Foam::convertMeshFaceSets
         vtkPolyData* vtkmesh = faceSetVTKMesh(mesh, fSet);
         if (vtkmesh)
         {
-            AddToBlock(output, vtkmesh, selector, datasetNo, partName);
+            AddToBlock(output, vtkmesh, range, datasetNo, partName);
             vtkmesh->Delete();
 
             partDataset_[partId] = datasetNo++;
@@ -510,8 +510,8 @@ void Foam::vtkPV3Foam::convertMeshPointZones
     int& blockNo
 )
 {
-    partInfo& selector = partInfoPointZones_;
-    selector.block(blockNo);   // set output block
+    arrayRange& range = arrayRangePointZones_;
+    range.block(blockNo);      // set output block
     label datasetNo = 0;       // restart at dataset 0
     const fvMesh& mesh = *meshPtr_;
 
@@ -521,10 +521,10 @@ void Foam::vtkPV3Foam::convertMeshPointZones
         printMemory();
     }
 
-    if (selector.size())
+    if (range.size())
     {
         const pointZoneMesh& zMesh = mesh.pointZones();
-        for (int partId = selector.start(); partId < selector.end(); ++partId)
+        for (int partId = range.start(); partId < range.end(); ++partId)
         {
             word zoneName = getPartName(partId);
             label zoneId = zMesh.findZoneID(zoneName);
@@ -537,7 +537,7 @@ void Foam::vtkPV3Foam::convertMeshPointZones
             vtkPolyData* vtkmesh = pointZoneVTKMesh(mesh, zMesh[zoneId]);
             if (vtkmesh)
             {
-                AddToBlock(output, vtkmesh, selector, datasetNo, zoneName);
+                AddToBlock(output, vtkmesh, range, datasetNo, zoneName);
                 vtkmesh->Delete();
 
                 partDataset_[partId] = datasetNo++;
@@ -566,8 +566,8 @@ void Foam::vtkPV3Foam::convertMeshPointSets
     int& blockNo
 )
 {
-    partInfo& selector = partInfoPointSets_;
-    selector.block(blockNo);   // set output block
+    arrayRange& range = arrayRangePointSets_;
+    range.block(blockNo);      // set output block
     label datasetNo = 0;       // restart at dataset 0
     const fvMesh& mesh = *meshPtr_;
 
@@ -577,7 +577,7 @@ void Foam::vtkPV3Foam::convertMeshPointSets
         printMemory();
     }
 
-    for (int partId = selector.start(); partId < selector.end(); ++partId)
+    for (int partId = range.start(); partId < range.end(); ++partId)
     {
         word partName = getPartName(partId);
 
@@ -596,7 +596,7 @@ void Foam::vtkPV3Foam::convertMeshPointSets
         vtkPolyData* vtkmesh = pointSetVTKMesh(mesh, pSet);
         if (vtkmesh)
         {
-            AddToBlock(output, vtkmesh, selector, datasetNo, partName);
+            AddToBlock(output, vtkmesh, range, datasetNo, partName);
             vtkmesh->Delete();
 
             partDataset_[partId] = datasetNo++;
@@ -616,4 +616,5 @@ void Foam::vtkPV3Foam::convertMeshPointSets
     }
 }
 
+
 // ************************************************************************* //
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamPatchField.H b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamPatchField.H
index bfa2d1ac46600c4607caf4b8824d1f58eb9c7ba6..7e473a7c74950b842831cc054784262970a2390c 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamPatchField.H
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamPatchField.H
@@ -45,7 +45,7 @@ void Foam::vtkPV3Foam::convertPatchField
     const word& name,
     const Field<Type>& ptf,
     vtkMultiBlockDataSet* output,
-    const partInfo& selector,
+    const arrayRange& range,
     const label datasetNo
 )
 {
@@ -70,7 +70,7 @@ void Foam::vtkPV3Foam::convertPatchField
 
     vtkPolyData::SafeDownCast
     (
-        GetDataSetFromBlock(output, selector, datasetNo)
+        GetDataSetFromBlock(output, range, datasetNo)
     )   ->GetCellData()
         ->AddArray(cellData);
 
@@ -85,7 +85,7 @@ void Foam::vtkPV3Foam::convertPatchPointField
     const word& name,
     const Field<Type>& pptf,
     vtkMultiBlockDataSet* output,
-    const partInfo& selector,
+    const arrayRange& range,
     const label datasetNo
 )
 {
@@ -111,7 +111,7 @@ void Foam::vtkPV3Foam::convertPatchPointField
 
     vtkPolyData::SafeDownCast
     (
-        GetDataSetFromBlock(output, selector, datasetNo)
+        GetDataSetFromBlock(output, range, datasetNo)
     )   ->GetPointData()
         ->AddArray(pointData);
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamPointFields.H b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamPointFields.H
index 5e3ae1df423aab466fe3ff89796fcd519a3c8bd4..697044bc6b9b96f881fc610327ed0c18bee4130c 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamPointFields.H
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamPointFields.H
@@ -77,7 +77,7 @@ void Foam::vtkPV3Foam::convertPointFields
         (
             ptf,
             output,
-            partInfoVolume_,
+            arrayRangeVolume_,
             regionPolyDecomp_
         );
 
@@ -86,7 +86,7 @@ void Foam::vtkPV3Foam::convertPointFields
         (
             ptf,
             output,
-            partInfoCellZones_,
+            arrayRangeCellZones_,
             zonePolyDecomp_
         );
 
@@ -95,7 +95,7 @@ void Foam::vtkPV3Foam::convertPointFields
         (
             ptf,
             output,
-            partInfoCellSets_,
+            arrayRangeCellSets_,
             csetPolyDecomp_
         );
 
@@ -105,8 +105,8 @@ void Foam::vtkPV3Foam::convertPointFields
         //
         for
         (
-            int partId = partInfoPatches_.start();
-            partId < partInfoPatches_.end();
+            int partId = arrayRangePatches_.start();
+            partId < arrayRangePatches_.end();
             ++partId
         )
         {
@@ -124,7 +124,7 @@ void Foam::vtkPV3Foam::convertPointFields
                 fieldName,
                 ptf.boundaryField()[patchId].patchInternalField()(),
                 output,
-                partInfoPatches_,
+                arrayRangePatches_,
                 datasetNo
             );
         }
@@ -137,11 +137,11 @@ void Foam::vtkPV3Foam::convertPointFieldBlock
 (
     const GeometricField<Type, pointPatchField, pointMesh>& ptf,
     vtkMultiBlockDataSet* output,
-    const partInfo& selector,
+    const arrayRange& range,
     const List<polyDecomp>& decompLst
 )
 {
-   for (int partId = selector.start(); partId < selector.end(); ++partId)
+   for (int partId = range.start(); partId < range.end(); ++partId)
    {
        const label datasetNo = partDataset_[partId];
 
@@ -152,7 +152,7 @@ void Foam::vtkPV3Foam::convertPointFieldBlock
                ptf,
                GeometricField<Type, fvPatchField, volMesh>::null(),
                output,
-               selector,
+               range,
                datasetNo,
                decompLst[datasetNo]
            );
@@ -167,7 +167,7 @@ void Foam::vtkPV3Foam::convertPointField
     const GeometricField<Type, pointPatchField, pointMesh>& ptf,
     const GeometricField<Type, fvPatchField, volMesh>& tf,
     vtkMultiBlockDataSet* output,
-    const partInfo& selector,
+    const arrayRange& range,
     const label datasetNo,
     const polyDecomp& decomp
 )
@@ -260,7 +260,7 @@ void Foam::vtkPV3Foam::convertPointField
 
     vtkUnstructuredGrid::SafeDownCast
     (
-        GetDataSetFromBlock(output, selector, datasetNo)
+        GetDataSetFromBlock(output, range, datasetNo)
     )   ->GetPointData()
         ->AddArray(pointData);
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamUpdateInfo.C b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamUpdateInfo.C
index 5bb2143c2a26572fac73aae5e4dbaac191f5ea40..2bed6fabd4040dea85128c9d5ab928518b483fe4 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamUpdateInfo.C
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamUpdateInfo.C
@@ -118,32 +118,39 @@ Foam::wordList Foam::vtkPV3Foam::readZoneNames(const word& zoneType)
 }
 
 
-void Foam::vtkPV3Foam::updateInfoInternalMesh()
+void Foam::vtkPV3Foam::updateInfoInternalMesh
+(
+    vtkDataArraySelection* arraySelection
+)
 {
     if (debug)
     {
         Info<< "<beg> Foam::vtkPV3Foam::updateInfoInternalMesh" << endl;
     }
 
-    vtkDataArraySelection* partSelection = reader_->GetPartSelection();
-
     // Determine mesh parts (internalMesh, patches...)
     //- Add internal mesh as first entry
-    partInfoVolume_ = partSelection->GetNumberOfArrays();
-    partSelection->AddArray("internalMesh");
-    partInfoVolume_ += 1;
+    arrayRangeVolume_.reset( arraySelection->GetNumberOfArrays() );
+    arraySelection->AddArray
+    (
+        "internalMesh"
+    );
+    arrayRangeVolume_ += 1;
 
     if (debug)
     {
         // just for debug info
-        getSelectedArrayEntries(partSelection);
+        getSelectedArrayEntries(arraySelection);
 
         Info<< "<end> Foam::vtkPV3Foam::updateInfoInternalMesh" << endl;
     }
 }
 
 
-void Foam::vtkPV3Foam::updateInfoLagrangian()
+void Foam::vtkPV3Foam::updateInfoLagrangian
+(
+    vtkDataArraySelection* arraySelection
+)
 {
     if (debug)
     {
@@ -166,34 +173,35 @@ void Foam::vtkPV3Foam::updateInfoLagrangian()
         readDir(dbPtr_->timePath()/lagrangianPrefix, fileName::DIRECTORY)
     );
 
-    vtkDataArraySelection* partSelection = reader_->GetPartSelection();
-    partInfoLagrangian_ = partSelection->GetNumberOfArrays();
+    arrayRangeLagrangian_.reset( arraySelection->GetNumberOfArrays() );
 
     int nClouds = 0;
     forAll(cloudDirs, cloudI)
     {
         // Add cloud to GUI list
-        partSelection->AddArray
+        arraySelection->AddArray
         (
             (cloudDirs[cloudI] + " - lagrangian").c_str()
         );
 
         ++nClouds;
     }
-
-    partInfoLagrangian_ += nClouds;
+    arrayRangeLagrangian_ += nClouds;
 
     if (debug)
     {
         // just for debug info
-        getSelectedArrayEntries(partSelection);
+        getSelectedArrayEntries(arraySelection);
 
         Info<< "<end> Foam::vtkPV3Foam::updateInfoLagrangian" << endl;
     }
 }
 
 
-void Foam::vtkPV3Foam::updateInfoPatches()
+void Foam::vtkPV3Foam::updateInfoPatches
+(
+    vtkDataArraySelection* arraySelection
+)
 {
     if (debug)
     {
@@ -201,8 +209,7 @@ void Foam::vtkPV3Foam::updateInfoPatches()
             << " [meshPtr=" << (meshPtr_ ? "set" : "NULL") << "]" << endl;
     }
 
-    vtkDataArraySelection* partSelection = reader_->GetPartSelection();
-    partInfoPatches_ = partSelection->GetNumberOfArrays();
+    arrayRangePatches_.reset( arraySelection->GetNumberOfArrays() );
 
     int nPatches = 0;
     if (meshPtr_)
@@ -215,7 +222,7 @@ void Foam::vtkPV3Foam::updateInfoPatches()
             if (pp.size())
             {
                 // Add patch to GUI list
-                partSelection->AddArray
+                arraySelection->AddArray
                 (
                     (pp.name() + " - patch").c_str()
                 );
@@ -260,7 +267,7 @@ void Foam::vtkPV3Foam::updateInfoPatches()
                 // Valid patch if nFace > 0 - add patch to GUI list
                 if (nFaces)
                 {
-                    partSelection->AddArray
+                    arraySelection->AddArray
                     (
                         (patchEntries[entryI].keyword() + " - patch").c_str()
                     );
@@ -270,19 +277,22 @@ void Foam::vtkPV3Foam::updateInfoPatches()
             }
         }
     }
-    partInfoPatches_ += nPatches;
+    arrayRangePatches_ += nPatches;
 
     if (debug)
     {
         // just for debug info
-        getSelectedArrayEntries(partSelection);
+        getSelectedArrayEntries(arraySelection);
 
         Info<< "<end> Foam::vtkPV3Foam::updateInfoPatches" << endl;
     }
 }
 
 
-void Foam::vtkPV3Foam::updateInfoZones()
+void Foam::vtkPV3Foam::updateInfoZones
+(
+    vtkDataArraySelection* arraySelection
+)
 {
     if (!reader_->GetIncludeZones())
     {
@@ -295,7 +305,6 @@ void Foam::vtkPV3Foam::updateInfoZones()
             << " [meshPtr=" << (meshPtr_ ? "set" : "NULL") << "]" << endl;
     }
 
-    vtkDataArraySelection* partSelection = reader_->GetPartSelection();
     wordList namesLst;
 
     //
@@ -310,12 +319,15 @@ void Foam::vtkPV3Foam::updateInfoZones()
         namesLst = readZoneNames("cellZones");
     }
 
-    partInfoCellZones_ = partSelection->GetNumberOfArrays();
+    arrayRangeCellZones_.reset( arraySelection->GetNumberOfArrays() );
     forAll(namesLst, elemI)
     {
-        partSelection->AddArray((namesLst[elemI] + " - cellZone").c_str());
+        arraySelection->AddArray
+        (
+            (namesLst[elemI] + " - cellZone").c_str()
+        );
     }
-    partInfoCellZones_ += namesLst.size();
+    arrayRangeCellZones_ += namesLst.size();
 
 
     //
@@ -330,15 +342,15 @@ void Foam::vtkPV3Foam::updateInfoZones()
         namesLst = readZoneNames("faceZones");
     }
 
-    partInfoFaceZones_ = partSelection->GetNumberOfArrays();
+    arrayRangeFaceZones_.reset( arraySelection->GetNumberOfArrays() );
     forAll(namesLst, elemI)
     {
-        partSelection->AddArray
+        arraySelection->AddArray
         (
             (namesLst[elemI] + " - faceZone").c_str()
         );
     }
-    partInfoFaceZones_ += namesLst.size();
+    arrayRangeFaceZones_ += namesLst.size();
 
 
     //
@@ -353,28 +365,30 @@ void Foam::vtkPV3Foam::updateInfoZones()
         namesLst = readZoneNames("pointZones");
     }
 
-    partInfoPointZones_ = partSelection->GetNumberOfArrays();
+    arrayRangePointZones_.reset( arraySelection->GetNumberOfArrays() );
     forAll(namesLst, elemI)
     {
-        partSelection->AddArray
+        arraySelection->AddArray
         (
             (namesLst[elemI] + " - pointZone").c_str()
         );
     }
-    partInfoPointZones_ += namesLst.size();
-
+    arrayRangePointZones_ += namesLst.size();
 
     if (debug)
     {
         // just for debug info
-        getSelectedArrayEntries(partSelection);
+        getSelectedArrayEntries(arraySelection);
 
         Info<< "<end> Foam::vtkPV3Foam::updateInfoZones" << endl;
     }
 }
 
 
-void Foam::vtkPV3Foam::updateInfoSets()
+void Foam::vtkPV3Foam::updateInfoSets
+(
+    vtkDataArraySelection* arraySelection
+)
 {
     if (!reader_->GetIncludeSets())
     {
@@ -386,8 +400,6 @@ void Foam::vtkPV3Foam::updateInfoSets()
         Info<< "<beg> Foam::vtkPV3Foam::updateInfoSets" << endl;
     }
 
-    vtkDataArraySelection* partSelection = reader_->GetPartSelection();
-
     // Add names of sets
     IOobjectList objects
     (
@@ -397,26 +409,26 @@ void Foam::vtkPV3Foam::updateInfoSets()
     );
 
 
-    partInfoCellSets_ = partSelection->GetNumberOfArrays();
-    partInfoCellSets_ += addToSelection<cellSet>
+    arrayRangeCellSets_.reset( arraySelection->GetNumberOfArrays() );
+    arrayRangeCellSets_ += addToSelection<cellSet>
     (
-        partSelection,
+        arraySelection,
         objects,
         " - cellSet"
     );
 
-    partInfoFaceSets_ = partSelection->GetNumberOfArrays();
-    partInfoFaceSets_ += addToSelection<faceSet>
+    arrayRangeFaceSets_.reset( arraySelection->GetNumberOfArrays() );
+    arrayRangeFaceSets_ += addToSelection<faceSet>
     (
-        partSelection,
+        arraySelection,
         objects,
         " - faceSet"
     );
 
-    partInfoPointSets_ = partSelection->GetNumberOfArrays();
-    partInfoPointSets_ += addToSelection<pointSet>
+    arrayRangePointSets_.reset( arraySelection->GetNumberOfArrays() );
+    arrayRangePointSets_ += addToSelection<pointSet>
     (
-        partSelection,
+        arraySelection,
         objects,
         " - pointSet"
     );
@@ -424,7 +436,7 @@ void Foam::vtkPV3Foam::updateInfoSets()
     if (debug)
     {
         // just for debug info
-        getSelectedArrayEntries(partSelection);
+        getSelectedArrayEntries(arraySelection);
 
         Info<< "<end> Foam::vtkPV3Foam::updateInfoSets" << endl;
     }
@@ -450,14 +462,13 @@ void Foam::vtkPV3Foam::updateInfoLagrangianFields()
     // have to decide if the second set of fields get mixed in
     // or dealt with separately
 
-    const partInfo& selector = partInfoLagrangian_;
-    int partId = selector.start();
-
-    if (!selector.size() || partId < 0)
+    const arrayRange& range = arrayRangeLagrangian_;
+    if (range.empty())
     {
         return;
     }
 
+    int partId = range.start();
     word cloudName = getPartName(partId);
 
     // use the db directly since this might be called without a mesh,
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamUtils.C b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamUtils.C
index 9683a159143deae679cbcb2d004e2bf37b06e157..74a57fb5597a987c79e5323d2ed821ac291cc15d 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamUtils.C
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamUtils.C
@@ -76,12 +76,12 @@ void Foam::vtkPV3Foam::AddToBlock
 (
     vtkMultiBlockDataSet* output,
     vtkDataSet* dataset,
-    const partInfo& selector,
+    const arrayRange& range,
     const label datasetNo,
     const std::string& datasetName
 )
 {
-    const int blockNo = selector.block();
+    const int blockNo = range.block();
 
     vtkDataObject* blockDO = output->GetBlock(blockNo);
     vtkMultiBlockDataSet* block = vtkMultiBlockDataSet::SafeDownCast(blockDO);
@@ -117,7 +117,7 @@ void Foam::vtkPV3Foam::AddToBlock
         output->GetMetaData(blockNo)->Set
         (
             vtkCompositeDataSet::NAME(),
-            selector.name()
+            range.name()
         );
     }
 
@@ -135,11 +135,11 @@ void Foam::vtkPV3Foam::AddToBlock
 vtkDataSet* Foam::vtkPV3Foam::GetDataSetFromBlock
 (
     vtkMultiBlockDataSet* output,
-    const partInfo& selector,
+    const arrayRange& range,
     const label datasetNo
 )
 {
-    const int blockNo = selector.block();
+    const int blockNo = range.block();
 
     vtkDataObject* blockDO = output->GetBlock(blockNo);
     vtkMultiBlockDataSet* block = vtkMultiBlockDataSet::SafeDownCast(blockDO);
@@ -157,10 +157,10 @@ vtkDataSet* Foam::vtkPV3Foam::GetDataSetFromBlock
 Foam::label Foam::vtkPV3Foam::GetNumberOfDataSets
 (
     vtkMultiBlockDataSet* output,
-    const partInfo& selector
+    const arrayRange& range
 )
 {
-    const int blockNo = selector.block();
+    const int blockNo = range.block();
 
     vtkDataObject* blockDO = output->GetBlock(blockNo);
     vtkMultiBlockDataSet* block = vtkMultiBlockDataSet::SafeDownCast(blockDO);
@@ -173,7 +173,7 @@ Foam::label Foam::vtkPV3Foam::GetNumberOfDataSets
 }
 
 
-Foam::word Foam::vtkPV3Foam::getPartName(int partId)
+Foam::word Foam::vtkPV3Foam::getPartName(const int partId)
 {
     return getFirstWord(reader_->GetPartArrayName(partId));
 }
@@ -202,13 +202,13 @@ Foam::wordHashSet Foam::vtkPV3Foam::getSelected
 Foam::wordHashSet Foam::vtkPV3Foam::getSelected
 (
     vtkDataArraySelection* select,
-    const partInfo& selector
+    const arrayRange& range
 )
 {
     int nElem = select->GetNumberOfArrays();
     wordHashSet selections(2*nElem);
 
-    for (int elemI = selector.start(); elemI < selector.end(); ++elemI)
+    for (int elemI = range.start(); elemI < range.end(); ++elemI)
     {
         if (select->GetArraySetting(elemI))
         {
@@ -262,13 +262,13 @@ Foam::stringList Foam::vtkPV3Foam::getSelectedArrayEntries
 Foam::stringList Foam::vtkPV3Foam::getSelectedArrayEntries
 (
     vtkDataArraySelection* select,
-    const partInfo& selector
+    const arrayRange& range
 )
 {
-    stringList selections(selector.size());
+    stringList selections(range.size());
     label nElem = 0;
 
-    for (int elemI = selector.start(); elemI < selector.end(); ++elemI)
+    for (int elemI = range.start(); elemI < range.end(); ++elemI)
     {
         if (select->GetArraySetting(elemI))
         {
@@ -281,7 +281,7 @@ Foam::stringList Foam::vtkPV3Foam::getSelectedArrayEntries
     if (debug)
     {
         Info<< "available(";
-        for (int elemI = selector.start(); elemI < selector.end(); ++elemI)
+        for (int elemI = range.start(); elemI < range.end(); ++elemI)
         {
             Info<< " \"" << select->GetArrayName(elemI) << "\"";
         }
@@ -363,7 +363,7 @@ void Foam::vtkPV3Foam::printMemory()
             }
         }
 
-        Info << "memUsed: " << (memTotal - memFree) << " kB\n";
+        Info<< "memUsed: " << (memTotal - memFree) << " kB\n";
     }
 }
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamVolFields.H b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamVolFields.H
index d5387be61f3e703d191d96c8640deccb7a4131b9..e28e3940a8c08e600ba664bdfa64d99d5a0bdd76 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamVolFields.H
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamVolFields.H
@@ -81,7 +81,7 @@ void Foam::vtkPV3Foam::convertVolFields
             tf,
             ptfPtr,
             output,
-            partInfoVolume_,
+            arrayRangeVolume_,
             regionPolyDecomp_
         );
 
@@ -91,7 +91,7 @@ void Foam::vtkPV3Foam::convertVolFields
             tf,
             ptfPtr,
             output,
-            partInfoCellZones_,
+            arrayRangeCellZones_,
             zonePolyDecomp_
         );
 
@@ -101,7 +101,7 @@ void Foam::vtkPV3Foam::convertVolFields
             tf,
             ptfPtr,
             output,
-            partInfoCellSets_,
+            arrayRangeCellSets_,
             csetPolyDecomp_
         );
 
@@ -117,8 +117,8 @@ void Foam::vtkPV3Foam::convertVolFields
 
         for
         (
-            int partId = partInfoPatches_.start();
-            partId < partInfoPatches_.end();
+            int partId = arrayRangePatches_.start();
+            partId < arrayRangePatches_.end();
             ++partId
         )
         {
@@ -155,7 +155,7 @@ void Foam::vtkPV3Foam::convertVolFields
                     tf.name(),
                     tpptf(),
                     output,
-                    partInfoPatches_,
+                    arrayRangePatches_,
                     datasetNo
                 );
 
@@ -164,7 +164,7 @@ void Foam::vtkPV3Foam::convertVolFields
                     pointFldName,
                     ppInterpList[patchId].faceToPointInterpolate(tpptf)(),
                     output,
-                    partInfoPatches_,
+                    arrayRangePatches_,
                     datasetNo
                 );
             }
@@ -175,7 +175,7 @@ void Foam::vtkPV3Foam::convertVolFields
                     tf.name(),
                     ptf,
                     output,
-                    partInfoPatches_,
+                    arrayRangePatches_,
                     datasetNo
                 );
 
@@ -184,7 +184,7 @@ void Foam::vtkPV3Foam::convertVolFields
                     pointFldName,
                     ppInterpList[patchId].faceToPointInterpolate(ptf)(),
                     output,
-                    partInfoPatches_,
+                    arrayRangePatches_,
                     datasetNo
                 );
             }
@@ -195,8 +195,8 @@ void Foam::vtkPV3Foam::convertVolFields
         //
         for
         (
-            int partId = partInfoFaceZones_.start();
-            partId < partInfoFaceZones_.end();
+            int partId = arrayRangeFaceZones_.start();
+            partId < arrayRangeFaceZones_.end();
             ++partId
         )
         {
@@ -220,7 +220,7 @@ void Foam::vtkPV3Foam::convertVolFields
             (
                 tf,
                 output,
-                partInfoFaceZones_,
+                arrayRangeFaceZones_,
                 datasetNo,
                 mesh,
                 zMesh[zoneId]
@@ -234,8 +234,8 @@ void Foam::vtkPV3Foam::convertVolFields
         //
         for
         (
-            int partId = partInfoFaceSets_.start();
-            partId < partInfoFaceSets_.end();
+            int partId = arrayRangeFaceSets_.start();
+            partId < arrayRangeFaceSets_.end();
             ++partId
         )
         {
@@ -253,7 +253,7 @@ void Foam::vtkPV3Foam::convertVolFields
             (
                 tf,
                 output,
-                partInfoFaceSets_,
+                arrayRangeFaceSets_,
                 datasetNo,
                 mesh,
                 fSet
@@ -271,11 +271,11 @@ void Foam::vtkPV3Foam::convertVolFieldBlock
     const GeometricField<Type, fvPatchField, volMesh>& tf,
     autoPtr<GeometricField<Type, pointPatchField, pointMesh> >& ptfPtr,
     vtkMultiBlockDataSet* output,
-    const partInfo& selector,
+    const arrayRange& range,
     const List<polyDecomp>& decompLst
 )
 {
-    for (int partId = selector.start(); partId < selector.end(); ++partId)
+    for (int partId = range.start(); partId < range.end(); ++partId)
     {
         const label datasetNo = partDataset_[partId];
 
@@ -285,7 +285,7 @@ void Foam::vtkPV3Foam::convertVolFieldBlock
             (
                 tf,
                 output,
-                selector,
+                range,
                 datasetNo,
                 decompLst[datasetNo]
             );
@@ -309,7 +309,7 @@ void Foam::vtkPV3Foam::convertVolFieldBlock
                 ptfPtr(),
                 tf,
                 output,
-                selector,
+                range,
                 datasetNo,
                 decompLst[datasetNo]
             );
@@ -323,7 +323,7 @@ void Foam::vtkPV3Foam::convertVolField
 (
     const GeometricField<Type, fvPatchField, volMesh>& tf,
     vtkMultiBlockDataSet* output,
-    const partInfo& selector,
+    const arrayRange& range,
     const label datasetNo,
     const polyDecomp& decompInfo
 )
@@ -359,7 +359,7 @@ void Foam::vtkPV3Foam::convertVolField
 
     vtkUnstructuredGrid::SafeDownCast
     (
-        GetDataSetFromBlock(output, selector, datasetNo)
+        GetDataSetFromBlock(output, range, datasetNo)
     )   ->GetCellData()
         ->AddArray(celldata);
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/PV3blockMeshReader_SM.xml b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/PV3blockMeshReader_SM.xml
index 2ac4774ff0de47f3e5dff9ec5a4cb01c8fb14434..b5bb304a652ff1eabd93d15c25a6e6e48ab270f1 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/PV3blockMeshReader_SM.xml
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/PV3blockMeshReader_SM.xml
@@ -43,34 +43,40 @@
       </Documentation>
     </IntVectorProperty>
 
-    <!-- Selections -->
 
-    <!-- Available Parts (blocks) array -->
+    <!--
+       | Selections
+       -->
+
+    <!-- Available Blocks array -->
     <StringVectorProperty
-      name="PartArrayInfo"
+      name="BlockArrayStatus"
       information_only="1">
-      <ArraySelectionInformationHelper attribute_name="Part"/>
+      <ArraySelectionInformationHelper attribute_name="Block"/>
     </StringVectorProperty>
     <StringVectorProperty
-      name="PartStatus"
+      name="BlockStatus"
       label="Blocks"
-      command="SetPartArrayStatus"
+      command="SetBlockArrayStatus"
       number_of_elements="0"
       repeat_command="1"
       number_of_elements_per_command="2"
       element_types="2 0"
-      information_property="PartArrayInfo"
+      information_property="BlockArrayStatus"
       animateable="0">
       <ArraySelectionDomain name="array_list">
         <RequiredProperties>
-          <Property name="PartArrayInfo" function="ArrayList"/>
+          <Property name="BlockArrayStatus" function="ArrayList"/>
         </RequiredProperties>
       </ArraySelectionDomain>
+      <Documentation>
+        This property contains a list of the blocks
+      </Documentation>
     </StringVectorProperty>
 
-    <!-- Available Parts (blocks) array -->
+    <!-- Available CurvedEdges array -->
     <StringVectorProperty
-      name="CurvedEdgesArrayInfo"
+      name="CurvedEdgesArrayStatus"
       information_only="1">
       <ArraySelectionInformationHelper attribute_name="CurvedEdges"/>
     </StringVectorProperty>
@@ -82,13 +88,16 @@
       repeat_command="1"
       number_of_elements_per_command="2"
       element_types="2 0"
-      information_property="CurvedEdgesArrayInfo"
+      information_property="CurvedEdgesArrayStatus"
       animateable="0">
       <ArraySelectionDomain name="array_list">
         <RequiredProperties>
-          <Property name="CurvedEdgesArrayInfo" function="ArrayList"/>
+          <Property name="CurvedEdgesArrayStatus" function="ArrayList"/>
         </RequiredProperties>
       </ArraySelectionDomain>
+      <Documentation>
+        This property contains a list of the curved edges
+      </Documentation>
     </StringVectorProperty>
 
   <Hints>
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/pqPV3blockMeshReaderPanel.cxx b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/pqPV3blockMeshReaderPanel.cxx
index 8114a1470907a46c4976aad1812e7ccc997a4613..6a56583134674e8a02e33401494e43a0f28469b1 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/pqPV3blockMeshReaderPanel.cxx
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/pqPV3blockMeshReaderPanel.cxx
@@ -32,9 +32,10 @@ License
 #include <QLabel>
 #include <QLayout>
 #include <QString>
+#include <QPushButton>
 #include <QtDebug>
 
-// Paraview<->QT UI
+// Paraview <-> QT UI
 #include "pqAnimationScene.h"
 #include "pqApplicationCore.h"
 #include "pqPipelineRepresentation.h"
@@ -56,34 +57,35 @@ pqPV3blockMeshReaderPanel::pqPV3blockMeshReaderPanel
     QWidget *p
 )
 :
-    pqAutoGeneratedObjectPanel(proxy, p),
-    sourceProxy_(vtkSMSourceProxy::SafeDownCast(this->proxy()))
+    pqAutoGeneratedObjectPanel(proxy, p)
 {
     // create first sublayout (at top of the panel)
-    QGridLayout *sect1 = new QGridLayout();
-    this->PanelLayout->addLayout(sect1, 0, 0, 1, -1);
-
+    QGridLayout *form = new QGridLayout();
+    this->PanelLayout->addLayout(form, 0, 0, 1, -1);
 
+    vtkSMProperty* prop = 0;
     // checkbox for showing point numbers
-    ShowPointNumbers_ = new QCheckBox("Show Point Numbers");
-    ShowPointNumbers_->setChecked(true);
-
-    connect
-    (
-        ShowPointNumbers_,
-        SIGNAL(stateChanged(int)),
-        this,
-        SLOT(ShowPointNumbersToggled())
-    );
-
-    sect1->addWidget(ShowPointNumbers_);
-
-
-    // immediate update on the Server Manager side
-    vtkSMIntVectorProperty::SafeDownCast
-    (
-        sourceProxy_->GetProperty("UiShowPointNumbers")
-    )->SetImmediateUpdate(true);
+    if ((prop = this->proxy()->GetProperty("UiShowPointNumbers")) != 0)
+    {
+        prop->SetImmediateUpdate(true);
+
+        ShowPointNumbers_ = new QCheckBox("Show Point Numbers");
+        ShowPointNumbers_->setToolTip("Show point numbers in render window.");
+        ShowPointNumbers_->setChecked
+        (
+            vtkSMIntVectorProperty::SafeDownCast(prop)->GetElement(0)
+        );
+
+        form->addWidget(ShowPointNumbers_);
+
+        connect
+        (
+            ShowPointNumbers_,
+            SIGNAL(stateChanged(int)),
+            this,
+            SLOT(ShowPointNumbersToggled())
+        );
+    }
 
 }
 
@@ -93,7 +95,7 @@ void pqPV3blockMeshReaderPanel::ShowPointNumbersToggled()
 {
     vtkSMIntVectorProperty::SafeDownCast
     (
-        sourceProxy_->GetProperty("UiShowPointNumbers")
+        this->proxy()->GetProperty("UiShowPointNumbers")
     )->SetElement(0, ShowPointNumbers_->isChecked());
 
     // update the active view
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/pqPV3blockMeshReaderPanel.h b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/pqPV3blockMeshReaderPanel.h
index 8096338315ec3532e5abc15c9b44916ae53c8998..0b1929af6d88beaae86a7d1cec93ccc6bc7e41c0 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/pqPV3blockMeshReaderPanel.h
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/pqPV3blockMeshReaderPanel.h
@@ -62,9 +62,6 @@ class pqPV3blockMeshReaderPanel
     Q_OBJECT;
     typedef pqAutoGeneratedObjectPanel Superclass;
 
-    //- Server Manager Source Proxy
-    vtkSMSourceProxy* sourceProxy_;
-
     //- Show Point Numbers checkbox
     QCheckBox* ShowPointNumbers_;
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/vtkPV3blockMeshReader.cxx b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/vtkPV3blockMeshReader.cxx
index bf17a60ca314c90c312c14cd57de55ba5ff261e9..52239e388666e2cf1f15fe67eb512ec5113c0799 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/vtkPV3blockMeshReader.cxx
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/vtkPV3blockMeshReader.cxx
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2008-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 2009-2009 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -64,7 +64,7 @@ vtkPV3blockMeshReader::vtkPV3blockMeshReader()
     ShowPointNumbers = 1;
     UpdateGUI = 0;
 
-    PartSelection = vtkDataArraySelection::New();
+    BlockSelection = vtkDataArraySelection::New();
     CurvedEdgesSelection = vtkDataArraySelection::New();
 
     // Setup the selection callback to modify this object when an array
@@ -77,7 +77,7 @@ vtkPV3blockMeshReader::vtkPV3blockMeshReader()
     SelectionObserver->SetClientData(this);
 
 
-    PartSelection->AddObserver
+    BlockSelection->AddObserver
     (
         vtkCommand::ModifiedEvent,
         this->SelectionObserver
@@ -109,11 +109,11 @@ vtkPV3blockMeshReader::~vtkPV3blockMeshReader()
         delete [] FileName;
     }
 
-    PartSelection->RemoveObserver(this->SelectionObserver);
+    BlockSelection->RemoveObserver(this->SelectionObserver);
     CurvedEdgesSelection->RemoveObserver(this->SelectionObserver);
 
     SelectionObserver->Delete();
-    PartSelection->Delete();
+    BlockSelection->Delete();
 }
 
 
@@ -292,50 +292,50 @@ void vtkPV3blockMeshReader::PrintSelf(ostream& os, vtkIndent indent)
 
 
 // ----------------------------------------------------------------------
-// Parts selection list control
+// Block selection list control
 
-vtkDataArraySelection* vtkPV3blockMeshReader::GetPartSelection()
+vtkDataArraySelection* vtkPV3blockMeshReader::GetBlockSelection()
 {
-    vtkDebugMacro(<<"GetPartSelection");
-    return PartSelection;
+    vtkDebugMacro(<<"GetBlockSelection");
+    return BlockSelection;
 }
 
 
-int vtkPV3blockMeshReader::GetNumberOfPartArrays()
+int vtkPV3blockMeshReader::GetNumberOfBlockArrays()
 {
-    vtkDebugMacro(<<"GetNumberOfPartArrays");
-    return PartSelection->GetNumberOfArrays();
+    vtkDebugMacro(<<"GetNumberOfBlockArrays");
+    return BlockSelection->GetNumberOfArrays();
 }
 
 
-const char* vtkPV3blockMeshReader::GetPartArrayName(int index)
+const char* vtkPV3blockMeshReader::GetBlockArrayName(int index)
 {
-    vtkDebugMacro(<<"GetPartArrayName");
-    return PartSelection->GetArrayName(index);
+    vtkDebugMacro(<<"GetBlockArrayName");
+    return BlockSelection->GetArrayName(index);
 }
 
 
-int vtkPV3blockMeshReader::GetPartArrayStatus(const char* name)
+int vtkPV3blockMeshReader::GetBlockArrayStatus(const char* name)
 {
-    vtkDebugMacro(<<"GetPartArrayStatus");
-    return PartSelection->ArrayIsEnabled(name);
+    vtkDebugMacro(<<"GetBlockArrayStatus");
+    return BlockSelection->ArrayIsEnabled(name);
 }
 
 
-void vtkPV3blockMeshReader::SetPartArrayStatus
+void vtkPV3blockMeshReader::SetBlockArrayStatus
 (
     const char* name,
     int status
 )
 {
-    vtkDebugMacro(<<"SetPartArrayStatus");
+    vtkDebugMacro(<<"SetBlockArrayStatus");
     if (status)
     {
-        PartSelection->EnableArray(name);
+        BlockSelection->EnableArray(name);
     }
     else
     {
-        PartSelection->DisableArray(name);
+        BlockSelection->DisableArray(name);
     }
 }
 
@@ -399,14 +399,7 @@ void vtkPV3blockMeshReader::SelectionModifiedCallback
     void*
 )
 {
-    static_cast<vtkPV3blockMeshReader*>(clientdata)->SelectionModified();
-}
-
-
-void vtkPV3blockMeshReader::SelectionModified()
-{
-    vtkDebugMacro(<<"SelectionModified");
-    Modified();
+    static_cast<vtkPV3blockMeshReader*>(clientdata)->Modified();
 }
 
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/vtkPV3blockMeshReader.h b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/vtkPV3blockMeshReader.h
index ae704d4a3be6f9a011b796c032a88837ab8295a1..d1679507d356ac8f4541b18afdbb0052858964d4 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/vtkPV3blockMeshReader.h
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/PV3blockMeshReader/vtkPV3blockMeshReader.h
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2008-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 2009-2009 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -84,15 +84,15 @@ public:
 
 
     // Description:
-    // Parts (blocks) selection list control
-    vtkDataArraySelection* GetPartSelection();
-    int  GetNumberOfPartArrays();
-    int  GetPartArrayStatus(const char*);
-    void SetPartArrayStatus(const char*, int status);
-    const char* GetPartArrayName(int index);
+    // Blocks selection list control
+    vtkDataArraySelection* GetBlockSelection();
+    int  GetNumberOfBlockArrays();
+    int  GetBlockArrayStatus(const char*);
+    void SetBlockArrayStatus(const char*, int status);
+    const char* GetBlockArrayName(int index);
 
     // Description:
-    // Parts (blocks) selection list control
+    // CurvedEdges selection list control
     vtkDataArraySelection* GetCurvedEdgesSelection();
     int  GetNumberOfCurvedEdgesArrays();
     int  GetCurvedEdgesArrayStatus(const char*);
@@ -110,8 +110,6 @@ public:
         void* calldata
     );
 
-    void SelectionModified();
-
 
 protected:
 
@@ -164,7 +162,7 @@ private:
     //- Dummy variable/switch to invoke a reader update
     int UpdateGUI;
 
-    vtkDataArraySelection* PartSelection;
+    vtkDataArraySelection* BlockSelection;
 
     vtkDataArraySelection* CurvedEdgesSelection;
 
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.C b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.C
index e9d36ec91eee61a8a67473b68656d0bd393cad32..01e75e95a7dff70237343e8c90941449a753c688 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.C
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2008-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 2009-2009 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -49,13 +49,16 @@ defineTypeNameAndDebug(Foam::vtkPV3blockMesh, 0);
 void Foam::vtkPV3blockMesh::resetCounters()
 {
     // Reset mesh part ids and sizes
-    partInfoBlocks_.reset();
-    partInfoEdges_.reset();
-    partInfoCorners_.reset();
+    arrayRangeBlocks_.reset();
+    arrayRangeEdges_.reset();
+    arrayRangeCorners_.reset();
 }
 
 
-void Foam::vtkPV3blockMesh::updateInfoBlocks()
+void Foam::vtkPV3blockMesh::updateInfoBlocks
+(
+    vtkDataArraySelection* arraySelection
+)
 {
     if (debug)
     {
@@ -63,8 +66,7 @@ void Foam::vtkPV3blockMesh::updateInfoBlocks()
             << " [meshPtr=" << (meshPtr_ ? "set" : "NULL") << "]" << endl;
     }
 
-    vtkDataArraySelection* selection = reader_->GetPartSelection();
-    partInfoBlocks_ = selection->GetNumberOfArrays();
+    arrayRangeBlocks_.reset( arraySelection->GetNumberOfArrays() );
 
     const blockMesh& blkMesh = *meshPtr_;
     const int nBlocks = blkMesh.size();
@@ -81,22 +83,25 @@ void Foam::vtkPV3blockMesh::updateInfoBlocks()
         }
 
         // Add blockId and zoneName to GUI list
-        selection->AddArray(partName.c_str());
+        arraySelection->AddArray(partName.c_str());
     }
 
-    partInfoBlocks_ += nBlocks;
+    arrayRangeBlocks_ += nBlocks;
 
     if (debug)
     {
         // just for debug info
-        getSelectedArrayEntries(selection);
+        getSelectedArrayEntries(arraySelection);
 
         Info<< "<end> Foam::vtkPV3blockMesh::updateInfoBlocks" << endl;
     }
 }
 
 
-void Foam::vtkPV3blockMesh::updateInfoEdges()
+void Foam::vtkPV3blockMesh::updateInfoEdges
+(
+    vtkDataArraySelection* arraySelection
+)
 {
     if (debug)
     {
@@ -104,8 +109,7 @@ void Foam::vtkPV3blockMesh::updateInfoEdges()
             << " [meshPtr=" << (meshPtr_ ? "set" : "NULL") << "]" << endl;
     }
 
-    vtkDataArraySelection* selection = reader_->GetCurvedEdgesSelection();
-    partInfoEdges_ = selection->GetNumberOfArrays();
+    arrayRangeEdges_.reset( arraySelection->GetNumberOfArrays() );
 
     const blockMesh& blkMesh = *meshPtr_;
     const curvedEdgeList& edges = blkMesh.edges();
@@ -119,15 +123,15 @@ void Foam::vtkPV3blockMesh::updateInfoEdges()
             << edges[edgeI].type();
 
         // Add "beg:end - type" to GUI list
-        selection->AddArray(ostr.str().c_str());
+        arraySelection->AddArray(ostr.str().c_str());
     }
 
-    partInfoEdges_ += nEdges;
+    arrayRangeEdges_ += nEdges;
 
     if (debug)
     {
         // just for debug info
-        getSelectedArrayEntries(selection);
+        getSelectedArrayEntries(arraySelection);
 
         Info<< "<end> Foam::vtkPV3blockMesh::updateInfoEdges" << endl;
     }
@@ -145,9 +149,9 @@ Foam::vtkPV3blockMesh::vtkPV3blockMesh
     reader_(reader),
     dbPtr_(NULL),
     meshPtr_(NULL),
-    partInfoBlocks_("block"),
-    partInfoEdges_("edges"),
-    partInfoCorners_("corners")
+    arrayRangeBlocks_("block"),
+    arrayRangeEdges_("edges"),
+    arrayRangeCorners_("corners")
 {
     if (debug)
     {
@@ -243,7 +247,7 @@ void Foam::vtkPV3blockMesh::updateInfo()
 
     resetCounters();
 
-    vtkDataArraySelection* partSelection = reader_->GetPartSelection();
+    vtkDataArraySelection* blockSelection = reader_->GetBlockSelection();
     vtkDataArraySelection* edgeSelection = reader_->GetCurvedEdgesSelection();
 
     // enable 'internalMesh' on the first call
@@ -251,33 +255,33 @@ void Foam::vtkPV3blockMesh::updateInfo()
     stringList enabledParts;
     stringList enabledEdges;
     bool firstTime = false;
-    if (!partSelection->GetNumberOfArrays() && !meshPtr_)
+    if (!blockSelection->GetNumberOfArrays() && !meshPtr_)
     {
         firstTime = true;
     }
     else
     {
-        enabledParts = getSelectedArrayEntries(partSelection);
+        enabledParts = getSelectedArrayEntries(blockSelection);
         enabledEdges = getSelectedArrayEntries(edgeSelection);
     }
 
     // Clear current mesh parts list
-    partSelection->RemoveAllArrays();
+    blockSelection->RemoveAllArrays();
     edgeSelection->RemoveAllArrays();
 
     // need a blockMesh
     updateFoamMesh();
 
     // Update mesh parts list
-    updateInfoBlocks();
+    updateInfoBlocks( blockSelection );
 
     // Update curved edges list
-    updateInfoEdges();
+    updateInfoEdges( edgeSelection );
 
     // restore the enabled selections
     if (!firstTime)
     {
-        setSelectedArrayEntries(partSelection, enabledParts);
+        setSelectedArrayEntries(blockSelection, enabledParts);
         setSelectedArrayEntries(edgeSelection, enabledEdges);
     }
 
@@ -337,7 +341,7 @@ void Foam::vtkPV3blockMesh::Update
     reader_->UpdateProgress(0.1);
 
     // Set up mesh parts selection(s)
-    updateBoolListStatus(partStatus_, reader_->GetPartSelection());
+    updateBoolListStatus(blockStatus_, reader_->GetBlockSelection());
 
     // Set up curved edges selection(s)
     updateBoolListStatus(edgeStatus_, reader_->GetCurvedEdgesSelection());
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.H b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.H
index a159b3cba58978185c46eebdfb8d5579996ce2df..656567ebda77899bf6162d345f3aa3ba65890046 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.H
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMesh.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2008-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 2009-2009 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -88,7 +88,7 @@ class vtkPV3blockMesh
     // Private classes
 
         //- Bookkeeping for GUI checklists and the multi-block organization
-        class partInfo
+        class arrayRange
         {
             const char *name_;
             int block_;
@@ -97,11 +97,11 @@ class vtkPV3blockMesh
 
         public:
 
-            partInfo(const char *name, const int blockNo=0)
+            arrayRange(const char *name, const int blockNo=0)
             :
                 name_(name),
                 block_(blockNo),
-                start_(-1),
+                start_(0),
                 size_(0)
             {}
 
@@ -119,21 +119,25 @@ class vtkPV3blockMesh
                 return prev;
             }
 
+            //- Return block name
             const char* name() const
             {
                 return name_;
             }
 
+            //- Return array start index
             int start() const
             {
                 return start_;
             }
 
+            //- Return array end index
             int end() const
             {
                 return start_ + size_;
             }
 
+            //- Return sublist size
             int size() const
             {
                 return size_;
@@ -144,16 +148,10 @@ class vtkPV3blockMesh
                 return !size_;
             }
 
-            void reset()
+            //- Reset the size to zero and optionally assign a new start
+            void reset(const int startAt = 0)
             {
-                start_ = -1;
-                size_ = 0;
-            }
-
-            //- Assign new start and reset the size
-            void operator=(const int i)
-            {
-                start_ = i;
+                start_ = startAt;
                 size_ = 0;
             }
 
@@ -177,22 +175,20 @@ class vtkPV3blockMesh
         blockMesh* meshPtr_;
 
         //- Selected geometrical parts
-        boolList partStatus_;
+        boolList blockStatus_;
 
         //- Selected curved edges
         boolList edgeStatus_;
 
         //- First instance and size of bleckMesh blocks
-        //  used to index into partStatus_
-        partInfo partInfoBlocks_;
+        //  used to index into blockStatus_
+        arrayRange arrayRangeBlocks_;
 
-        //- First instance and size of CurvedEdges
-        //  only partially used
-        partInfo partInfoEdges_;
+        //- First instance and size of CurvedEdges (only partially used)
+        arrayRange arrayRangeEdges_;
 
-        //- First instance and size of block corners
-        //  only partially used
-        partInfo partInfoCorners_;
+        //- First instance and size of block corners (only partially used)
+        arrayRange arrayRangeCorners_;
 
         //- List of point numbers for rendering to window
         List<vtkTextActor*> pointNumberTextActorsPtrs_;
@@ -205,7 +201,7 @@ class vtkPV3blockMesh
         (
             vtkMultiBlockDataSet* output,
             vtkDataSet* dataset,
-            const partInfo&,
+            const arrayRange&,
             const label datasetNo,
             const std::string& datasetName
         );
@@ -215,7 +211,7 @@ class vtkPV3blockMesh
         static vtkDataSet* GetDataSetFromBlock
         (
             vtkMultiBlockDataSet* output,
-            const partInfo&,
+            const arrayRange&,
             const label datasetNo
         );
 
@@ -224,7 +220,7 @@ class vtkPV3blockMesh
         static label GetNumberOfDataSets
         (
             vtkMultiBlockDataSet* output,
-            const partInfo&
+            const arrayRange&
         );
 
         //- Update boolList from GUI selection
@@ -240,10 +236,10 @@ class vtkPV3blockMesh
         // Update information helper functions
 
             //- Internal block info
-            void updateInfoBlocks();
+            void updateInfoBlocks(vtkDataArraySelection*);
 
             //- block curved edges info
-            void updateInfoEdges();
+            void updateInfoEdges(vtkDataArraySelection*);
 
         // Update helper functions
 
@@ -271,7 +267,7 @@ class vtkPV3blockMesh
             static wordHashSet getSelected
             (
                 vtkDataArraySelection*,
-                const partInfo&
+                const arrayRange&
             );
 
             //- Retrieve the current selections
@@ -281,7 +277,7 @@ class vtkPV3blockMesh
             static stringList getSelectedArrayEntries
             (
                 vtkDataArraySelection*,
-                const partInfo&
+                const arrayRange&
             );
 
             //- Set selection(s)
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMeshConvert.C b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMeshConvert.C
index 4f76f5ebf2225f4c4915a3aa352052dc796b1d31..b6858ea3bff74b4c8e7014aaddf7c4f1fea305a5 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMeshConvert.C
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMeshConvert.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2008-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 2009-2009 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -52,9 +52,9 @@ void Foam::vtkPV3blockMesh::convertMeshBlocks
     int& blockNo
 )
 {
-    vtkDataArraySelection* selection = reader_->GetPartSelection();
-    partInfo& selector = partInfoBlocks_;
-    selector.block(blockNo);   // set output block
+    vtkDataArraySelection* selection = reader_->GetBlockSelection();
+    arrayRange& range = arrayRangeBlocks_;
+    range.block(blockNo);   // set output block
     label datasetNo = 0;       // restart at dataset 0
 
     const blockMesh& blkMesh = *meshPtr_;
@@ -70,25 +70,18 @@ void Foam::vtkPV3blockMesh::convertMeshBlocks
 
     for
     (
-        int partId = selector.start();
-        partId < selector.end();
+        int partId = range.start();
+        partId < range.end();
         ++partId, ++blockI
     )
     {
-        if (!partStatus_[partId])
+        if (!blockStatus_[partId])
         {
             continue;
         }
 
         const blockDescriptor& blockDef = blkMesh[blockI].blockDef();
-        word partName("block");
-
-//         // append the (optional) zone name
-//         if (!blockDef.zoneName().empty())
-//         {
-//             partName += " - " + blockDef.zoneName();
-//         }
-//
+
         vtkUnstructuredGrid* vtkmesh = vtkUnstructuredGrid::New();
 
         // Convert Foam mesh vertices to VTK
@@ -123,7 +116,7 @@ void Foam::vtkPV3blockMesh::convertMeshBlocks
 
         AddToBlock
         (
-            output, vtkmesh, selector, datasetNo,
+            output, vtkmesh, range, datasetNo,
             selection->GetArrayName(partId)
         );
 
@@ -152,9 +145,9 @@ void Foam::vtkPV3blockMesh::convertMeshEdges
 )
 {
     vtkDataArraySelection* selection = reader_->GetCurvedEdgesSelection();
-    partInfo& selector = partInfoEdges_;
+    arrayRange& range = arrayRangeEdges_;
 
-    selector.block(blockNo);   // set output block
+    range.block(blockNo);      // set output block
     label datasetNo = 0;       // restart at dataset 0
 
     const blockMesh& blkMesh = *meshPtr_;
@@ -165,8 +158,8 @@ void Foam::vtkPV3blockMesh::convertMeshEdges
 
     for
     (
-        int partId = selector.start();
-        partId < selector.end();
+        int partId = range.start();
+        partId < range.end();
         ++partId, ++edgeI
     )
     {
@@ -187,9 +180,7 @@ void Foam::vtkPV3blockMesh::convertMeshEdges
 
             edgeList blkEdges = blockDef.blockShape().edges();
 
-
             // find the corresponding edge within the block
-
             label foundEdgeI = -1;
             forAll(blkEdges, blkEdgeI)
             {
@@ -236,7 +227,7 @@ void Foam::vtkPV3blockMesh::convertMeshEdges
 
                 AddToBlock
                 (
-                    output, vtkmesh, selector, datasetNo,
+                    output, vtkmesh, range, datasetNo,
                     selection->GetArrayName(partId)
                 );
 
@@ -269,8 +260,8 @@ void Foam::vtkPV3blockMesh::convertMeshCorners
     int& blockNo
 )
 {
-    partInfo& selector = partInfoCorners_;
-    selector.block(blockNo);   // set output block
+    arrayRange& range = arrayRangeCorners_;
+    range.block(blockNo);      // set output block
     label datasetNo = 0;       // restart at dataset 0
 
     const pointField& blockPoints = meshPtr_->blockPointField();
@@ -310,7 +301,11 @@ void Foam::vtkPV3blockMesh::convertMeshCorners
         vtkmesh->SetVerts(vtkcells);
         vtkcells->Delete();
 
-        AddToBlock(output, vtkmesh, selector, datasetNo, partInfoCorners_.name());
+        AddToBlock
+        (
+            output, vtkmesh, range, datasetNo,
+            arrayRangeCorners_.name()
+        );
         vtkmesh->Delete();
 
         datasetNo++;
diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMeshUtils.C b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMeshUtils.C
index bde724d9a7fee2c9d90c18d6768b9b5648ec1501..c02de1d0c8015fabf9f4cb2f9d55b1fdea431053 100644
--- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMeshUtils.C
+++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3blockMeshReader/vtkPV3blockMesh/vtkPV3blockMeshUtils.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2008-2009 OpenCFD Ltd.
+    \\  /    A nd           | Copyright (C) 2009-2009 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -71,12 +71,12 @@ void Foam::vtkPV3blockMesh::AddToBlock
 (
     vtkMultiBlockDataSet* output,
     vtkDataSet* dataset,
-    const partInfo& selector,
+    const arrayRange& range,
     const label datasetNo,
     const std::string& datasetName
 )
 {
-    const int blockNo = selector.block();
+    const int blockNo = range.block();
 
     vtkDataObject* blockDO = output->GetBlock(blockNo);
     vtkMultiBlockDataSet* block = vtkMultiBlockDataSet::SafeDownCast(blockDO);
@@ -112,7 +112,7 @@ void Foam::vtkPV3blockMesh::AddToBlock
         output->GetMetaData(blockNo)->Set
         (
             vtkCompositeDataSet::NAME(),
-            selector.name()
+            range.name()
         );
     }
 
@@ -130,11 +130,11 @@ void Foam::vtkPV3blockMesh::AddToBlock
 vtkDataSet* Foam::vtkPV3blockMesh::GetDataSetFromBlock
 (
     vtkMultiBlockDataSet* output,
-    const partInfo& selector,
+    const arrayRange& range,
     const label datasetNo
 )
 {
-    const int blockNo = selector.block();
+    const int blockNo = range.block();
 
     vtkDataObject* blockDO = output->GetBlock(blockNo);
     vtkMultiBlockDataSet* block = vtkMultiBlockDataSet::SafeDownCast(blockDO);
@@ -152,10 +152,10 @@ vtkDataSet* Foam::vtkPV3blockMesh::GetDataSetFromBlock
 Foam::label Foam::vtkPV3blockMesh::GetNumberOfDataSets
 (
     vtkMultiBlockDataSet* output,
-    const partInfo& selector
+    const arrayRange& range
 )
 {
-    const int blockNo = selector.block();
+    const int blockNo = range.block();
 
     vtkDataObject* blockDO = output->GetBlock(blockNo);
     vtkMultiBlockDataSet* block = vtkMultiBlockDataSet::SafeDownCast(blockDO);
@@ -191,13 +191,13 @@ Foam::wordHashSet Foam::vtkPV3blockMesh::getSelected
 Foam::wordHashSet Foam::vtkPV3blockMesh::getSelected
 (
     vtkDataArraySelection* select,
-    const partInfo& selector
+    const arrayRange& range
 )
 {
     int nElem = select->GetNumberOfArrays();
     wordHashSet selections(2*nElem);
 
-    for (int elemI = selector.start(); elemI < selector.end(); ++elemI)
+    for (int elemI = range.start(); elemI < range.end(); ++elemI)
     {
         if (select->GetArraySetting(elemI))
         {
@@ -251,13 +251,13 @@ Foam::stringList Foam::vtkPV3blockMesh::getSelectedArrayEntries
 Foam::stringList Foam::vtkPV3blockMesh::getSelectedArrayEntries
 (
     vtkDataArraySelection* select,
-    const partInfo& selector
+    const arrayRange& range
 )
 {
-    stringList selections(selector.size());
+    stringList selections(range.size());
     label nElem = 0;
 
-    for (int elemI = selector.start(); elemI < selector.end(); ++elemI)
+    for (int elemI = range.start(); elemI < range.end(); ++elemI)
     {
         if (select->GetArraySetting(elemI))
         {
@@ -270,7 +270,7 @@ Foam::stringList Foam::vtkPV3blockMesh::getSelectedArrayEntries
     if (debug)
     {
         Info<< "available(";
-        for (int elemI = selector.start(); elemI < selector.end(); ++elemI)
+        for (int elemI = range.start(); elemI < range.end(); ++elemI)
         {
             Info<< " \"" << select->GetArrayName(elemI) << "\"";
         }
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_bkup.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_bkup.H
index ce9277dceab5987c27ded660d0be8f36d1d16007..6a47c6ecf29900449c93411bc0f236a43398b257 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_bkup.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_bkup.H
@@ -7,7 +7,7 @@ int USERD_bkup
     int backup_type)
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_bkup" << endl 
+    Info<< "Entering: USERD_bkup" << endl
         << flush;
 #endif
     return Z_ERR;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_exit_routine.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_exit_routine.H
index d00b5de8bbb114d098710e66a0004a3b4894e595..b6fdf9c2c46d7b859f55aa7926a6e5a608aed0bb 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_exit_routine.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_exit_routine.H
@@ -5,7 +5,7 @@ void USERD_exit_routine
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_exit_routine" << endl 
+    Info<< "Entering: USERD_exit_routine" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_border_availability.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_border_availability.H
index 39399cf9eaab248df90a19e18c8332ada08126c8..5ea3202b8ce5d8b72b850148527a927c6b89eb5d 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_border_availability.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_border_availability.H
@@ -8,8 +8,8 @@ int USERD_get_border_availability
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_border_availability for part_number " 
-        << part_number << endl 
+    Info<< "Entering: USERD_get_border_availability for part_number "
+        << part_number << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_border_elements_by_type.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_border_elements_by_type.H
index e4f75704b0a032529934a1e7c19aaa3c52f93529..29536014be42f741099ed1a634a8716cdb7c68f1 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_border_elements_by_type.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_border_elements_by_type.H
@@ -11,7 +11,7 @@ int USERD_get_border_elements_by_type
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_border_elements_by_type" << endl 
+    Info<< "Entering: USERD_get_border_elements_by_type" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_changing_geometry_status.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_changing_geometry_status.H
index 9b0970f3d9044ecf028146e1a363cbfff92c4fbe..2df1e6a7617c6538a944abd17bd7ba764551ad0e 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_changing_geometry_status.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_changing_geometry_status.H
@@ -2,7 +2,7 @@
 int USERD_get_changing_geometry_status(void)
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_changing_geometry_status" << endl << flush;
+    Info<< "Entering: USERD_get_changing_geometry_status" << endl << flush;
 #endif
 
     // Choose the most general option
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_constant_val.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_constant_val.H
index 1b87e2c8a907ff54d9a5721510ede54e3ca02caa..d14dc7a17a5bad0871280153e66098d3feafda9e 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_constant_val.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_constant_val.H
@@ -9,7 +9,7 @@ float USERD_get_constant_val
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_constant_val" << endl << flush;
+    Info<< "Entering: USERD_get_constant_val" << endl << flush;
 #endif
     return 0.0;
 }
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_descrip_lines.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_descrip_lines.H
index 3de57267f0e376a2476e60109a07e820c270d1fe..1076d2de38d8268db29aec707221e5da54daaf70 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_descrip_lines.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_descrip_lines.H
@@ -9,7 +9,7 @@ int USERD_get_descrip_lines
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_descrip_lines" << endl 
+    Info<< "Entering: USERD_get_descrip_lines" << endl
         << flush;
 #endif
 
@@ -24,7 +24,7 @@ int USERD_get_descrip_lines
     }
 
 #ifdef ENSIGHTDEBUG
-    Info << "Leaving: USERD_get_descrip_lines" << endl 
+    Info<< "Leaving: USERD_get_descrip_lines" << endl
         << flush;
 #endif
     return Z_OK;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_element_label_status.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_element_label_status.H
index 3aae59c84e54a0702ced1790612d4c8178d9c47e..d65e7bad70f2d1261c65daa878cd5a7f9769d2ea 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_element_label_status.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_element_label_status.H
@@ -4,7 +4,7 @@
 int USERD_get_element_label_status(void)
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_element_label_status" << endl << flush;
+    Info<< "Entering: USERD_get_element_label_status" << endl << flush;
 #endif
     return TRUE;
 }
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_geom_timeset_number.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_geom_timeset_number.H
index 59dd293f51607f4843cf9ef7da5e047f26d518b6..9b0df36a20d98efcf6ed9ec24d812ef9f5a44f7d 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_geom_timeset_number.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_geom_timeset_number.H
@@ -4,7 +4,7 @@ int USERD_get_geom_timeset_number
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_geom_timeset_number" << endl 
+    Info<< "Entering: USERD_get_geom_timeset_number" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_gold_part_build_info.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_gold_part_build_info.H
index ca8da4727c38987c580690e034236a4d09e60054..3d278c03675119d899014a6dd415d084999a5360 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_gold_part_build_info.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_gold_part_build_info.H
@@ -13,7 +13,7 @@ int USERD_get_gold_part_build_info
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_gold_part_build_info" << endl << flush;
+    Info<< "Entering: USERD_get_gold_part_build_info" << endl << flush;
 #endif
 
     //#   include "checkForNewMesh.H"
@@ -32,7 +32,7 @@ int USERD_get_gold_part_build_info
 
     strncpy(part_descriptions[0], meshName, Z_BUFL);
 
-    for(label i=0; i<nPatches; i++)
+    for (label i=0; i<nPatches; i++)
     {
         word patchName(meshPtr->boundary()[i].name());
         strncpy(part_descriptions[i+1], patchName.c_str(), Z_BUFL);
@@ -93,18 +93,18 @@ int USERD_get_gold_part_build_info
     number_of_elements[0][Z_NFACED] = nFaced;
 
     /*
-    Info << "nTet04 = " << nTet04 << endl;
-    Info << "nPyr05 = " << nPyr05 << endl;
-    Info << "nHex08 = " << nHex08 << endl;
-    Info << "nPen06 = " << nPen06 << endl;
-    Info << "nFaced = " << nFaced << endl;
+    Info<< "nTet04 = " << nTet04 << endl;
+    Info<< "nPyr05 = " << nPyr05 << endl;
+    Info<< "nHex08 = " << nHex08 << endl;
+    Info<< "nPen06 = " << nPen06 << endl;
+    Info<< "nFaced = " << nFaced << endl;
         */
 
     number_of_nodes[0] = meshPtr->nPoints();
 
     const polyBoundaryMesh& bMesh = meshPtr->boundaryMesh();
 
-    for(label i=0; i<nPatches; i++)
+    for (label i=0; i<nPatches; i++)
     {
         label nTri03 = 0;
         label nQuad04 = 0;
@@ -148,7 +148,7 @@ int USERD_get_gold_part_build_info
     }
 
 #ifdef ENSIGHTDEBUG
-    Info << "Leaving: USERD_get_gold_part_build_info" << endl << flush;
+    Info<< "Leaving: USERD_get_gold_part_build_info" << endl << flush;
 #endif
 
     return Z_OK;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_gold_variable_info.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_gold_variable_info.H
index 7a17f74f0fdb52ec23033731e818d26c45bb7215..91c205b0b5b60cc852c45c8e163b64c77c1c7512 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_gold_variable_info.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_gold_variable_info.H
@@ -15,7 +15,7 @@ int USERD_get_gold_variable_info
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_gold_variable_info" << endl 
+    Info<< "Entering: USERD_get_gold_variable_info" << endl
         << flush;
 #endif
 
@@ -112,7 +112,7 @@ int USERD_get_gold_variable_info
     }
 
 #ifdef ENSIGHTDEBUG
-    Info << "Leaving: USERD_get_gold_variable_info" << endl 
+    Info<< "Leaving: USERD_get_gold_variable_info" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_matf_set_info.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_matf_set_info.H
index 87b3af93f4c73a5dd7373599cedefc7cb9baf2e9..8f1b417ee473d348ca5cf9d76d231422a667cc66 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_matf_set_info.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_matf_set_info.H
@@ -6,7 +6,7 @@ int USERD_get_matf_set_info
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_matf_set_info" << endl 
+    Info<< "Entering: USERD_get_matf_set_info" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_matf_var_info.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_matf_var_info.H
index 980415b76edd2d9fb193d6d397fc052ad9c6fd7e..9f4bf9c8cd0296cb75339c571b2ff83e02afc877 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_matf_var_info.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_matf_var_info.H
@@ -7,7 +7,7 @@ int USERD_get_matf_var_info
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_matf_var_info" << endl 
+    Info<< "Entering: USERD_get_matf_var_info" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_maxsize_info.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_maxsize_info.H
index 7c4ef69a4fd06f91e26a2ce00cefdae159743af5..c47d153f9626b5c921675633b7e080c93503e95d 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_maxsize_info.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_maxsize_info.H
@@ -5,10 +5,10 @@ int USERD_get_maxsize_info
     int *max_ijk_dimensions[3]
 )
 {
-    return Z_ERR; 
+    return Z_ERR;
 
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_maxsize_info" << endl;
+    Info<< "Entering: USERD_get_maxsize_info" << endl;
 #endif
 
     label maxNPoints = 0;
@@ -34,10 +34,10 @@ int USERD_get_maxsize_info
         Info<< "Checking time = " << runTimePtr->timeName() << endl;
 
         const cellShapeList& cells = meshPtr->cellShapes();
-        
+
         const label nPoints = meshPtr->nPoints();
         const label nCells  = cells.size();
-        
+
         maxNPoints = max(maxNPoints, nPoints);
 
         for (label n=0; n<nCells;n++)
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_model_extents.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_model_extents.H
index c65fa09691bcb46b25afd43f8638b6157031d43d..b78438ae7d70e36a5b18e2dd3c9b56dcc7c93379 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_model_extents.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_model_extents.H
@@ -7,7 +7,7 @@ int USERD_get_model_extents
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_model_extents" << endl 
+    Info<< "Entering: USERD_get_model_extents" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_name_of_reader.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_name_of_reader.H
index eceaf3cb9c903d9bf20b5eaaef0f6548c3921376..c055407b534cabf180ba87d09a85db9228d63ca8 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_name_of_reader.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_name_of_reader.H
@@ -8,7 +8,7 @@ int USERD_get_name_of_reader
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_name_of_reader" << endl << flush;
+    Info<< "Entering: USERD_get_name_of_reader" << endl << flush;
 #endif
 
     strncpy(reader_name, readerName, Z_MAX_USERD_NAME);
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nfaced_conn.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nfaced_conn.H
index 20e4b4b62bf0048e13d5af6a2185c39d0e046185..436d68d2591796cf55892afdc489faf3f8f97cd4 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nfaced_conn.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nfaced_conn.H
@@ -6,9 +6,9 @@ int USERD_get_nfaced_conn
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_nfaced_conn" 
+    Info<< "Entering: USERD_get_nfaced_conn"
         << ", part_number = " << part_number
-        << endl 
+        << endl
         << flush;
 #endif
 
@@ -36,11 +36,11 @@ int USERD_get_nfaced_conn
                 {}
                 else
                 {
-                    for(label i=0; i<nFacesInCell; i++)
+                    for (label i=0; i<nFacesInCell; i++)
                     {
                         label facei = cells[n][i];
                         label nPoints = faces[facei].size();
-                        for(label j=0; j<nPoints; j++)
+                        for (label j=0; j<nPoints; j++)
                         {
                             nfaced_conn_array[nPoint++] = faces[facei][j] + 1;
                         }
@@ -49,22 +49,22 @@ int USERD_get_nfaced_conn
             }
             else
             {
-                for(label i=0; i<nFacesInCell; i++)
+                for (label i=0; i<nFacesInCell; i++)
                 {
                     label facei = cells[n][i];
                     label nPoints = faces[facei].size();
-                    for(label j=0; j<nPoints; j++)
+                    for (label j=0; j<nPoints; j++)
                     {
                         nfaced_conn_array[nPoint++] = faces[facei][j] + 1;
                     }
                 }
             }
         }
-        
+
     }
     else if (part_number < nPatches+2)
     {
-        
+
     }
     else
     {
@@ -72,7 +72,7 @@ int USERD_get_nfaced_conn
     }
 
 #ifdef ENSIGHTDEBUG
-    Info << "Exiting: USERD_get_nfaced_conn" << endl 
+    Info<< "Exiting: USERD_get_nfaced_conn" << endl
         << flush;
 #endif
     return Z_OK;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nfaced_nodes_per_face.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nfaced_nodes_per_face.H
index 9fd57aa82ab9e52deb519ba86070d20745f2b5cb..335f928516a0f92fc2aa0b0f7f2df0fc5aaa151f 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nfaced_nodes_per_face.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nfaced_nodes_per_face.H
@@ -6,9 +6,9 @@ int USERD_get_nfaced_nodes_per_face
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_nfaced_nodes_per_face" 
+    Info<< "Entering: USERD_get_nfaced_nodes_per_face"
         << ", part_number = " << part_number
-        << endl 
+        << endl
         << flush;
 #endif
 
@@ -38,7 +38,7 @@ int USERD_get_nfaced_nodes_per_face
                 {}
                 else
                 {
-                    for(label i=0; i<nFacesInCell; i++)
+                    for (label i=0; i<nFacesInCell; i++)
                     {
                         label facei = cells[n][i];
                         label nFacePoints = faces[facei].size();
@@ -48,7 +48,7 @@ int USERD_get_nfaced_nodes_per_face
             }
             else
             {
-                for(label i=0; i<nFacesInCell; i++)
+                for (label i=0; i<nFacesInCell; i++)
                 {
                     label facei = cells[n][i];
                     label nFacePoints = faces[facei].size();
@@ -56,7 +56,7 @@ int USERD_get_nfaced_nodes_per_face
                 }
             }
         }
-        
+
     }
     else if (part_number < nPatches+2)
     {
@@ -67,7 +67,7 @@ int USERD_get_nfaced_nodes_per_face
         return Z_ERR;
     }
 #ifdef ENSIGHTDEBUG
-    Info << "Exiting: USERD_get_nfaced_nodes_per_face" << endl 
+    Info<< "Exiting: USERD_get_nfaced_nodes_per_face" << endl
         << flush;
 #endif
     return Z_OK;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_node_label_status.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_node_label_status.H
index f45f20e63abd809c7a3c6bd11cdaf8800dad67dc..65791f70f7256e5983fe4bdf6d36f71b54a04cc2 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_node_label_status.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_node_label_status.H
@@ -4,7 +4,7 @@
 int USERD_get_node_label_status(void)
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_node_label_status" << endl << flush;
+    Info<< "Entering: USERD_node_label_status" << endl << flush;
 #endif
 
     return TRUE;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nsided_conn.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nsided_conn.H
index 370fb341adb77210fe88ddb2e9ac768e844fe866..c99361c3fb077e25fee9eab4e8077e717be36e3d 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nsided_conn.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_nsided_conn.H
@@ -2,18 +2,18 @@
 int USERD_get_nsided_conn
 (
     int part_number,
-    int *nsided_conn_array 
+    int *nsided_conn_array
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_nsided_conn" 
+    Info<< "Entering: USERD_get_nsided_conn"
         << ", part_number = " << part_number
-        << endl 
+        << endl
         << flush;
 #endif
     if (part_number == 1)
     {
-        Info << "************* EEEEEEEEERRRRRRRRRRRRRRRRRR *************** " << endl << flush;
+        Info<< "************* EEEEEEEEERRRRRRRRRRRRRRRRRR *************** " << endl << flush;
 
     }
     else if (part_number < nPatches+2)
@@ -30,7 +30,7 @@ int USERD_get_nsided_conn
             label nPoints = bMesh[patchi][facei].size();
             if ((nPoints != 3) && (nPoints != 4))
             {
-                for(label i=0; i<nPoints; i++)
+                for (label i=0; i<nPoints; i++)
                 {
                     nsided_conn_array[np++] = bMesh[patchi][facei][i] + 1;
                 }
@@ -42,7 +42,7 @@ int USERD_get_nsided_conn
         return Z_ERR;
     }
 #ifdef ENSIGHTDEBUG
-    Info << "Exiting: USERD_get_nsided_conn" << endl 
+    Info<< "Exiting: USERD_get_nsided_conn" << endl
         << flush;
 #endif
     return Z_OK;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_num_of_time_steps.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_num_of_time_steps.H
index f780b95c40ff5cb0053b97ae92adc834346d49d1..37a1a5c06e00f54e94f085332cdc59def3702e3c 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_num_of_time_steps.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_num_of_time_steps.H
@@ -7,7 +7,7 @@ int USERD_get_num_of_time_steps
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_num_of_time_steps" << endl 
+    Info<< "Entering: USERD_get_num_of_time_steps" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_files_in_dataset.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_files_in_dataset.H
index ac426a7ee0bf8894fd882fedaab0fce544c4af51..e2246d27daa838dacb82e533372200132f7e6936 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_files_in_dataset.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_files_in_dataset.H
@@ -1,10 +1,10 @@
 //======================================================================
-// 
+//
 //======================================================================
 int USERD_get_number_of_files_in_dataset(void)
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_number_of_files_in_dataset" << endl << flush;
+    Info<< "Entering: USERD_get_number_of_files_in_dataset" << endl << flush;
 #endif
 
     // use 1 insted of 0 which gives an un-necessary warning.
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_material_sets.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_material_sets.H
index 39feab9bce5853bae6b16041a7acfc278db35575..f8a0477645515bcae9742a5c772a4556df075bce 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_material_sets.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_material_sets.H
@@ -1,14 +1,14 @@
 
 int USERD_get_number_of_material_sets
-( 
-    void 
+(
+    void
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_number_of_material_sets" << endl 
+    Info<< "Entering: USERD_get_number_of_material_sets" << endl
         << flush;
 #endif
 
     // No materials
-    return 0; 
+    return 0;
 }
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_materials.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_materials.H
index 8e97d2f1c6edef64921ead7235f3948582f0b93e..98162b2e11f45d727fd6d6cd4d2d0a0bb67d019c 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_materials.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_materials.H
@@ -5,7 +5,7 @@ int USERD_get_number_of_materials
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_number_of_materials" << endl 
+    Info<< "Entering: USERD_get_number_of_materials" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_model_parts.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_model_parts.H
index e7a68d2c3a9da73d49daab321221af81efd33e98..cef0a64b1cd10403128440ccdecf6d8d0a51a275 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_model_parts.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_model_parts.H
@@ -2,7 +2,7 @@
 int USERD_get_number_of_model_parts(void)
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_number_of_model_parts" << endl << flush;
+    Info<< "Entering: USERD_get_number_of_model_parts" << endl << flush;
 #endif
 
     return Numparts_available;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_variables.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_variables.H
index b858a8017844ece67f0cbff5f735fd973a25e389..acb342135714809739f7724dc0f1dab0a55bae88 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_variables.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_of_variables.H
@@ -2,7 +2,7 @@
 int USERD_get_number_of_variables(void)
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_number_of_variables" << endl << flush;
+    Info<< "Entering: USERD_get_number_of_variables" << endl << flush;
 #endif
 
     return Num_variables;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_timesets.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_timesets.H
index 1844d71e6420a8287ebe1b7a8822d2e023aaf934..e4fc922fbd5d6a088a31a10fa58a4a896097d6f1 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_timesets.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_number_timesets.H
@@ -4,7 +4,7 @@ int USERD_get_number_of_timesets
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_number_of_timesets" << endl 
+    Info<< "Entering: USERD_get_number_of_timesets" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_coords.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_coords.H
index 54ab4da3af1d6b3bb67971a44448ac93fb49520e..68ebbf768e5fab26c2a1b0efcf1ff4ddb043bab2 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_coords.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_coords.H
@@ -8,7 +8,7 @@ int USERD_get_part_coords
 {
 
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_part_coords" << endl << 
+    Info<< "Entering: USERD_get_part_coords" << endl <<
         "part_number = " << part_number << endl << flush;
 #endif
 
@@ -19,7 +19,7 @@ int USERD_get_part_coords
 
         const vectorField& points = meshPtr->points();
         label nPoints = points.size();
-        
+
         for (label indx=0; indx<nPoints; indx++)
         {
             coord_array[0][indx+1] = (float)points[indx].x();
@@ -36,7 +36,7 @@ int USERD_get_part_coords
         const polyBoundaryMesh& bMesh = meshPtr->boundaryMesh();
         const vectorField& points = bMesh[patchi].points();
         label nPoints = points.size();
-        
+
         for (label indx=0; indx<nPoints; indx++)
         {
             coord_array[0][indx+1] = (float)points[indx].x();
@@ -70,7 +70,7 @@ int USERD_get_part_coords
     }
 
 #ifdef ENSIGHTDEBUG
-    Info << "Leaving: USERD_get_part_coords" << endl << flush;
+    Info<< "Leaving: USERD_get_part_coords" << endl << flush;
 #endif
 
     return Z_OK;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_element_ids_by_type.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_element_ids_by_type.H
index 67c3478880a2a571e42ce6aeff068c8d5c105369..4b82c06f33a1d54c328d0defa88296f52902aae8 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_element_ids_by_type.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_element_ids_by_type.H
@@ -7,8 +7,8 @@ int USERD_get_part_element_ids_by_type
 {
 
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_part_element_ids_by_type" << endl 
-        << "part_number = " << part_number << endl 
+    Info<< "Entering: USERD_get_part_element_ids_by_type" << endl
+        << "part_number = " << part_number << endl
         << "element_type = " << element_type << endl << flush;
 #endif
 
@@ -31,7 +31,7 @@ int USERD_get_part_element_ids_by_type
             {
                 label nFaces = cells[n].size();
                 labelList points = cellShapes[n];
-                
+
                 if ((nFaces == 6) && (points.size() == 8))
                 {
                     elemid_array[nHex08++] = n + 1;
@@ -44,7 +44,7 @@ int USERD_get_part_element_ids_by_type
             {
                 label nFaces = cells[n].size();
                 labelList points = cellShapes[n];
-                
+
                 if ((nFaces == 5) && (points.size() == 6))
                 {
                     elemid_array[nPen06++] = n + 1;
@@ -57,7 +57,7 @@ int USERD_get_part_element_ids_by_type
             {
                 label nFaces = cells[n].size();
                 labelList points = cellShapes[n];
-                
+
                 if ((nFaces == 5) && (points.size() == 5))
                 {
                     elemid_array[nPyr05++] = n + 1;
@@ -70,7 +70,7 @@ int USERD_get_part_element_ids_by_type
             {
                 label nFaces = cells[n].size();
                 labelList points = cellShapes[n];
-                
+
                 if ((nFaces == 4) && (points.size() == 4))
                 {
                     elemid_array[nTet04++] = n + 1;
@@ -101,7 +101,7 @@ int USERD_get_part_element_ids_by_type
     }
     else if (part_number < nPatches+2)
     {
-     
+
         const polyBoundaryMesh& bMesh = meshPtr->boundaryMesh();
         label patchi = part_number - 2;
 
@@ -127,7 +127,7 @@ int USERD_get_part_element_ids_by_type
                 {
                     elemid_array[nQuad04++] = facei + 1;
                 }
-            }            
+            }
         }
         else if (element_type == Z_NSIDED)
         {
@@ -155,7 +155,7 @@ int USERD_get_part_element_ids_by_type
     }
 
 #ifdef ENSIGHTDEBUG
-    Info << "Leaving: USERD_get_part_element_ids_by_type" << endl << flush;
+    Info<< "Leaving: USERD_get_part_element_ids_by_type" << endl << flush;
 #endif
 
     return Z_OK;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_elements_by_type.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_elements_by_type.H
index d8713a8224c171b1585dd78c8a0f14916b13c02d..d90f3643fc7aa8d4de4e143f265f49fafe855e1a 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_elements_by_type.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_elements_by_type.H
@@ -11,47 +11,47 @@ int USERD_get_part_elements_by_type
         << "element_type = " << element_type;
     if (element_type == Z_HEX08)
     {
-        Info << " Z_HEX08";
+        Info<< " Z_HEX08";
     }
     else if (element_type == Z_PEN06)
     {
-        Info << " Z_PEN06";
+        Info<< " Z_PEN06";
     }
     else if (element_type == Z_PYR05)
     {
-        Info << " Z_PYR05";
+        Info<< " Z_PYR05";
     }
     else if (element_type == Z_TET04)
     {
-        Info << " Z_TET04";
+        Info<< " Z_TET04";
     }
     else if (element_type == Z_TRI03)
     {
-        Info << " Z_TRI03";
+        Info<< " Z_TRI03";
     }
     else if (element_type == Z_QUA04)
     {
-        Info << " Z_QUA04";
+        Info<< " Z_QUA04";
     }
     else if (element_type == Z_NFACED)
     {
-        Info << " Z_NFACED";
+        Info<< " Z_NFACED";
     }
     else if (element_type == Z_NSIDED)
     {
-        Info << " Z_NSIDED";
+        Info<< " Z_NSIDED";
     }
     else
     {
-        Info << " unknown";
+        Info<< " unknown";
     }
-    Info << endl << flush;
+    Info<< endl << flush;
 #   endif
 
     if (part_number == 1)
     {
         const cellShapeList& cellShapes = meshPtr->cellShapes();
-        
+
         //================================
         // hexahedron
         //================================
@@ -64,7 +64,7 @@ int USERD_get_part_elements_by_type
             {
                 const cellShape& cellShape = cellShapes[celli];
                 const cellModel& cellModel = cellShape.model();
-                
+
                 if (cellModel == hex)
                 {
                     forAll(cellShape, ip)
@@ -87,7 +87,7 @@ int USERD_get_part_elements_by_type
             {
                 const cellShape& cellShape = cellShapes[celli];
                 const cellModel& cellModel = cellShape.model();
-                
+
                 if (cellModel == prism)
                 {
                     forAll(cellShape, ip)
@@ -110,7 +110,7 @@ int USERD_get_part_elements_by_type
             {
                 const cellShape& cellShape = cellShapes[celli];
                 const cellModel& cellModel = cellShape.model();
-                
+
                 if (cellModel == pyr)
                 {
                     forAll(cellShape, ip)
@@ -133,7 +133,7 @@ int USERD_get_part_elements_by_type
             {
                 const cellShape& cellShape = cellShapes[celli];
                 const cellModel& cellModel = cellShape.model();
-                
+
                 if (cellModel == tet)
                 {
                     forAll(cellShape, ip)
@@ -193,7 +193,7 @@ int USERD_get_part_elements_by_type
                 label nPoints = bMesh[patchi][n].size();
                 if (nPoints == 3)
                 {
-                    for(label i=0; i<nPoints; i++)
+                    for (label i=0; i<nPoints; i++)
                     {
                         label ip = bMesh[patchi][n][i];
                         conn_array[nTri03][i] = ip + 1;
@@ -209,7 +209,7 @@ int USERD_get_part_elements_by_type
                 label nPoints = bMesh[patchi][n].size();
                 if (nPoints == 4)
                 {
-                    for(label i=0; i<nPoints; i++)
+                    for (label i=0; i<nPoints; i++)
                     {
                         label ip = bMesh[patchi][n][i];
                         conn_array[nQuad04][i] = ip + 1;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_node_ids.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_node_ids.H
index 3ee4feff131851d762936f679785e5fabf8c6d26..c05af41ccd674ead3f2058c7c9938451a26a60a4 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_node_ids.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_node_ids.H
@@ -5,8 +5,8 @@ int USERD_get_part_node_ids
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_part_node_ids" << endl 
-        << "part_number = " << part_number << endl 
+    Info<< "Entering: USERD_get_part_node_ids" << endl
+        << "part_number = " << part_number << endl
         << flush;
 #endif
 
@@ -25,7 +25,7 @@ int USERD_get_part_node_ids
         const vectorField& points = bMesh[patchi].points();
 
         label nPoints = points.size();
-        
+
         for (label indx=0; indx<nPoints; indx++)
         {
             nodeid_array[indx] = indx + 1;
@@ -52,7 +52,7 @@ int USERD_get_part_node_ids
     }
 
 #ifdef ENSIGHTDEBUG
-    Info << "Leaving: USERD_get_part_node_ids" << endl 
+    Info<< "Leaving: USERD_get_part_node_ids" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_reader_release.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_reader_release.H
index 3a75b16675db1a99afbd93ffaf0fb057cad54a73..5ebd4425cb76f5894fde7989ffeb1e6af4b3bcc9 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_reader_release.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_reader_release.H
@@ -5,13 +5,13 @@ int USERD_get_reader_release
 {
 
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_reader_release" << endl;
+    Info<< "Entering: USERD_get_reader_release" << endl;
 #endif
 
     strncpy(release_number, Foam::FOAMbuild, Z_MAX_USERD_NAME);
 
 #ifdef ENSIGHTDEBUG
-    Info << "Leaving: USERD_get_reader_release" << endl;
+    Info<< "Leaving: USERD_get_reader_release" << endl;
 #endif
 
     return Z_OK;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_reader_version.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_reader_version.H
index 7c8206664bd524ff83b905391d24fb19f8dae418..a8fd102fe3b6fc380123b6fc20c00618c0622673 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_reader_version.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_reader_version.H
@@ -5,13 +5,13 @@ int USERD_get_reader_version
 {
 
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_reader_version" << endl;
+    Info<< "Entering: USERD_get_reader_version" << endl;
 #endif
 
     strncpy(version_number, readerVersion, Z_MAX_USERD_NAME);
 
 #ifdef ENSIGHTDEBUG
-    Info << "Leaving: USERD_get_reader_version" << endl;
+    Info<< "Leaving: USERD_get_reader_version" << endl;
 #endif
 
     return Z_OK;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_sol_times.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_sol_times.H
index dcc64822897df9246929b025bf1e64e61167673d..223b0c2164af3f96c5764d33e0378bacae6c7948 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_sol_times.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_sol_times.H
@@ -29,7 +29,7 @@ int USERD_get_sol_times
         {
             solution_times[n] += addCAD;
 
-            Info << "Time[" << n << "] = " << timeDirs[n+1].value()
+            Info<< "Time[" << n << "] = " << timeDirs[n+1].value()
                 << " was corrected to " << solution_times[n]  << endl;
         }
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_var_by_component.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_var_by_component.H
index bf811b73220d954f72cae8b1afb9986c661024a0..89c0140b4a8087ee1a6efd51c465466c0026ce88 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_var_by_component.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_var_by_component.H
@@ -10,7 +10,7 @@ int USERD_get_var_by_component
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_var_by_component" << endl 
+    Info<< "Entering: USERD_get_var_by_component" << endl
         << "which_variable = " << which_variable << endl
         << "which_part = " << which_part << endl
         << "var_type = " << var_type << endl
@@ -32,7 +32,7 @@ int USERD_get_var_by_component
     {
         if (which_part == 1)
         {
-#           include "getFieldScalar.H"            
+#           include "getFieldScalar.H"
         }
         else if (which_part < nPatches+2)
         {
@@ -51,7 +51,7 @@ int USERD_get_var_by_component
     {
         if (which_part == 1)
         {
-#           include "getFieldVector.H"            
+#           include "getFieldVector.H"
         }
         else if (which_part < nPatches+2)
         {
@@ -70,10 +70,10 @@ int USERD_get_var_by_component
     else if (var_type == Z_TENSOR9)
     {
         // all tensor are treated as asymmetric tensors here
-        
+
         if (which_part == 1)
         {
-#           include "getFieldTensor.H"            
+#           include "getFieldTensor.H"
         }
         else if (which_part < nPatches+2)
         {
@@ -89,13 +89,13 @@ int USERD_get_var_by_component
         }
 
     }
-    else 
+    else
     {
         return Z_UNDEF;
     }
 
 #ifdef ENSIGHTDEBUG
-    Info << "Leaving: USERD_get_var_by_component" << endl 
+    Info<< "Leaving: USERD_get_var_by_component" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_var_value_at_specific.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_var_value_at_specific.H
index d9ea31f4507e8ec3e08a73f91ae072706454a1d2..d569726f6a30197d01ee47d6a63a9e2e6ab6a897 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_var_value_at_specific.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_var_value_at_specific.H
@@ -11,7 +11,7 @@ int USERD_get_var_value_at_specific
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_get_var_value_at_specific" << endl 
+    Info<< "Entering: USERD_get_var_value_at_specific" << endl
         << flush;
 #endif
     // Not sure if it is 0 or 1 based
@@ -63,7 +63,7 @@ int USERD_get_var_value_at_specific
 
 
 #ifdef ENSIGHTDEBUG
-    Info << "Leaving: USERD_get_var_value_at_specific" << endl 
+    Info<< "Leaving: USERD_get_var_value_at_specific" << endl
         << flush;
 #endif
     return Z_OK;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_load_matf_data.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_load_matf_data.H
index 2c03738bd5f922dbc8c707427bbfa8fdc20c555a..c89cc5f253cfcce257f3740029d5eaf176c21780 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_load_matf_data.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_load_matf_data.H
@@ -6,11 +6,11 @@ int USERD_load_matf_data
     int wtyp,
     int mat_type,
     int *ids_list,
-    float *val_list 
+    float *val_list
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_load_matf_data" << endl 
+    Info<< "Entering: USERD_load_matf_data" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_filenames.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_filenames.H
index 712ce53b869072019ca37fa40c749d35197b1b2f..ccaad12cb3af8febdbfd6c759b5ae5b6efe8e4d8 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_filenames.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_filenames.H
@@ -10,7 +10,7 @@ int USERD_set_filenames
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_set_filenames" << endl << flush;
+    Info<< "Entering: USERD_set_filenames" << endl << flush;
 #endif
 
     char tmp[100];
@@ -87,7 +87,7 @@ int USERD_set_filenames
 
     // set the number of fields and store their names
     // a valid field must exist for all time-steps
-    runTime.setTime(timeDirs[timeDirs.size()-1], timeDirs.size()-1);
+    runTime.setTime(timeDirs.last(), timeDirs.size()-1);
     IOobjectList objects(*meshPtr, runTime.timeName());
 
     fieldNames = objects.names();
@@ -173,7 +173,7 @@ int USERD_set_filenames
 
     if (sprayHeader.headerOk())
     {
-        Info << "[Found lagrangian]" << endl;
+        Info<< "[Found lagrangian]" << endl;
 
         delete sprayPtr;
 
@@ -201,7 +201,7 @@ int USERD_set_filenames
     Numparts_available = Num_unstructured_parts + Num_structured_parts + nPatches;
 
 #ifdef ENSIGHTDEBUG
-    Info << "Leaving: USERD_set_filenames" << endl << flush;
+    Info<< "Leaving: USERD_set_filenames" << endl << flush;
 #endif
 
     return Z_OK;
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_server_number.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_server_number.H
index 3918280b95fd3a61bd0634b22d404fe439a2336d..f0ff4b24fceb4c348f479f20316d597b318e8660 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_server_number.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_server_number.H
@@ -5,7 +5,7 @@ void USERD_set_server_number
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_set_server_number" << endl 
+    Info<< "Entering: USERD_set_server_number" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_time_set_and_step.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_time_set_and_step.H
index 5e4c5815323af4948db69d381d5e37483bbb0185..5459f67ba6b71e6e02ad04571aa2ba148050e92f 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_time_set_and_step.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_time_set_and_step.H
@@ -6,7 +6,7 @@ void USERD_set_time_set_and_step
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_set_time_set_and_step" << endl << flush;
+    Info<< "Entering: USERD_set_time_set_and_step" << endl << flush;
 #endif
     // update the global pointers and variables
     // to the current time-step
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_size_matf_data.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_size_matf_data.H
index 85cdcfab5c231bd2d2811884eedf34f7bef18ccb..c48fa13bfb85f1ddfdb3c9c453b17876abe7415a 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_size_matf_data.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_size_matf_data.H
@@ -5,11 +5,11 @@ int USERD_size_matf_data
     int part_id,
     int wtyp,
     int mat_type,
-    int *matf_size 
+    int *matf_size
 )
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_size_matf_data" << endl 
+    Info<< "Entering: USERD_size_matf_data" << endl
         << flush;
 #endif
 
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_stop_part_building.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_stop_part_building.H
index 13ac17682e4d25a503945b1db0f431aeacdd0070..c6262b8ee1375a8aafd31981ac67ba5b758cedfd 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_stop_part_building.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_stop_part_building.H
@@ -2,7 +2,7 @@
 void USERD_stop_part_building(void)
 {
 #ifdef ENSIGHTDEBUG
-    Info << "Entering: USERD_stop_part_building" << endl << flush;
+    Info<< "Entering: USERD_stop_part_building" << endl << flush;
 #endif
 
 }
diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/getLagrangianScalar.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/getLagrangianScalar.H
index 39ccf6c07f288b2003285d8baedf5adde265e15f..3c1d5f84cb8a8211d7621986b439fb37167c013a 100644
--- a/applications/utilities/postProcessing/graphics/ensightFoamReader/getLagrangianScalar.H
+++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/getLagrangianScalar.H
@@ -29,7 +29,7 @@ if (nVar >= 0)
 }
 else
 {
-    // Info << "getLagrangianScalar: nVar = " << nVar << endl;
+    // Info<< "getLagrangianScalar: nVar = " << nVar << endl;
     return Z_UNDEF;
 }
 
diff --git a/applications/utilities/postProcessing/graphics/fieldview9Reader/Allwmake b/applications/utilities/postProcessing/graphics/fieldview9Reader/Allwmake
index a2dc313fb1957b75938552cc1dd23cc62bef0c8b..e4825541df7abca62ba2b230030f6046cef7a2e2 100755
--- a/applications/utilities/postProcessing/graphics/fieldview9Reader/Allwmake
+++ b/applications/utilities/postProcessing/graphics/fieldview9Reader/Allwmake
@@ -6,3 +6,5 @@
 # then
 #    wmake fieldview9Reader
 # fi
+
+# ----------------------------------------------------------------- end-of-file
diff --git a/applications/utilities/postProcessing/graphics/fieldview9Reader/fieldview9Reader.C b/applications/utilities/postProcessing/graphics/fieldview9Reader/fieldview9Reader.C
index 17f1dfcb2eec7d1172caa099e4f5b9d519b44322..a658631a9f1b9793c27c803c0c89f3afa324b657 100644
--- a/applications/utilities/postProcessing/graphics/fieldview9Reader/fieldview9Reader.C
+++ b/applications/utilities/postProcessing/graphics/fieldview9Reader/fieldview9Reader.C
@@ -314,7 +314,7 @@ static void storeScalarField
         Info<< "Storing " << nTotPoints << " of dummy values of " << fieldName
             << endl;
 
-        for(label i = 0; i < nPoints; i++)
+        for (label i = 0; i < nPoints; i++)
         {
             vars[pointI++] = 0.0;
         }
@@ -388,7 +388,7 @@ static void storeVectorField
 
         for (direction d = 0; d < vector::nComponents; d++)
         {
-            for(label i = 0; i < nPoints; i++)
+            for (label i = 0; i < nPoints; i++)
             {
                 vars[pointI++] = 0.0;
             }
diff --git a/applications/utilities/postProcessing/lagrangian/particleTracks/particleTracks.C b/applications/utilities/postProcessing/lagrangian/particleTracks/particleTracks.C
index 3ad01ef870cbed3bad0679237c047cff41b22df7..1f58708d283aaab20e2ebf128e6e2f918a6b23f0 100644
--- a/applications/utilities/postProcessing/lagrangian/particleTracks/particleTracks.C
+++ b/applications/utilities/postProcessing/lagrangian/particleTracks/particleTracks.C
@@ -103,7 +103,7 @@ int main(int argc, char *argv[])
     {
         startIds[i+1] += startIds[i] + numIds[i];
     }
-    label nParticle = startIds[startIds.size()-1] + numIds[startIds.size()-1];
+    label nParticle = startIds.last() + numIds[startIds.size()-1];
 
 
 
diff --git a/applications/utilities/postProcessing/miscellaneous/engineCompRatio/engineCompRatio.C b/applications/utilities/postProcessing/miscellaneous/engineCompRatio/engineCompRatio.C
index 65356b382b26678e2db9db3a7d3ce511ce61972f..08ec6431467fb951052a0ad78a7ae3a161a7a4ab 100644
--- a/applications/utilities/postProcessing/miscellaneous/engineCompRatio/engineCompRatio.C
+++ b/applications/utilities/postProcessing/miscellaneous/engineCompRatio/engineCompRatio.C
@@ -83,7 +83,7 @@ int main(int argc, char *argv[])
     Info<< "\nVmax = " << Vmax;
     Info<< ", Vmin = " << Vmin << endl;
     Info<< "Vmax/Vmin = " << Vmax/Vmin << endl;
-    Info<< "\nEnd" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfPlot.C b/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfPlot.C
index 09e85cb6492084eef0cfeb2729cd10ccfae4d976..3347e4dcdb5a074dda8bffeef66dc29da376b864 100644
--- a/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfPlot.C
+++ b/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfPlot.C
@@ -77,7 +77,7 @@ int main(int argc, char *argv[])
 
     makeGraph(x, samples, p->type(), pdfPath, runTime.graphFormat());
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/postProcessing/miscellaneous/postChannel/postChannel.C b/applications/utilities/postProcessing/miscellaneous/postChannel/postChannel.C
index 559e769cf1c293e3de4ca34a1ce4751ad72de5c9..53e198c8d980d94249e3b937827ed954faae03ae 100644
--- a/applications/utilities/postProcessing/miscellaneous/postChannel/postChannel.C
+++ b/applications/utilities/postProcessing/miscellaneous/postChannel/postChannel.C
@@ -90,7 +90,7 @@ int main(int argc, char *argv[])
 #       include "collapse.H"
     }
 
-    Info<< "\nEnd" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/postProcessing/miscellaneous/writeCellCentres/writeCellCentres.C b/applications/utilities/postProcessing/miscellaneous/writeCellCentres/writeCellCentres.C
index bc26ec509fbe6cc9a8dca2792aeef1373c2dccce..cc4a69944ea39226540506981ddcbcd36f45d478 100644
--- a/applications/utilities/postProcessing/miscellaneous/writeCellCentres/writeCellCentres.C
+++ b/applications/utilities/postProcessing/miscellaneous/writeCellCentres/writeCellCentres.C
@@ -101,7 +101,7 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info<< "\nEnd" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/postProcessing/scalarField/pPrime2/pPrime2.C b/applications/utilities/postProcessing/scalarField/pPrime2/pPrime2.C
index 54a7b53c461a55f77fc3a8d698bb89dce87aeac4..0e12decde29a7fe48ac4d10f747fbe1b629364b6 100644
--- a/applications/utilities/postProcessing/scalarField/pPrime2/pPrime2.C
+++ b/applications/utilities/postProcessing/scalarField/pPrime2/pPrime2.C
@@ -47,7 +47,7 @@ int main(int argc, char *argv[])
 
 #   include "createMesh.H"
 
-    runTime.setTime(timeDirs[timeDirs.size()-1], timeDirs.size()-1);
+    runTime.setTime(timeDirs.last(), timeDirs.size()-1);
 
     volScalarField pMean
     (
diff --git a/applications/utilities/postProcessing/velocityField/Lambda2/Lambda2.C b/applications/utilities/postProcessing/velocityField/Lambda2/Lambda2.C
index d60f18fdafa6aab0b2e2fef64e6db352b6d768ef..84ef11619435f26b4dfee189dae251909a5a81c4 100644
--- a/applications/utilities/postProcessing/velocityField/Lambda2/Lambda2.C
+++ b/applications/utilities/postProcessing/velocityField/Lambda2/Lambda2.C
@@ -72,7 +72,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
             -eigenValues(SSplusWW)().component(vector::Y)
         );
 
-        Info << "    Writing -Lambda2" << endl;
+        Info<< "    Writing -Lambda2" << endl;
         Lambda2.write();
     }
     else
diff --git a/applications/utilities/postProcessing/velocityField/Pe/Pe.C b/applications/utilities/postProcessing/velocityField/Pe/Pe.C
index 27a4576b6f5e522aff5dab6c0afa2822c6c7e44f..68402834e809760f5a8ff7454f0371144cea515b 100644
--- a/applications/utilities/postProcessing/velocityField/Pe/Pe.C
+++ b/applications/utilities/postProcessing/velocityField/Pe/Pe.C
@@ -351,7 +351,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
         }
         */
 
-        Info << "Pe max : " << max(PePtr()).value() << endl;
+        Info<< "Pe max : " << max(PePtr()).value() << endl;
 
         if (writeResults)
         {
diff --git a/applications/utilities/postProcessing/velocityField/streamFunction/streamFunction.C b/applications/utilities/postProcessing/velocityField/streamFunction/streamFunction.C
index 44ab386d9fa5b5c1682eab319aa28c72b30b0b6e..2b4e3ce58d9809cdedd1b92ac4c268c73ed277b3 100644
--- a/applications/utilities/postProcessing/velocityField/streamFunction/streamFunction.C
+++ b/applications/utilities/postProcessing/velocityField/streamFunction/streamFunction.C
@@ -446,7 +446,7 @@ int main(int argc, char *argv[])
                      }
                 } while (!finished);
 
-                Info << endl;
+                Info<< endl;
             } while (!finished);
 
             streamFunction.boundaryField() = 0.0;
diff --git a/applications/utilities/postProcessing/wall/yPlusRAS/yPlusRAS.C b/applications/utilities/postProcessing/wall/yPlusRAS/yPlusRAS.C
index a11404646ca18bfe4f6ef7511753ee1899b6c0ef..a71e0fb1d2527f8f690f603a1ea4e4ca942d12ff 100644
--- a/applications/utilities/postProcessing/wall/yPlusRAS/yPlusRAS.C
+++ b/applications/utilities/postProcessing/wall/yPlusRAS/yPlusRAS.C
@@ -126,7 +126,7 @@ void calcCompressibleYPlus
         return;
     }
 
-    Info << "Reading field rho\n" << endl;
+    Info<< "Reading field rho\n" << endl;
     volScalarField rho(rhoHeader, mesh);
 
     #include "compressibleCreatePhi.H"
@@ -236,7 +236,7 @@ int main(int argc, char *argv[])
 
         if (UHeader.headerOk())
         {
-            Info << "Reading field U\n" << endl;
+            Info<< "Reading field U\n" << endl;
             volVectorField U(UHeader, mesh);
 
             if (compressible)
diff --git a/applications/utilities/preProcessing/engineSwirl/engineSwirl.C b/applications/utilities/preProcessing/engineSwirl/engineSwirl.C
index 089689b47b0ffe6ea3bf9cedc1445d97bb1d1d83..de6e9a2640d782f67613641796beb306928eacf5 100644
--- a/applications/utilities/preProcessing/engineSwirl/engineSwirl.C
+++ b/applications/utilities/preProcessing/engineSwirl/engineSwirl.C
@@ -69,11 +69,11 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info << "Umax = " << Umax << endl;
+    Info<< "Umax = " << Umax << endl;
 
     U.write();
 
-    Info << "\n end\n";
+    Info<< "\n end\n";
 
     return 0;
 }
diff --git a/applications/utilities/preProcessing/mapFields/createTimes.H b/applications/utilities/preProcessing/mapFields/createTimes.H
index 8367e595579842d813bbd2d15945ffc63d5c16d0..91e6a349aec8a23b44f898603aedec5e93e1a07c 100644
--- a/applications/utilities/preProcessing/mapFields/createTimes.H
+++ b/applications/utilities/preProcessing/mapFields/createTimes.H
@@ -1,4 +1,4 @@
-    Info << "\nCreate databases as time" << endl;
+    Info<< "\nCreate databases as time" << endl;
 
     Time runTimeSource
     (
diff --git a/applications/utilities/preProcessing/mdInitialise/mdInitialise.C b/applications/utilities/preProcessing/mdInitialise/mdInitialise.C
index 475aedb66b68e303317d40ebb8dbe09ce178af81..c713a9816df97c2f1bb78b36391af855ec4be816 100644
--- a/applications/utilities/preProcessing/mdInitialise/mdInitialise.C
+++ b/applications/utilities/preProcessing/mdInitialise/mdInitialise.C
@@ -89,7 +89,7 @@ int main(int argc, char *argv[])
     Info<< nl << "ClockTime = " << runTime.elapsedClockTime() << " s"
         << nl << endl;
 
-    Info << nl << "End\n" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/preProcessing/setFields/setFields.C b/applications/utilities/preProcessing/setFields/setFields.C
index d164709504a234271b150538fb947536be91e3a9..b33541dc62b90f18ce6f2efa16a94e392a17ee7a 100644
--- a/applications/utilities/preProcessing/setFields/setFields.C
+++ b/applications/utilities/preProcessing/setFields/setFields.C
@@ -235,7 +235,7 @@ int main(int argc, char *argv[])
         );
     }
 
-    Info<< "\nEnd" << endl;
+    Info<< "\nEnd\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/preProcessing/wallFunctionTable/Allwmake b/applications/utilities/preProcessing/wallFunctionTable/Allwmake
index 57795a542fae3d0cdd2659b8b95b2e4d266db12f..55a6cbd37fa9dcbaf7e2eb1f32402e0d74f79d11 100755
--- a/applications/utilities/preProcessing/wallFunctionTable/Allwmake
+++ b/applications/utilities/preProcessing/wallFunctionTable/Allwmake
@@ -1,5 +1,8 @@
 #!/bin/sh
+cd ${0%/*} || exit 1    # run from this directory
+set -x
 
 wmake libso tabulatedWallFunction
 wmake
 
+# ----------------------------------------------------------------- end-of-file
diff --git a/applications/utilities/preProcessing/wallFunctionTable/tabulatedWallFunction/general/general.C b/applications/utilities/preProcessing/wallFunctionTable/tabulatedWallFunction/general/general.C
index 76792dc2f83cdffdbe6382f81ab31076230d14c6..d889ca784d95198171d2f1347ee819a5a35c82b1 100644
--- a/applications/utilities/preProcessing/wallFunctionTable/tabulatedWallFunction/general/general.C
+++ b/applications/utilities/preProcessing/wallFunctionTable/tabulatedWallFunction/general/general.C
@@ -93,13 +93,13 @@ Foam::scalar Foam::tabulatedWallFunctions::general::interpolate
     {
         case itLinear:
         {
-            if (xi < x[0])
+            if (xi <= x[0])
             {
                 return fx[0];
             }
-            else if (xi > x[x.size()-1])
+            else if (xi >= x.last())
             {
-                return fx[x.size()-1];
+                return fx.last();
             }
             else
             {
diff --git a/applications/utilities/preProcessing/wallFunctionTable/wallFunctionTableApp.C b/applications/utilities/preProcessing/wallFunctionTable/wallFunctionTableApp.C
index a729a771c9251f7c601f6c1e4f9e22ac48c137fc..17f38bbb16a03f0a4838fc7a406f400f5029764a 100644
--- a/applications/utilities/preProcessing/wallFunctionTable/wallFunctionTableApp.C
+++ b/applications/utilities/preProcessing/wallFunctionTable/wallFunctionTableApp.C
@@ -59,7 +59,7 @@ int main(int argc, char *argv[])
 
     twf->write();
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/surface/surfaceAdd/surfaceAdd.C b/applications/utilities/surface/surfaceAdd/surfaceAdd.C
index 587461d403af11e21187addf58a5950b3a4289f3..e8f1d3b70385caed61d316be7c590f676807a45d 100644
--- a/applications/utilities/surface/surfaceAdd/surfaceAdd.C
+++ b/applications/utilities/surface/surfaceAdd/surfaceAdd.C
@@ -263,12 +263,12 @@ int main(int argc, char *argv[])
 
     Info<< endl;
 
-    Info << "Writing : " << outFileName << endl;
+    Info<< "Writing : " << outFileName << endl;
 
     // No need to 'group' while writing since all in correct order anyway.
     combinedSurf.write(outFileName);
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/surface/surfaceAutoPatch/surfaceAutoPatch.C b/applications/utilities/surface/surfaceAutoPatch/surfaceAutoPatch.C
index 16acfa7415ac6a458f9e091188063c2ae03766ee..0a7d8a2cc59af865eaa1cd6fcf4782f253ab8993 100644
--- a/applications/utilities/surface/surfaceAutoPatch/surfaceAutoPatch.C
+++ b/applications/utilities/surface/surfaceAutoPatch/surfaceAutoPatch.C
@@ -64,13 +64,13 @@ int main(int argc, char *argv[])
     // Read
     // ~~~~
 
-    Info << "Reading : " << inFileName << endl;
+    Info<< "Reading : " << inFileName << endl;
     triSurface surf(inFileName);
 
     Info<< "Read surface:" << endl;
     surf.writeStats(Info);
     Info<< endl;
-    
+
 
 
     // Construct features from surface&featureangle
@@ -117,7 +117,7 @@ int main(int argc, char *argv[])
     }
 
 
-    Info << "Writing : " << outFileName << endl;
+    Info<< "Writing : " << outFileName << endl;
     surf.write(outFileName, true);
 
     Info<< "End\n" << endl;
diff --git a/applications/utilities/surface/surfaceCheck/surfaceCheck.C b/applications/utilities/surface/surfaceCheck/surfaceCheck.C
index d283ec66afc37ba554e37ddcb6d84df7dc5ce105..1a8253b25d7b1532e886923cff3f9e7ff5759c6a 100644
--- a/applications/utilities/surface/surfaceCheck/surfaceCheck.C
+++ b/applications/utilities/surface/surfaceCheck/surfaceCheck.C
@@ -550,7 +550,7 @@ int main(int argc, char *argv[])
 
         fileName surfFileNameBase(surfFileName.name());
 
-        for(label zone = 0; zone < numZones; zone++)
+        for (label zone = 0; zone < numZones; zone++)
         {
             boolList includeMap(surf.size(), false);
 
diff --git a/applications/utilities/surface/surfaceClean/collapseBase.C b/applications/utilities/surface/surfaceClean/collapseBase.C
index 58168e5722a9a3cc79d59b0866209dfc368d099d..f5370d0c6091c65df15b1957d8292d00382e0b1b 100644
--- a/applications/utilities/surface/surfaceClean/collapseBase.C
+++ b/applications/utilities/surface/surfaceClean/collapseBase.C
@@ -128,7 +128,7 @@ static void splitTri
             labelledTri
             (
                 f[fp2],
-                splitPoints[splitPoints.size()-1],
+                splitPoints.last(),
                 f[fp1],
                 f.region()
             )
@@ -144,7 +144,7 @@ static void splitTri
             (
                 f[fp1],
                 f[fp2],
-                splitPoints[splitPoints.size()-1],
+                splitPoints.last(),
                 f.region()
             )
         );
diff --git a/applications/utilities/surface/surfaceCoarsen/surfaceCoarsen.C b/applications/utilities/surface/surfaceCoarsen/surfaceCoarsen.C
index 3ec618189e9f673e88b71f2117042b8b9356df89..ea4f795edad7203a2e5095ae7c63221aff3132ec 100644
--- a/applications/utilities/surface/surfaceCoarsen/surfaceCoarsen.C
+++ b/applications/utilities/surface/surfaceCoarsen/surfaceCoarsen.C
@@ -54,7 +54,7 @@ int mapVertex(::List<int>& collapse_map, int a, int mx)
         return 0;
     }
     while (a >= mx)
-    {  
+    {
 	a = collapse_map[a];
     }
     return a;
@@ -122,28 +122,28 @@ int main(int argc, char *argv[])
         td.v[1]=f[1];
         td.v[2]=f[2];
         tri.Add(td);
-    }        
+    }
 
     ::List<int> collapse_map;   // to which neighbor each vertex collapses
     ::List<int> permutation;
 
     ::ProgressiveMesh(vert,tri,collapse_map,permutation);
 
-    // rearrange the vertex list 
+    // rearrange the vertex list
     ::List< ::Vector> temp_list;
-    for(int i=0;i<vert.num;i++)
+    for (int i=0;i<vert.num;i++)
     {
         temp_list.Add(vert[i]);
     }
-    for(int i=0;i<vert.num;i++)
+    for (int i=0;i<vert.num;i++)
     {
         vert[permutation[i]]=temp_list[i];
     }
 
     // update the changes in the entries in the triangle list
-    for(int i=0;i<tri.num;i++)
+    for (int i=0;i<tri.num;i++)
     {
-        for(int j=0;j<3;j++)
+        for (int j=0;j<3;j++)
         {
             tri[i].v[j] = permutation[tri[i].v[j]];
         }
@@ -167,7 +167,7 @@ int main(int argc, char *argv[])
         int p2 = mapVertex(collapse_map, tri[i].v[2], render_num);
 
         // note:  serious optimization opportunity here,
-        //  by sorting the triangles the following "continue" 
+        //  by sorting the triangles the following "continue"
         //  could have been made into a "break" statement.
         if (p0 == p1 || p1 == p2 || p2 == p0)
         {
@@ -181,7 +181,7 @@ int main(int argc, char *argv[])
     // Convert vert into pointField.
     pointField newPoints(vert.num);
 
-    for(int i=0; i<vert.num; i++)
+    for (int i=0; i<vert.num; i++)
     {
         const ::Vector & v = vert[i];
 
@@ -205,7 +205,7 @@ int main(int argc, char *argv[])
 
     surf2.write(outFileName);
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/surface/surfaceFind/surfaceFind.C b/applications/utilities/surface/surfaceFind/surfaceFind.C
index 13d769fd1a7795b25c10fab05b888abc923b1e73..b710a52493e5ccc3793c2405f37ae7d2f651234a 100644
--- a/applications/utilities/surface/surfaceFind/surfaceFind.C
+++ b/applications/utilities/surface/surfaceFind/surfaceFind.C
@@ -123,7 +123,7 @@ int main(int argc, char *argv[])
         << endl;
 
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/surface/surfaceMeshTriangulate/surfaceMeshTriangulate.C b/applications/utilities/surface/surfaceMeshTriangulate/surfaceMeshTriangulate.C
index fb7d42746329b821f4cacfb29ea778d79950d4b2..132fca6c342362ecf8dd624bb6e554e18c883151 100644
--- a/applications/utilities/surface/surfaceMeshTriangulate/surfaceMeshTriangulate.C
+++ b/applications/utilities/surface/surfaceMeshTriangulate/surfaceMeshTriangulate.C
@@ -320,7 +320,7 @@ int main(int argc, char *argv[])
         }
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/surface/surfaceOrient/surfaceOrient.C b/applications/utilities/surface/surfaceOrient/surfaceOrient.C
index 1b728711cdce6ff1c052009698d5a5c3e19cad83..c6fd31c0294ef3c365c45c14ebabcdc3b14b9218 100644
--- a/applications/utilities/surface/surfaceOrient/surfaceOrient.C
+++ b/applications/utilities/surface/surfaceOrient/surfaceOrient.C
@@ -95,7 +95,7 @@ int main(int argc, char *argv[])
 
     surf.write(outFileName);
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/surface/surfacePointMerge/surfacePointMerge.C b/applications/utilities/surface/surfacePointMerge/surfacePointMerge.C
index 1ba618ec01ef97aa04beddbd4fc365ce594c281d..f206f6e931eed12b13ec8d832df2ace5e6caef4b 100644
--- a/applications/utilities/surface/surfacePointMerge/surfacePointMerge.C
+++ b/applications/utilities/surface/surfacePointMerge/surfacePointMerge.C
@@ -65,7 +65,7 @@ int main(int argc, char *argv[])
 
     triSurface cleanSurf(surf1);
 
-    while(true)
+    while (true)
     {
         label nOldVert = cleanSurf.nPoints();
 
@@ -83,7 +83,7 @@ int main(int argc, char *argv[])
 
     cleanSurf.write(outFileName);
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/surface/surfaceRefineRedGreen/surfaceRefineRedGreen.C b/applications/utilities/surface/surfaceRefineRedGreen/surfaceRefineRedGreen.C
index 49efe5293a27b894eaf4de74fce6ee8ff8bc3b87..7b94ca60e2b89dedca57beddc72936ba1103492c 100644
--- a/applications/utilities/surface/surfaceRefineRedGreen/surfaceRefineRedGreen.C
+++ b/applications/utilities/surface/surfaceRefineRedGreen/surfaceRefineRedGreen.C
@@ -79,7 +79,7 @@ int main(int argc, char *argv[])
 
     surf2.write(outFileName);
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/surface/surfaceSmooth/surfaceSmooth.C b/applications/utilities/surface/surfaceSmooth/surfaceSmooth.C
index cb843d3a4651874d089d55d736a7ce3255e95136..bce23c9846897dd0f98b7314e7277a27b9ed6b2a 100644
--- a/applications/utilities/surface/surfaceSmooth/surfaceSmooth.C
+++ b/applications/utilities/surface/surfaceSmooth/surfaceSmooth.C
@@ -78,7 +78,7 @@ int main(int argc, char *argv[])
     const labelListList& pointEdges = surf1.pointEdges();
 
 
-    for(label iter = 0; iter < iters; iter++)
+    for (label iter = 0; iter < iters; iter++)
     {
         forAll(pointEdges, vertI)
         {
@@ -111,7 +111,7 @@ int main(int argc, char *argv[])
 
     surf2.write(outFileName);
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C b/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C
index 71ab4c8b01da1ee05f882d7d87eca95dbfbea09d..a597fc5c2c199030c810a24a3ae7dccc79c3c64c 100644
--- a/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C
+++ b/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C
@@ -106,7 +106,7 @@ int main(int argc, char *argv[])
     }
 
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/surface/surfaceSplitNonManifolds/surfaceSplitNonManifolds.C b/applications/utilities/surface/surfaceSplitNonManifolds/surfaceSplitNonManifolds.C
index c14771030f4480d7d1152a36ec734b1ececbcc88..09d13cb2a89c2a7014437b2584c34bccffa792f8 100644
--- a/applications/utilities/surface/surfaceSplitNonManifolds/surfaceSplitNonManifolds.C
+++ b/applications/utilities/surface/surfaceSplitNonManifolds/surfaceSplitNonManifolds.C
@@ -973,7 +973,7 @@ int main(int argc, char *argv[])
 
     surf.write(outSurfName);
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/surface/surfaceSubset/surfaceSubset.C b/applications/utilities/surface/surfaceSubset/surfaceSubset.C
index 1c1a725cad267ae5cca8e2389dba06bac8987aac..e32677fe7710f379b03b224bce2014f8936cabdf 100644
--- a/applications/utilities/surface/surfaceSubset/surfaceSubset.C
+++ b/applications/utilities/surface/surfaceSubset/surfaceSubset.C
@@ -117,7 +117,7 @@ int main(int argc, char *argv[])
 
     if (markedPoints.size())
     {
-        Info << "Found " << markedPoints.size() << " marked point(s)." << endl;
+        Info<< "Found " << markedPoints.size() << " marked point(s)." << endl;
 
         // pick up cells sharing the point
 
@@ -155,7 +155,7 @@ int main(int argc, char *argv[])
 
     if (markedEdges.size())
     {
-        Info << "Found " << markedEdges.size() << " marked edge(s)." << endl;
+        Info<< "Found " << markedEdges.size() << " marked edge(s)." << endl;
 
         // pick up cells sharing the edge
 
@@ -194,7 +194,7 @@ int main(int argc, char *argv[])
         const point& min = markedZone[0];
         const point& max = markedZone[1];
 
-        Info << "Using zone min:" << min << " max:" << max << endl;
+        Info<< "Using zone min:" << min << " max:" << max << endl;
 
         forAll(surf1, faceI)
         {
@@ -295,7 +295,7 @@ int main(int argc, char *argv[])
 
     if (markedFaces.size())
     {
-        Info << "Found " << markedFaces.size() << " marked face(s)." << endl;
+        Info<< "Found " << markedFaces.size() << " marked face(s)." << endl;
 
         // Check and mark faces to pick up
         forAll (markedFaces, faceI)
@@ -373,11 +373,11 @@ int main(int argc, char *argv[])
 
     Info<< "Subset:" << endl;
     surf2.writeStats(Info);
-    Info << endl;
+    Info<< endl;
 
     fileName outFileName(args.additionalArgs()[2]);
 
-    Info << "Writing surface to " << outFileName << endl;
+    Info<< "Writing surface to " << outFileName << endl;
 
     surf2.write(outFileName);
 
diff --git a/applications/utilities/surface/surfaceToPatch/surfaceToPatch.C b/applications/utilities/surface/surfaceToPatch/surfaceToPatch.C
index 87ce69ddf77b49e8b52ede588d7918f4f83fd07d..f602fa47b013bb95bc333353053b28262a01310e 100644
--- a/applications/utilities/surface/surfaceToPatch/surfaceToPatch.C
+++ b/applications/utilities/surface/surfaceToPatch/surfaceToPatch.C
@@ -311,7 +311,7 @@ int main(int argc, char *argv[])
         runTime++;
 
         // Write resulting mesh
-        Info << "Writing modified mesh to time " << runTime.value() << endl;
+        Info<< "Writing modified mesh to time " << runTime.value() << endl;
         mesh.write();
     }
 
diff --git a/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C b/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C
index 1b9fcf0d0a30c0f0f3a00af661464b22484a2931..be4449c6ae432bc706386378f1b9992d14b737bf 100644
--- a/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C
+++ b/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C
@@ -166,7 +166,7 @@ int main(int argc, char *argv[])
 
     surf2.write(outFileName);
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C b/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C
index 18befde0afa83e6d0b1681ada37c273b47432380..f1cb5ee1b3f174f625713041ed5bfe8a6d43a2ed 100644
--- a/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C
+++ b/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C
@@ -60,7 +60,7 @@ int main(int argc, char *argv[])
     OFstream thermoFile(FOAMThermodynamicsFileName);
     thermoFile<< cr.speciesThermo() << endl;
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/applications/utilities/thermophysical/mixtureAdiabaticFlameT/mixtureAdiabaticFlameT.C b/applications/utilities/thermophysical/mixtureAdiabaticFlameT/mixtureAdiabaticFlameT.C
index 277a4e787fbbf40809c8b1ca53d01724f4db2baa..5e4c41dbe9ff9a0d4c2a8d4ab9791d867992e340 100644
--- a/applications/utilities/thermophysical/mixtureAdiabaticFlameT/mixtureAdiabaticFlameT.C
+++ b/applications/utilities/thermophysical/mixtureAdiabaticFlameT/mixtureAdiabaticFlameT.C
@@ -116,7 +116,7 @@ int main(int argc, char *argv[])
             + 2*pMix[i].volFrac()*thermo(CpData.lookup(pMix[i].name()));
     }
 
-    Info << "Adiabatic flame temperature of mixture " << rMix.name() << " = "
+    Info<< "Adiabatic flame temperature of mixture " << rMix.name() << " = "
          << products.TH(reactants.H(T0), 1000.0) << " K" << endl;
 
     return 0;
diff --git a/bin/paraFoam b/bin/paraFoam
index 31d286fcc9fb2835091386548abdbe1587840fe3..5dcba75094e39a362250a08165fa4c6d48a102f6 100755
--- a/bin/paraFoam
+++ b/bin/paraFoam
@@ -130,18 +130,7 @@ OpenFOAM)
 esac
 
 case "$ParaView_VERSION" in
-2*)
-    trap "rm -f paraFoam.pvs $caseFile 2>/dev/null; exit 0" EXIT TERM INT
-    touch "$caseFile"
-
-    # since we are now in the cwd, %CASE% is '$PWD/$caseFile'
-    sed -e s@%CASE%@$PWD/$caseFile@g \
-        $WM_PROJECT_DIR/bin/tools/paraFoam.pvs > paraFoam.pvs
-
-    paraview paraFoam.pvs
-    ;;
-
-*)
+3*)
     # only create/remove caseFile if it didn't already exist
     [ -e $caseFile ] || {
         trap "rm -f $caseFile 2>/dev/null; exit 0" EXIT TERM INT
diff --git a/bin/templates/source/_TemplateApp.C b/bin/templates/source/_TemplateApp.C
index 7ce97539e6ab351103502e5ca0594cd045e52d2d..42f2df0db8ea3c8a43b3b9afd151aad9af9218ed 100644
--- a/bin/templates/source/_TemplateApp.C
+++ b/bin/templates/source/_TemplateApp.C
@@ -41,8 +41,7 @@ int main(int argc, char *argv[])
 
     // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-    Info << "End\n" << endl;
-
+    Info<< "\nEnd\n" << endl;
     return 0;
 }
 
diff --git a/bin/tools/paraFoam.pvs b/bin/tools/paraFoam.pvs
deleted file mode 100644
index 8cbca6dc411ede8c5239ecb8880b0b699a93165e..0000000000000000000000000000000000000000
--- a/bin/tools/paraFoam.pvs
+++ /dev/null
@@ -1,12 +0,0 @@
-# ParaView State Version 2.2
-
-set kw(vtkTemp2) [$Application GetMainWindow]
-set kw(vtkTemp29) [$kw(vtkTemp2) GetMainView]
-set kw(vtkTemp980) [$kw(vtkTemp2) GetAnimationManager]
-[$kw(vtkTemp2) GetRotateCameraButton] SetState 1
-$kw(vtkTemp2) ChangeInteractorStyle 1
-set kw(vtkTemp840) [$kw(vtkTemp2) InitializeReadCustom "FoamReader" "%CASE%"]
-$kw(vtkTemp2) ReadFileInformation $kw(vtkTemp840) "%CASE%"
-$kw(vtkTemp2) FinalizeRead $kw(vtkTemp840) "%CASE%"
-set kw(vtkTemp868) [$kw(vtkTemp840) GetPVWidget {Filename}]
-$kw(vtkTemp868) SetValue "%CASE%"
diff --git a/doc/Doxygen/Doxyfile b/doc/Doxygen/Doxyfile
index 908fa543b949ae68c460d8d72c29cf91f7c190b2..68ff8430b205ad285cfc0e03936441425d305b3c 100644
--- a/doc/Doxygen/Doxyfile
+++ b/doc/Doxygen/Doxyfile
@@ -689,13 +689,13 @@ HTML_FILE_EXTENSION    = .html
 # each generated HTML page. If it is left blank doxygen will generate a
 # standard header.
 
-HTML_HEADER            = FoamHeader.html
+HTML_HEADER            = $(WM_PROJECT_DIR)/doc/Doxygen/FoamHeader.html
 
 # The HTML_FOOTER tag can be used to specify a personal HTML footer for
 # each generated HTML page. If it is left blank doxygen will generate a
 # standard footer.
 
-HTML_FOOTER            = FoamFooter.html
+HTML_FOOTER            = $(WM_PROJECT_DIR)/doc/Doxygen/FoamFooter.html
 
 # The HTML_STYLESHEET tag can be used to specify a user-defined cascading
 # style sheet that is used by each HTML page. It can be used to
diff --git a/doc/GUIDELINES b/doc/GUIDELINES
index 8038f997de186017c4b2fe1519fc8aa471a0bd0c..5603ca3f657c13001b1e584452c3592d0be93360 100644
--- a/doc/GUIDELINES
+++ b/doc/GUIDELINES
@@ -109,7 +109,7 @@ eg,
     |
     |    Within the implementation, a loop over all patches is done:
     |    @code
-    |        forAll (patches, patchI)
+    |        forAll(patches, patchI)
     |        {
     |            ...  // some operation
     |        }
@@ -222,4 +222,4 @@ The doc/Doxygen/tools directory contains miscellaneous scripts for finding
 and possibly repairing documentation issues.
 
 
-Updated: 2008-03-17
+Updated: 2009-11-27
diff --git a/doc/codingStyleGuide.org b/doc/codingStyleGuide.org
index d9c5c3c9c660453fda988dfa79ddc2214bb53293..27725cf1cd0addeeba79b5e658b9d52d6f5c6551 100644
--- a/doc/codingStyleGuide.org
+++ b/doc/codingStyleGuide.org
@@ -10,239 +10,252 @@
 
 *** General
     + 80 character lines max
+    + 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).
-      always delineated with brace brackets
+      always delineated with brace brackets. A possible exception can be
+      made with 'break' or 'continue' as part of a control structure.
 
     + stream output
-      << is always four characters after the start of the stream, so that the <<
-      symbols align, i.e.
-
-      Info<<
-      os  <<
+      =<<= is always four characters after the start of the stream,
+      so that the =<<= symbols align, i.e.
 
+    :Info<< ...
+    :os  << ...
 
       so
 
-      WarningIn("className::functionName()")
-          << "Warning message"
+    :WarningIn("className::functionName()")
+    :    << "Warning message"
 
       NOT
 
-      WarningIn("className::functionName()")
-      << "Warning message"
-
-    + no unnecessary class section headers, i.e. remove
+    :WarningIn("className::functionName()")
+    :<< "Warning message"
 
-      // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
 
-      // Check
-
-      // Edit
+    + no unnecessary class section headers, i.e. remove
 
-      // Write
+    :// * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
+    :
+    :// Check
+    :
+    :// Edit
+    :
+    :// Write
 
       if they contain nothing, even if planned for 'future use'
 
     + class titles are centred
 
-     /*---------------------------------------------------------------------------*\
-                             Class exampleClass Declaration
-     \*---------------------------------------------------------------------------*/
+    :/*---------------------------------------------------------------------------*\
+    :                        Class exampleClass Declaration
+    :\*---------------------------------------------------------------------------*/
 
-    NOT
+      NOT
 
-     /*---------------------------------------------------------------------------*\
-                    Class exampleClass Declaration
-     \*---------------------------------------------------------------------------*/
+    :/*---------------------------------------------------------------------------*\
+    :               Class exampleClass Declaration
+    :\*---------------------------------------------------------------------------*/
 
-*** .H Files
+*** The =.H= Files
     + header file spacing
-      Leave two empty lines between sections (as per functions in the .C file etc)
+      Leave two empty lines between sections (as per functions in the =.C= file etc)
 
     + use "//- Comment" comments in header file
       + add descriptions to class data and functions
     + destructor
       If adding a comment to the destructor - use //- and code as a normal function:
 
-      //- Destructor
-      ~className();
+    ://- Destructor
+    :~className();
+
     + inline functions
       Use inline functions where appropriate in a separate classNameI.H file.
-      Do not clutter up the header file with function bodies
+      Avoid cluttering the header file with function bodies.
 
-*** .C Files
-    + Do not open/close namespaces in a .C file
+*** The =.C= Files
+    + Do not open/close namespaces in a =.C= file
       Fully scope the function name, i.e.
 
-      Foam::returnType Foam::className::functionName()
+    :Foam::returnType Foam::className::functionName()
 
       NOT
 
-      namespace Foam
-      {
-          ...
-
-          returnType className::functionName()
-
-          ...
-      }
+    :namespace Foam
+    :{
+    :    ...
+    :
+    :    returnType className::functionName()
+    :
+    :    ...
+    :}
 
       EXCEPTION
 
-      When there are multiple levels of namespace, they may be used in the .C
+      When there are multiple levels of namespace, they may be used in the =.C=
       file, i.e.
 
-      namespace Foam
-      {
-      namespace compressible
-      {
-      namespace RASModels
-      {
-
-          ...
-
-      } // End namespace RASModels
-      } // End namespace compressible
-      } // End namespace Foam
+    :namespace Foam
+    :{
+    :namespace compressible
+    :{
+    :namespace RASModels
+    :{
+    :
+    :    ...
+    :
+    :} // End namespace RASModels
+    :} // End namespace compressible
+    :} // End namespace Foam
 
     + Use two empty lines between functions
 
-*** Coding Practise
+*** Coding Practice
     + passing data as arguments or return
-      Pass label and scalar as copy, anything bigger by reference
+      Pass bool, label and scalar as copy, anything larger by reference.
+
     + const
       Use everywhere it is applicable.
+
     + variable initialisation using "="
 
-      const className& variableName = otherClass.data();
+    : const className& variableName = otherClass.data();
 
       NOT
 
-      const className& variableName(otherClass.data());
+    : const className& variableName(otherClass.data());
 
     + virtual functions
       If a class is virtual - make all derived classes virtual.
 
 *** Conditional Statements
-    if (condition)
-    {
-        code;
-    }
+    :if (condition)
+    :{
+    :    code;
+    :}
 
     OR
 
-    if
-    (
-       long condition
-    )
-    {
-        code;
-    }
+    :if
+    :(
+    :   long condition
+    :)
+    :{
+    :    code;
+    :}
 
     NOT (no space between "if" and "(")
 
-    if(condition)
-    {
-        code;
-    }
+    :if(condition)
+    :{
+    :    code;
+    :}
 
-*** `for' Loops
-    for (i = 0; i < maxI; i++)
-    {
-        code;
-    }
+*** =for= and =while= Loops
+    :for (i = 0; i < maxI; i++)
+    :{
+    :    code;
+    :}
 
     OR
 
-    for
-    (
-        i = 0;
-        i < maxI;
-        i++
-    )
-    {
-        code;
-    }
+    :for
+    :(
+    :    i = 0;
+    :    i < maxI;
+    :    i++
+    :)
+    :{
+    :    code;
+    :}
 
     NOT (no space between "for" and "(")
 
-    for(i = 0; i < maxI; i++)
-    {
-        code;
-    }
+    :for(i = 0; i < maxI; i++)
+    :{
+    :    code;
+    :}
 
-*** `forAll' loops
-    like for loops, but
+    Note that when indexing through iterators, it is often slightly more
+    efficient to use the pre-increment form. Eg, =++iter= instead of =iter++=
 
-    forAll(
+*** =forAll= , =forAllIter=, etc. loops
+    like =for= loops, but
+
+    :forAll(
 
     NOT
 
-    forAll (
+    :forAll (
 
 *** Splitting Over Multiple Lines
-   + splitting return type and function name
+
+**** Splitting return type and function name
      + split initially after the function return type and left align
 
-     + do not put "const" onto it's own line - use a split to keep it with the
-       function name and arguments.
+     + do not put "const" onto its own line - use a split to keep it with
+       the function name and arguments.
 
      so:
 
-     const Foam::longReturnTypeName&
-     Foam::longClassName::longFunctionName const
+     :const Foam::longReturnTypeName&
+     :Foam::longClassName::longFunctionName const
 
      NOT
 
-     const Foam::longReturnTypeName&
-         Foam::longClassName::longFunctionName const
+     :const Foam::longReturnTypeName&
+     :    Foam::longClassName::longFunctionName const
 
      NOR
 
-     const Foam::longReturnTypeName& Foam::longClassName::longFunctionName
-     const
+     :const Foam::longReturnTypeName& Foam::longClassName::longFunctionName
+     :const
 
      NOR
 
-     const Foam::longReturnTypeName& Foam::longClassName::
-     longFunctionName const
+     :const Foam::longReturnTypeName& Foam::longClassName::
+     :longFunctionName const
 
 
-     + if need to split again, split at the function name (leaving behind the
-         preceding scoping "::"'s), and again, left align, i.e.
+     + if it needs to be split again, split at the function name (leaving
+       behind the preceding scoping "::"s), and again, left align, i.e.
 
-       const Foam::longReturnTypeName&
-       Foam::veryveryveryverylongClassName::
-       veryveryveryverylongFunctionName const
+     For example,
 
-   + splitting long lines at an "="
+     :const Foam::longReturnTypeName&
+     :Foam::veryveryveryverylongClassName::
+     :veryveryveryverylongFunctionName const
+
+**** Splitting long lines at an "="
 
      Indent after split
 
-     variableName =
-         longClassName.longFunctionName(longArgument);
+     :variableName =
+     :    longClassName.longFunctionName(longArgument);
 
      OR (where necessary)
 
-     variableName =
-         longClassName.longFunctionName
-         (
-             longArgument1,
-             longArgument2
-         );
+     :variableName =
+     :    longClassName.longFunctionName
+     :    (
+     :        longArgument1,
+     :        longArgument2
+     :    );
 
      NOT
 
-     variableName =
-     longClassName.longFunctionName(longArgument);
+     :variableName =
+     :longClassName.longFunctionName(longArgument);
 
      NOR
 
-     variableName = longClassName.longFunctionName
-     (
-         longArgument1,
-         longArgument2
-     );
+     :variableName = longClassName.longFunctionName
+     :(
+     :    longArgument1,
+     :    longArgument2
+     :);
 
 *** Maths and Logic
     + operator spacing
@@ -258,18 +271,201 @@
       with the operator on the lower line.  Align operator so that first
       variable, function or bracket on the next line is 4 spaces indented i.e.
 
-      variableName =
-          a*(a + b)
-        - exp(c/d)
-         *(k + t)
+    :variableName =
+    :    a * (a + b)
+    :  - exp(c/d)
+    :  * (k + t);
+
+      This is sometime more legible when surrounded by extra parentheses:
+
+    :variableName =
+    :(
+    :    a * (a + b)
+    :  - exp(c/d)
+    :  * (k + t)
+    :);
 
     + splitting logical tests over several lines
 
-      indent operator so that the next variable to test is aligned with the
-      four space indentation, i.e.
+      outdent the operator so that the next variable to test is aligned with
+      the four space indentation, i.e.
+
+    :if
+    :(
+    :    a == true
+    : && b == c
+    :)
+
+** Documentation
+
+*** General
+
+    + For readability in the comment blocks, certain tags are used that are
+      translated by pre-filtering the file before sending it to Doxygen.
+
+    + The tags start in column 1, the contents follow on the next lines and
+      indented by 4 spaces. The filter removes the leading 4 spaces from the
+      following lines until the next tag that starts in column 1.
+
+    + The 'Class' and 'Description' tags are the most important ones.
+
+    + The first paragraph following the 'Description' will be used for the
+      brief description, the remaining paragraphs become the detailed
+      description.
+
+      For example,
+
+    :Class
+    :    Foam::myClass
+    :
+    :Description
+    :    A class for specifying the documentation style.
+    :
+    :    The class is implemented as a set of recommendations that may
+    :    sometimes be useful.
+
+    + The class name must be qualified by its namespace, otherwise Doxygen
+      will think you are documenting some other class.
+
+    + If you don't have anything to say about the class (at the moment), use
+      the namespace-qualified class name for the description. This aids with
+      finding these under-documented classes later.
+
+
+    :Class
+    :    Foam::myUnderDocumentedClass
+    :
+    :Description
+    :    Foam::myUnderDocumentedClass
+
+
+    + Use 'Class' and 'Namespace' tags in the header files.
+      The Description block then applies to documenting the class.
+
+    + Use 'InClass' and 'InNamespace' in the source files.
+      The Description block then applies to documenting the file itself.
+
+
+    :InClass
+    :    Foam::myClass
+    :
+    :Description
+    :    Implements the read and writing of files.
+
+*** Doxygen Special Commands
+
+    Doxygen has a large number of special commands with a '\' prefix or a
+    (alternatively) an '@' prefix.
+
+    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.
+
+    Since the filtering removes the leading 4 spaces within the blocks, the
+    Doxygen commmands can be inserted within the block without problems.
+
+
+    :InClass
+    :    Foam::myClass
+    :
+    :Description
+    :    Implements the read and writing of files.
+    :
+    :    An example input file:
+    :    @verbatim
+    :        patchName
+    :        {
+    :            type        myPatchType;
+    :            refValue    100;
+    :            value       uniform 1;
+    :        }
+    :    @endverbatim
+    :
+    :    Within the implementation, a loop over all patches is done:
+    :    @code
+    :        forAll(patches, patchI)
+    :        {
+    :            ...  // some operation
+    :        }
+    :    @endcode
+
+*** HTML Special Commands
+
+    Since Doxygen also handles HTML tags to a certain extent, the angle
+    brackets need quoting in the documentation blocks. Non-HTML tags cause
+    Doxygen to complain, but seem to work anyhow.
+
+    eg,
+    + The template with type <HR> is a bad example.
+
+    + The template with type \<HR\> is a better example.
+
+    + The template with type <Type> causes Doxygen to complain about an
+      unknown html type, but it seems to work okay anyhow.
+
+
+*** Documenting Namespaces
+
+    + If namespaces are explictly declared with the Namespace() macro,
+      they should be documented there.
+
+    + If the namespaces is used to hold sub-models, the namespace can be
+      documented in the same file as the class with the model selector.
+      eg,
+    :documented namespace 'Foam::functionEntries' within the
+    :class 'Foam::functionEntry'
+
+    + If nothing else helps, find some sensible header.
+      eg,
+    :namespace 'Foam' is documented in the foamVersion.H file
+
+
+*** Documenting Typedefs and classes defined via macros
+
+    ... not yet properly resolved
+
+
+*** Documenting Applications
+
+    Any number of classes might be defined by a particular application, but
+    these classes will not, however, be available to other parts of
+    OpenFOAM. At the moment, the sole purpuse for running Doxygen on the
+    applications is to extract program usage information for the '-doc'
+    option.
+
+    The documentation for a particular application is normally contained
+    within the first comment block in a =.C= source file. The solution is this
+    to invoke a special filter for the "applications/{solver,utilities}"
+    directories that only allows the initial comment block for the =.C= files
+    through.
+
+    The layout of the application documentation has not yet been finalized,
+    but foamToVTK shows an initial attempt.
+
+*** Orthography (an opinion)
+
+    Given the origins of OpenFOAM, the British spellings (eg, neighbour and
+    not neighbor) are generally favoured. For code sections that interact
+    with external libraries, it can be useful to adopt American spellings,
+    especially for names that constitute a significant part of the external
+    library - eg, 'color' within graphics sub-systems.
+
+    Both '-ize' and the '-ise' variant are found in the code comments. If
+    used as a variable or class method name, it is probably better to use
+    '-ize', which is considered the main form by the Oxford University
+    Press.
+
+    Eg,
+    :myClass.initialize()
+
+
+    The word "its" (possesive) vs. "it's" (colloquial for "it is" or "it has")
+    seems to confuse non-native (and some native) English speakers.
+    It is better to donate the extra keystrokes and write "it is" or "it has".
+    Any remaining "it's" are likely an incorrect spelling of "its".
+
+
 
-      if
-      (
-          a == true
-       && b == c
-      )
diff --git a/src/Allwmake b/src/Allwmake
index e4724a1e8f14bf4f331697de3da1895926345725..6592f244d711e9300cf0be993b87c706d712161d 100755
--- a/src/Allwmake
+++ b/src/Allwmake
@@ -27,7 +27,7 @@ wmake libso edgeMesh
 wmake libso surfMesh
 
 # Decomposition methods needed by meshTools
-decompositionMethods/Allwmake
+wmake libso parallel/decompositionMethods
 
 wmake libso meshTools
 wmake libso finiteVolume
@@ -46,6 +46,7 @@ thermophysicalModels/Allwmake
 transportModels/Allwmake
 turbulenceModels/Allwmake
 lagrangian/Allwmake
+parallel/Allwmake
 postProcessing/Allwmake
 conversion/Allwmake
 mesh/Allwmake
diff --git a/src/OSspecific/POSIX/printStack.C b/src/OSspecific/POSIX/printStack.C
index a6c2743298b8d320cba12c569960776c28f5a028..134107637577b697577bd620fa817e33b0ff8df0 100644
--- a/src/OSspecific/POSIX/printStack.C
+++ b/src/OSspecific/POSIX/printStack.C
@@ -181,7 +181,7 @@ void error::printStack(Ostream& os)
     {
         IFstream is("/proc/" + name(pid()) + "/maps");
 
-        while(is.good())
+        while (is.good())
         {
             string line;
             is.getLine(line);
diff --git a/src/OpenFOAM/algorithms/MeshWave/FaceCellWave.C b/src/OpenFOAM/algorithms/MeshWave/FaceCellWave.C
index 5159644fbff9386867cd546fa728428a4efaa9e4..d7367856cc3bd7053286e10d3e5e5cd7fe44ef0a 100644
--- a/src/OpenFOAM/algorithms/MeshWave/FaceCellWave.C
+++ b/src/OpenFOAM/algorithms/MeshWave/FaceCellWave.C
@@ -57,11 +57,11 @@ Foam::Ostream& Foam::FaceCellWave<Type>::writeFaces
     {
         os << nFaces;
 
-        for(label i = 0; i < nFaces; i++)
+        for (label i = 0; i < nFaces; i++)
         {
             os << ' ' << faceLabels[i];
         }
-        for(label i = 0; i < nFaces; i++)
+        for (label i = 0; i < nFaces; i++)
         {
             os << ' ' << faceInfo[i];
         }
@@ -70,11 +70,11 @@ Foam::Ostream& Foam::FaceCellWave<Type>::writeFaces
     {
         os << nFaces;
 
-        for(label i = 0; i < nFaces; i++)
+        for (label i = 0; i < nFaces; i++)
         {
             os << faceLabels[i];
         }
-        for(label i = 0; i < nFaces; i++)
+        for (label i = 0; i < nFaces; i++)
         {
             os << faceInfo[i];
         }
@@ -95,11 +95,11 @@ Foam::Istream& Foam::FaceCellWave<Type>::readFaces
 {
     is >> nFaces;
 
-    for(label i = 0; i < nFaces; i++)
+    for (label i = 0; i < nFaces; i++)
     {
         is >> faceLabels[i];
     }
-    for(label i = 0; i < nFaces; i++)
+    for (label i = 0; i < nFaces; i++)
     {
         is >> faceInfo[i];
     }
@@ -254,7 +254,7 @@ void Foam::FaceCellWave<Type>::checkCyclic(const polyPatch& patch) const
 {
     label cycOffset = patch.size()/2;
 
-    for(label patchFaceI = 0; patchFaceI < cycOffset; patchFaceI++)
+    for (label patchFaceI = 0; patchFaceI < cycOffset; patchFaceI++)
     {
         label i1 = patch.start() + patchFaceI;
         label i2 = i1 + cycOffset;
@@ -339,7 +339,7 @@ void Foam::FaceCellWave<Type>::mergeFaceInfo
     const bool
 )
 {
-    for(label changedFaceI = 0; changedFaceI < nFaces; changedFaceI++)
+    for (label changedFaceI = 0; changedFaceI < nFaces; changedFaceI++)
     {
         const Type& neighbourWallInfo = changedFacesInfo[changedFaceI];
         label patchFaceI = changedFaces[changedFaceI];
@@ -377,7 +377,7 @@ Foam::label Foam::FaceCellWave<Type>::getChangedPatchFaces
 {
     label nChangedPatchFaces = 0;
 
-    for(label i = 0; i < nFaces; i++)
+    for (label i = 0; i < nFaces; i++)
     {
         label patchFaceI = i + startFaceI;
 
@@ -406,7 +406,7 @@ void Foam::FaceCellWave<Type>::leaveDomain
 {
     const vectorField& fc = mesh_.faceCentres();
     
-    for(label i = 0; i < nFaces; i++)
+    for (label i = 0; i < nFaces; i++)
     {
         label patchFaceI = faceLabels[i];
 
@@ -428,7 +428,7 @@ void Foam::FaceCellWave<Type>::enterDomain
 {
     const vectorField& fc = mesh_.faceCentres();
     
-    for(label i = 0; i < nFaces; i++)
+    for (label i = 0; i < nFaces; i++)
     {
         label patchFaceI = faceLabels[i];
 
@@ -451,14 +451,14 @@ void Foam::FaceCellWave<Type>::transform
     {
         const tensor& T = rotTensor[0];
 
-        for(label faceI = 0; faceI < nFaces; faceI++)
+        for (label faceI = 0; faceI < nFaces; faceI++)
         {
             faceInfo[faceI].transform(mesh_, T);
         }
     }
     else
     {
-        for(label faceI = 0; faceI < nFaces; faceI++)
+        for (label faceI = 0; faceI < nFaces; faceI++)
         {
             faceInfo[faceI].transform(mesh_, rotTensor[faceI]);
         }
@@ -510,7 +510,7 @@ void Foam::FaceCellWave<Type>::offset
     labelList& faces
 )
 {
-    for(label faceI = 0; faceI < nFaces; faceI++)
+    for (label faceI = 0; faceI < nFaces; faceI++)
     {
         faces[faceI] += cycOffset;
     }
@@ -1064,7 +1064,7 @@ Foam::label Foam::FaceCellWave<Type>::iterate(const label maxIter)
         handleProcPatches();
     }
 
-    while(iter_ < maxIter)
+    while (iter_ < maxIter)
     {
         if (debug)
         {
diff --git a/src/OpenFOAM/containers/Dictionaries/DictionaryBase/DictionaryBase.H b/src/OpenFOAM/containers/Dictionaries/DictionaryBase/DictionaryBase.H
index b80240310622e57cf2752076ecfbe31f1e95413f..42bfbacb27b6857ed58c300de535fcce4cffd261 100644
--- a/src/OpenFOAM/containers/Dictionaries/DictionaryBase/DictionaryBase.H
+++ b/src/OpenFOAM/containers/Dictionaries/DictionaryBase/DictionaryBase.H
@@ -144,7 +144,7 @@ public:
             void clear();
 
             //- Transfer the contents of the argument into this DictionaryBase
-            //  and annull the argument.
+            //  and annul the argument.
             void transfer(DictionaryBase<IDLListType, T>&);
 
     // Member operators
diff --git a/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H b/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H
index a945859880a15c6da17ad2e5e7dba099ac3536ba..492d6a9e0f4ce6d206e6486955f027fea4684e43 100644
--- a/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H
+++ b/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H
@@ -287,7 +287,7 @@ public:
             void shrink();
 
             //- Transfer the contents of the argument table into this table
-            //  and annull the argument table.
+            //  and annul the argument table.
             void transfer(HashTable<T, Key, Hash>&);
 
             //- Transfer contents to the Xfer container
@@ -463,7 +463,7 @@ public:
                 inline iterator operator++(int);
         };
 
-        //- iterator set to the begining of the HashTable
+        //- iterator set to the beginning of the HashTable
         inline iterator begin();
 
 
diff --git a/src/OpenFOAM/containers/HashTables/HashTable/HashTableI.H b/src/OpenFOAM/containers/HashTables/HashTable/HashTableI.H
index 610f3ccf2fd059c8a9700ee2da0985147824e2f1..9c870fdf45547f7d5a366da9db3505cd6f4920f4 100644
--- a/src/OpenFOAM/containers/HashTables/HashTable/HashTableI.H
+++ b/src/OpenFOAM/containers/HashTables/HashTable/HashTableI.H
@@ -180,7 +180,7 @@ inline Foam::HashTable<T, Key, Hash>::iteratorBase::iteratorBase
     entryPtr_(0),
     hashIndex_(0)
 {
-    if (hashTable_->nElmts_ && hashTable_->table_)
+    if (hashTable_->nElmts_)
     {
         // find first non-NULL table entry
         while
diff --git a/src/OpenFOAM/containers/HashTables/StaticHashTable/StaticHashTable.H b/src/OpenFOAM/containers/HashTables/StaticHashTable/StaticHashTable.H
index 09edf50c4644135cfa6d20330bf8d989894022a9..9806a138e00bdb60762d740651b32af853a8ee41 100644
--- a/src/OpenFOAM/containers/HashTables/StaticHashTable/StaticHashTable.H
+++ b/src/OpenFOAM/containers/HashTables/StaticHashTable/StaticHashTable.H
@@ -247,7 +247,7 @@ public:
             void clearStorage();
 
             //- Transfer the contents of the argument table into this table
-            //  and annull the argument table.
+            //  and annul the argument table.
             void transfer(StaticHashTable<T, Key, Hash>&);
 
             //- Transfer contents to the Xfer container
diff --git a/src/OpenFOAM/containers/LinkedLists/accessTypes/ILList/ILList.H b/src/OpenFOAM/containers/LinkedLists/accessTypes/ILList/ILList.H
index 20635fa53f944bedcaa4f240d05657a09782f2df..759d0c5dbe116705f4224e13a9fa8bb3d28d5de5 100644
--- a/src/OpenFOAM/containers/LinkedLists/accessTypes/ILList/ILList.H
+++ b/src/OpenFOAM/containers/LinkedLists/accessTypes/ILList/ILList.H
@@ -140,7 +140,7 @@ public:
             void clear();
 
             //- Transfer the contents of the argument into this List
-            //  and annull the argument list.
+            //  and annul the argument list.
             void transfer(ILList<LListBase, T>&);
 
 
diff --git a/src/OpenFOAM/containers/LinkedLists/accessTypes/LList/LList.H b/src/OpenFOAM/containers/LinkedLists/accessTypes/LList/LList.H
index 0905f5543cbd7f272845f62d5d7d8afa0633b9ae..a5e99a63e4d49cc3752acfccebfedc659668f272 100644
--- a/src/OpenFOAM/containers/LinkedLists/accessTypes/LList/LList.H
+++ b/src/OpenFOAM/containers/LinkedLists/accessTypes/LList/LList.H
@@ -202,7 +202,7 @@ public:
             void clear();
 
             //- Transfer the contents of the argument into this List
-            //  and annull the argument list.
+            //  and annul the argument list.
             void transfer(LList<LListBase, T>&);
 
     // Member operators
diff --git a/src/OpenFOAM/containers/LinkedLists/accessTypes/LPtrList/LPtrList.H b/src/OpenFOAM/containers/LinkedLists/accessTypes/LPtrList/LPtrList.H
index 333d916a65a4bbb84a0b75532cfcfaca28a0d463..c2e0250acd87cc74b59e96ae2a2b8e3932f01997 100644
--- a/src/OpenFOAM/containers/LinkedLists/accessTypes/LPtrList/LPtrList.H
+++ b/src/OpenFOAM/containers/LinkedLists/accessTypes/LPtrList/LPtrList.H
@@ -156,7 +156,7 @@ public:
             void clear();
 
             //- Transfer the contents of the argument into this List
-            //  and annull the argument list.
+            //  and annul the argument list.
             void transfer(LPtrList<LListBase, T>&);
 
 
diff --git a/src/OpenFOAM/containers/LinkedLists/linkTypes/DLListBase/DLListBase.H b/src/OpenFOAM/containers/LinkedLists/linkTypes/DLListBase/DLListBase.H
index 848b797b2eabaa5c2175eb978b6f7fb20460e409..beb3c625da675c128857cc5f5c68aff6ec51a421 100644
--- a/src/OpenFOAM/containers/LinkedLists/linkTypes/DLListBase/DLListBase.H
+++ b/src/OpenFOAM/containers/LinkedLists/linkTypes/DLListBase/DLListBase.H
@@ -172,7 +172,7 @@ public:
             inline void clear();
 
             //- Transfer the contents of the argument into this List
-            //  and annull the argument list.
+            //  and annul the argument list.
             inline void transfer(DLListBase&);
 
     // STL iterator
diff --git a/src/OpenFOAM/containers/LinkedLists/linkTypes/SLListBase/SLListBase.H b/src/OpenFOAM/containers/LinkedLists/linkTypes/SLListBase/SLListBase.H
index b5c957a537020bd534dcd5a7670b413606516201..b2958c9e558bc81a20770d4c521ecd0548f76ddf 100644
--- a/src/OpenFOAM/containers/LinkedLists/linkTypes/SLListBase/SLListBase.H
+++ b/src/OpenFOAM/containers/LinkedLists/linkTypes/SLListBase/SLListBase.H
@@ -157,7 +157,7 @@ public:
             inline void clear();
 
             //- Transfer the contents of the argument into this List
-            //  and annull the argument list.
+            //  and annul the argument list.
             inline void transfer(SLListBase&);
 
     // STL iterator
diff --git a/src/OpenFOAM/containers/Lists/BiIndirectList/BiIndirectList.H b/src/OpenFOAM/containers/Lists/BiIndirectList/BiIndirectList.H
index 5afd48d0f36c3b4ef11a09cf5bb8398df33d1338..1f761d9caf903a3d5bb50eba16130b01652baac3 100644
--- a/src/OpenFOAM/containers/Lists/BiIndirectList/BiIndirectList.H
+++ b/src/OpenFOAM/containers/Lists/BiIndirectList/BiIndirectList.H
@@ -44,7 +44,7 @@ namespace Foam
 {
 
 /*---------------------------------------------------------------------------*\
-                           Class BiIndirectList Declaration
+                       Class BiIndirectList Declaration
 \*---------------------------------------------------------------------------*/
 
 template<class T>
@@ -82,11 +82,16 @@ public:
 
         // Access
 
+            //- Return the number of elements in the list
             inline label size() const;
-            inline bool  empty() const;
+
+            //- Return true if the list is empty (ie, size() is zero).
+            inline bool empty() const;
 
             inline const UList<T>& posList() const;
             inline const UList<T>& negList() const;
+
+            //- Return the list addressing
             inline const List<label>& addressing() const;
 
             //- Calculate index given whether index is into posList or negList
diff --git a/src/OpenFOAM/containers/Lists/CompactListList/CompactListList.H b/src/OpenFOAM/containers/Lists/CompactListList/CompactListList.H
index b2aad34d228e2115bbc78e013e69dd51b6e35659..e8ee819add1a4cc2cf706d6f425f44a0d74cf4f8 100644
--- a/src/OpenFOAM/containers/Lists/CompactListList/CompactListList.H
+++ b/src/OpenFOAM/containers/Lists/CompactListList/CompactListList.H
@@ -191,7 +191,7 @@ public:
             labelList sizes() const;
 
             //- Transfer the contents of the argument CompactListList
-            //  into this CompactListList and annull the argument list.
+            //  into this CompactListList and annul the argument list.
             void transfer(CompactListList<T, Container>&);
 
             //- Transfer the contents to the Xfer container
diff --git a/src/OpenFOAM/containers/Lists/FixedList/FixedList.H b/src/OpenFOAM/containers/Lists/FixedList/FixedList.H
index 0e59184f668d5efa825f609be1875b73e4763df3..1d7285d86839e030810a46abfdb82bb75492d7af 100644
--- a/src/OpenFOAM/containers/Lists/FixedList/FixedList.H
+++ b/src/OpenFOAM/containers/Lists/FixedList/FixedList.H
@@ -154,6 +154,18 @@ public:
             //  This can be used (with caution) when interfacing with C code.
             inline T* data();
 
+            //- Return the first element of the list.
+            inline T& first();
+
+            //- Return first element of the list.
+            inline const T& first() const;
+
+            //- Return the last element of the list.
+            inline T& last();
+
+            //- Return the last element of the list.
+            inline const T& last() const;
+
 
         // Check
 
diff --git a/src/OpenFOAM/containers/Lists/FixedList/FixedListI.H b/src/OpenFOAM/containers/Lists/FixedList/FixedListI.H
index 1c3fe7131e6f179ad801a0151da2dd93d746c83e..ae762edb479254f43eb725a4b5589f1f6dcd987b 100644
--- a/src/OpenFOAM/containers/Lists/FixedList/FixedListI.H
+++ b/src/OpenFOAM/containers/Lists/FixedList/FixedListI.H
@@ -208,6 +208,34 @@ Foam::FixedList<T, Size>::data()
 }
 
 
+template<class T, unsigned Size>
+inline T& Foam::FixedList<T, Size>::first()
+{
+    return v_[0];
+}
+
+
+template<class T, unsigned Size>
+inline const T& Foam::FixedList<T, Size>::first() const
+{
+    return v_[0];
+}
+
+
+template<class T, unsigned Size>
+inline T& Foam::FixedList<T, Size>::last()
+{
+    return v_[Size-1];
+}
+
+
+template<class T, unsigned Size>
+inline const T& Foam::FixedList<T, Size>::last() const
+{
+    return v_[Size-1];
+}
+
+
 // * * * * * * * * * * * * * * * Member Operators  * * * * * * * * * * * * * //
 
 // element access
diff --git a/src/OpenFOAM/containers/Lists/IndirectList/IndirectList.H b/src/OpenFOAM/containers/Lists/IndirectList/IndirectList.H
index cfdc03d7dc1fbc3d32a55020c423b8a5ce832ae2..a0d97af48ee42e49a22f9f7b5a1f360be07eed0a 100644
--- a/src/OpenFOAM/containers/Lists/IndirectList/IndirectList.H
+++ b/src/OpenFOAM/containers/Lists/IndirectList/IndirectList.H
@@ -44,7 +44,7 @@ namespace Foam
 {
 
 /*---------------------------------------------------------------------------*\
-                           Class IndirectList Declaration
+                        Class IndirectList Declaration
 \*---------------------------------------------------------------------------*/
 
 template<class T>
@@ -70,10 +70,28 @@ public:
 
         // Access
 
+            //- Return the number of elements in the list
             inline label size() const;
-            inline bool  empty() const;
 
+            //- Return true if the list is empty (ie, size() is zero).
+            inline bool empty() const;
+
+            //- Return the first element of the list.
+            inline T& first();
+
+            //- Return first element of the list.
+            inline const T& first() const;
+
+            //- Return the last element of the list.
+            inline T& last();
+
+            //- Return the last element of the list.
+            inline const T& last() const;
+
+            //- Return the complete list
             inline const UList<T>& completeList() const;
+
+            //- Return the list addressing
             inline const List<label>& addressing() const;
 
         // Edit
diff --git a/src/OpenFOAM/containers/Lists/IndirectList/IndirectListI.H b/src/OpenFOAM/containers/Lists/IndirectList/IndirectListI.H
index a1e2bf9a54e7018588b183d6f55614104e69bc95..47eedb733d1115cf0aba6d91830df8440090770a 100644
--- a/src/OpenFOAM/containers/Lists/IndirectList/IndirectListI.H
+++ b/src/OpenFOAM/containers/Lists/IndirectList/IndirectListI.H
@@ -66,6 +66,34 @@ inline bool Foam::IndirectList<T>::empty() const
 }
 
 
+template<class T>
+inline T& Foam::IndirectList<T>::first()
+{
+    return completeList_[addressing_.first()];
+}
+
+
+template<class T>
+inline const T& Foam::IndirectList<T>::first() const
+{
+    return completeList_[addressing_.first()];
+}
+
+
+template<class T>
+inline T& Foam::IndirectList<T>::last()
+{
+    return completeList_[addressing_.last()];
+}
+
+
+template<class T>
+inline const T& Foam::IndirectList<T>::last() const
+{
+    return completeList_[addressing_.last()];
+}
+
+
 template<class T>
 inline const Foam::UList<T>& Foam::IndirectList<T>::completeList() const
 {
diff --git a/src/OpenFOAM/containers/Lists/List/List.C b/src/OpenFOAM/containers/Lists/List/List.C
index fb6d9a0678929e05f12888dc97361f578aadc32e..4158043b083ddcd28d799d03979dbe6f842bdbc0 100644
--- a/src/OpenFOAM/containers/Lists/List/List.C
+++ b/src/OpenFOAM/containers/Lists/List/List.C
@@ -404,7 +404,7 @@ void Foam::List<T>::clear()
 
 
 // Transfer the contents of the argument List into this List
-// and anull the argument list
+// and annul the argument list
 template<class T>
 void Foam::List<T>::transfer(List<T>& a)
 {
@@ -418,7 +418,7 @@ void Foam::List<T>::transfer(List<T>& a)
 
 
 // Transfer the contents of the argument DynamicList into this List
-// and anull the argument list
+// and annul the argument list
 template<class T>
 template<unsigned SizeInc, unsigned SizeMult, unsigned SizeDiv>
 void Foam::List<T>::transfer(DynamicList<T, SizeInc, SizeMult, SizeDiv>& a)
@@ -431,7 +431,7 @@ void Foam::List<T>::transfer(DynamicList<T, SizeInc, SizeMult, SizeDiv>& a)
 
 
 // Transfer the contents of the argument SortableList into this List
-// and anull the argument list
+// and annul the argument list
 template<class T>
 void Foam::List<T>::transfer(SortableList<T>& a)
 {
diff --git a/src/OpenFOAM/containers/Lists/List/List.H b/src/OpenFOAM/containers/Lists/List/List.H
index 7e623f6560f8008fdedbaa0d132651d8c0c2d0f4..5fec41ef4d7a9a0ecdacda2916cd9bef02f1c171 100644
--- a/src/OpenFOAM/containers/Lists/List/List.H
+++ b/src/OpenFOAM/containers/Lists/List/List.H
@@ -188,16 +188,16 @@ public:
             inline void append(const UIndirectList<T>&);
 
             //- Transfer the contents of the argument List into this list
-            //  and annull the argument list.
+            //  and annul the argument list.
             void transfer(List<T>&);
 
             //- Transfer the contents of the argument List into this list
-            //  and annull the argument list.
+            //  and annul the argument list.
             template<unsigned SizeInc, unsigned SizeMult, unsigned SizeDiv>
             void transfer(DynamicList<T, SizeInc, SizeMult, SizeDiv>&);
 
             //- Transfer the contents of the argument List into this list
-            //  and annull the argument list.
+            //  and annul the argument list.
             void transfer(SortableList<T>&);
 
             //- Transfer contents to the Xfer container
diff --git a/src/OpenFOAM/containers/Lists/PackedList/PackedList.H b/src/OpenFOAM/containers/Lists/PackedList/PackedList.H
index 82ac19fc0e532305100010cb82cb3fab17bc3899..78c7306b6e477d7f8a5482963b17f37c68649a7c 100644
--- a/src/OpenFOAM/containers/Lists/PackedList/PackedList.H
+++ b/src/OpenFOAM/containers/Lists/PackedList/PackedList.H
@@ -253,7 +253,7 @@ public:
         inline void shrink();
 
         //- Transfer the contents of the argument list into this list
-        //  and annull the argument list.
+        //  and annul the argument list.
         inline void transfer(PackedList<nBits>&);
 
         //- Transfer contents to the Xfer container
diff --git a/src/OpenFOAM/containers/Lists/PtrList/PtrList.H b/src/OpenFOAM/containers/Lists/PtrList/PtrList.H
index 3f3e6d8fe6c284e32d1683ca6ab0010854c73b40..fdefbf597c6d7c5b5cf3d4fb0e251927b83b1076 100644
--- a/src/OpenFOAM/containers/Lists/PtrList/PtrList.H
+++ b/src/OpenFOAM/containers/Lists/PtrList/PtrList.H
@@ -29,8 +29,8 @@ Description
     A templated 1D list of pointers to objects of type \<T\>, where the
     size of the array is known and used for subscript bounds checking, etc.
 
-    The element operator [] returns a reference to the object
-    rather than to the pointer.
+    The element operator [] returns a reference to the object rather than a
+    pointer.
 
 SourceFiles
     PtrList.C
@@ -119,7 +119,7 @@ public:
         //- Null Constructor.
         PtrList();
 
-        //- Construct with length specified.
+        //- Construct with size specified.
         explicit PtrList(const label);
 
         //- Copy constructor.
@@ -130,7 +130,7 @@ public:
         PtrList(const PtrList<T>&, const CloneArg&);
 
         //- Construct by transferring the parameter contents
-        PtrList(const Xfer<PtrList<T> >&);
+        PtrList(const Xfer< PtrList<T> >&);
 
         //- Construct as copy or re-use as specified.
         PtrList(PtrList<T>&, bool reUse);
@@ -161,6 +161,17 @@ public:
             //- Return true if the PtrList is empty (ie, size() is zero).
             inline bool empty() const;
 
+            //- Return reference to the first element of the list.
+            inline T& first();
+
+            //- Return reference to first element of the list.
+            inline const T& first() const;
+
+            //- Return reference to the last element of the list.
+            inline T& last();
+
+            //- Return reference to the last element of the list.
+            inline const T& last() const;
 
         // Edit
 
@@ -181,11 +192,11 @@ public:
             void clear();
 
             //- Transfer the contents of the argument PtrList into this PtrList
-            //  and annull the argument list.
+            //  and annul the argument list.
             void transfer(PtrList<T>&);
 
             //- Transfer contents to the Xfer container
-            inline Xfer<PtrList<T> > xfer();
+            inline Xfer< PtrList<T> > xfer();
 
             //- Is element set
             inline bool set(const label) const;
diff --git a/src/OpenFOAM/containers/Lists/PtrList/PtrListI.H b/src/OpenFOAM/containers/Lists/PtrList/PtrListI.H
index d450cdd09fe7107d975d338031f066878be7fca1..72cb24f78dd1226410738f7b182bd17df69039b3 100644
--- a/src/OpenFOAM/containers/Lists/PtrList/PtrListI.H
+++ b/src/OpenFOAM/containers/Lists/PtrList/PtrListI.H
@@ -45,6 +45,34 @@ inline bool Foam::PtrList<T>::empty() const
 }
 
 
+template<class T>
+inline T& Foam::PtrList<T>::first()
+{
+    return this->operator[](0);
+}
+
+
+template<class T>
+inline const T& Foam::PtrList<T>::first() const
+{
+    return this->operator[](0);
+}
+
+
+template<class T>
+inline T& Foam::PtrList<T>::last()
+{
+    return this->operator[](this->size()-1);
+}
+
+
+template<class T>
+inline const T& Foam::PtrList<T>::last() const
+{
+    return this->operator[](this->size()-1);
+}
+
+
 template<class T>
 inline void Foam::PtrList<T>::resize(const label newSize)
 {
@@ -63,9 +91,7 @@ template<class T>
 inline Foam::autoPtr<T> Foam::PtrList<T>::set(const label i, T* ptr)
 {
     autoPtr<T> old(ptrs_[i]);
-
     ptrs_[i] = ptr;
-
     return old;
 }
 
@@ -102,7 +128,7 @@ inline Foam::Xfer<Foam::PtrList<T> > Foam::PtrList<T>::xfer()
 // * * * * * * * * * * * * * * * Member Operators  * * * * * * * * * * * * * //
 
 template<class T>
-const T& Foam::PtrList<T>::operator[](const label i) const
+inline const T& Foam::PtrList<T>::operator[](const label i) const
 {
     if (!ptrs_[i])
     {
@@ -116,7 +142,7 @@ const T& Foam::PtrList<T>::operator[](const label i) const
 
 
 template<class T>
-T& Foam::PtrList<T>::operator[](const label i)
+inline T& Foam::PtrList<T>::operator[](const label i)
 {
     if (!ptrs_[i])
     {
@@ -130,7 +156,7 @@ T& Foam::PtrList<T>::operator[](const label i)
 
 
 template<class T>
-const T* Foam::PtrList<T>::operator()(const label i) const
+inline const T* Foam::PtrList<T>::operator()(const label i) const
 {
     return ptrs_[i];
 }
@@ -297,5 +323,4 @@ Foam::PtrList<T>::end()
 }
 
 
-
 // ************************************************************************* //
diff --git a/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectList.H b/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectList.H
index 0219e02af72861fb2c92b001b498f6ff1fb68b18..61ec6bf2d144f87a3a3aab68108a75463e07ff47 100644
--- a/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectList.H
+++ b/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectList.H
@@ -27,6 +27,7 @@ Class
 
 Description
     A List with indirect addressing.
+
     Like IndirectList but does not store addressing.
 
 SourceFiles
@@ -73,8 +74,24 @@ public:
 
         // Access
 
+            //- Return the number of elements in the list
             inline label size() const;
-            inline bool  empty() const;
+
+            //- Return true if the list is empty (ie, size() is zero).
+            inline bool empty() const;
+
+            //- Return the first element of the list.
+            inline T& first();
+
+            //- Return first element of the list.
+            inline const T& first() const;
+
+            //- Return the last element of the list.
+            inline T& last();
+
+            //- Return the last element of the list.
+            inline const T& last() const;
+
 
             inline const UList<T>& completeList() const;
             inline const List<label>& addressing() const;
diff --git a/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectListI.H b/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectListI.H
index ff8b3ebbd6d0ff9146cc259baf09bb0004218bb9..e8e7565ed1318a61a8a27a7d0a66b47065387eaf 100644
--- a/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectListI.H
+++ b/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectListI.H
@@ -54,6 +54,34 @@ inline bool Foam::UIndirectList<T>::empty() const
 }
 
 
+template<class T>
+inline T& Foam::UIndirectList<T>::first()
+{
+    return completeList_[addressing_.first()];
+}
+
+
+template<class T>
+inline const T& Foam::UIndirectList<T>::first() const
+{
+    return completeList_[addressing_.first()];
+}
+
+
+template<class T>
+inline T& Foam::UIndirectList<T>::last()
+{
+    return completeList_[addressing_.last()];
+}
+
+
+template<class T>
+inline const T& Foam::UIndirectList<T>::last() const
+{
+    return completeList_[addressing_.last()];
+}
+
+
 template<class T>
 inline const Foam::UList<T>& Foam::UIndirectList<T>::completeList() const
 {
diff --git a/src/OpenFOAM/containers/Lists/UList/UList.H b/src/OpenFOAM/containers/Lists/UList/UList.H
index b829c99ea5f69cbe6233b827c972117437d14b4e..b9332d04c2e86d37dcefe93b34542a9945569934 100644
--- a/src/OpenFOAM/containers/Lists/UList/UList.H
+++ b/src/OpenFOAM/containers/Lists/UList/UList.H
@@ -132,7 +132,7 @@ public:
             inline label fcIndex(const label i) const;
 
             //- Return the reverse circular index, i.e. the previous index
-            //  which returns to the last at the begining of the list
+            //  which returns to the last at the beginning of the list
             inline label rcIndex(const label i) const;
 
             //- Return the binary size in number of characters of the UList
@@ -151,6 +151,18 @@ public:
             //  This can be used (with caution) when interfacing with C code.
             inline T* data();
 
+            //- Return the first element of the list.
+            inline T& first();
+
+            //- Return first element of the list.
+            inline const T& first() const;
+
+            //- Return the last element of the list.
+            inline T& last();
+
+            //- Return the last element of the list.
+            inline const T& last() const;
+
 
         // Check
 
@@ -184,12 +196,6 @@ public:
         //  an out-of-range element returns false without any ill-effects
         inline const T& operator[](const label) const;
 
-        //- Return last element of UList.
-        inline T& last();
-
-        //- Return last element of UList.
-        inline const T& last() const;
-
         //- Allow cast to a const List<T>&
         inline operator const Foam::List<T>&() const;
 
diff --git a/src/OpenFOAM/containers/Lists/UList/UListI.H b/src/OpenFOAM/containers/Lists/UList/UListI.H
index aa7d396f105c2387b25120113f81e6e26dda8759..fb68f29ee86ed0575e541b2aaa4b0197d0110d1e 100644
--- a/src/OpenFOAM/containers/Lists/UList/UListI.H
+++ b/src/OpenFOAM/containers/Lists/UList/UListI.H
@@ -114,6 +114,20 @@ inline void Foam::UList<T>::checkIndex(const label i) const
 }
 
 
+template<class T>
+inline T& Foam::UList<T>::first()
+{
+    return this->operator[](0);
+}
+
+
+template<class T>
+inline const T& Foam::UList<T>::first() const
+{
+    return this->operator[](0);
+}
+
+
 template<class T>
 inline T& Foam::UList<T>::last()
 {
diff --git a/src/OpenFOAM/containers/Lists/UPtrList/UPtrList.C b/src/OpenFOAM/containers/Lists/UPtrList/UPtrList.C
index bed0214749efe46fecb7de60e3e063c612fbf7d7..93b7a514c6653282ccafd5d9169b9452ac36374e 100644
--- a/src/OpenFOAM/containers/Lists/UPtrList/UPtrList.C
+++ b/src/OpenFOAM/containers/Lists/UPtrList/UPtrList.C
@@ -93,8 +93,6 @@ void Foam::UPtrList<T>::clear()
 }
 
 
-// Transfer the contents of the argument List into this List
-// and anull the argument list
 template<class T>
 void Foam::UPtrList<T>::transfer(UPtrList<T>& a)
 {
diff --git a/src/OpenFOAM/containers/Lists/UPtrList/UPtrList.H b/src/OpenFOAM/containers/Lists/UPtrList/UPtrList.H
index a334e812543688364dbbde8b6754e4fff2542286..eaf70c3b05b1fcfbce88de1af119ef12811f3ec7 100644
--- a/src/OpenFOAM/containers/Lists/UPtrList/UPtrList.H
+++ b/src/OpenFOAM/containers/Lists/UPtrList/UPtrList.H
@@ -26,8 +26,8 @@ Class
     Foam::UPtrList
 
 Description
-    A 1D array of pointers to objects of type \<T\>, where the size of the
-    array is known and used for subscript bounds checking, etc.
+    A templated 1D list of pointers to objects of type \<T\>, where the
+    size of the array is known and used for subscript bounds checking, etc.
 
     The element operator [] returns a reference to the object rather than a
     pointer.  Storage is not allocated during construction or use but is
@@ -107,11 +107,11 @@ public:
         //- Null Constructor.
         UPtrList();
 
-        //- Construct with length specified.
+        //- Construct with size specified.
         explicit UPtrList(const label);
 
         //- Construct by transferring the parameter contents
-        UPtrList(const Xfer<UPtrList<T> >&);
+        UPtrList(const Xfer< UPtrList<T> >&);
 
         //- Construct as copy or re-use as specified.
         UPtrList(UPtrList<T>&, bool reUse);
@@ -127,6 +127,18 @@ public:
             //- Return true if the UPtrList is empty (ie, size() is zero).
             inline bool empty() const;
 
+            //- Return reference to the first element of the list.
+            inline T& first();
+
+            //- Return reference to first element of the list.
+            inline const T& first() const;
+
+            //- Return reference to the last element of the list.
+            inline T& last();
+
+            //- Return reference to the last element of the list.
+            inline const T& last() const;
+
 
         // Edit
 
@@ -144,11 +156,11 @@ public:
             void clear();
 
             //- Transfer the contents of the argument UPtrList into this
-            //  UPtrList and annull the argument list.
+            //  UPtrList and annul the argument list.
             void transfer(UPtrList<T>&);
 
             //- Transfer contents to the Xfer container
-            inline Xfer<UPtrList<T> > xfer();
+            inline Xfer< UPtrList<T> > xfer();
 
             //- Is element set
             inline bool set(const label) const;
diff --git a/src/OpenFOAM/containers/Lists/UPtrList/UPtrListI.H b/src/OpenFOAM/containers/Lists/UPtrList/UPtrListI.H
index 859f54fce5f7d45b2cb278be640db627183d7ceb..1d73bc920da2c71acc53b7653ed696aeffaa0cad 100644
--- a/src/OpenFOAM/containers/Lists/UPtrList/UPtrListI.H
+++ b/src/OpenFOAM/containers/Lists/UPtrList/UPtrListI.H
@@ -42,6 +42,34 @@ inline bool Foam::UPtrList<T>::empty() const
 }
 
 
+template<class T>
+inline T& Foam::UPtrList<T>::first()
+{
+    return this->operator[](0);
+}
+
+
+template<class T>
+inline const T& Foam::UPtrList<T>::first() const
+{
+    return this->operator[](0);
+}
+
+
+template<class T>
+inline T& Foam::UPtrList<T>::last()
+{
+    return this->operator[](this->size()-1);
+}
+
+
+template<class T>
+inline const T& Foam::UPtrList<T>::last() const
+{
+    return this->operator[](this->size()-1);
+}
+
+
 template<class T>
 inline void Foam::UPtrList<T>::resize(const label newSize)
 {
@@ -55,6 +83,7 @@ inline bool Foam::UPtrList<T>::set(const label i) const
     return ptrs_[i] != NULL;
 }
 
+
 template<class T>
 inline T* Foam::UPtrList<T>::set(const label i, T* ptr)
 {
@@ -63,6 +92,7 @@ inline T* Foam::UPtrList<T>::set(const label i, T* ptr)
     return old;
 }
 
+
 template<class T>
 inline Foam::Xfer<Foam::UPtrList<T> > Foam::UPtrList<T>::xfer()
 {
@@ -73,7 +103,7 @@ inline Foam::Xfer<Foam::UPtrList<T> > Foam::UPtrList<T>::xfer()
 // * * * * * * * * * * * * * * * Member Operators  * * * * * * * * * * * * * //
 
 template<class T>
-const T& Foam::UPtrList<T>::operator[](const label i) const
+inline const T& Foam::UPtrList<T>::operator[](const label i) const
 {
     if (!ptrs_[i])
     {
@@ -87,7 +117,7 @@ const T& Foam::UPtrList<T>::operator[](const label i) const
 
 
 template<class T>
-T& Foam::UPtrList<T>::operator[](const label i)
+inline T& Foam::UPtrList<T>::operator[](const label i)
 {
     if (!ptrs_[i])
     {
@@ -101,7 +131,7 @@ T& Foam::UPtrList<T>::operator[](const label i)
 
 
 template<class T>
-const T* Foam::UPtrList<T>::operator()(const label i) const
+inline const T* Foam::UPtrList<T>::operator()(const label i) const
 {
     return ptrs_[i];
 }
diff --git a/src/OpenFOAM/db/Time/Time.C b/src/OpenFOAM/db/Time/Time.C
index 7405cfb5b650ccff8bf3c501025360d2976c608d..2580a6592c033041928a5ea04f100664f7caecc1 100644
--- a/src/OpenFOAM/db/Time/Time.C
+++ b/src/OpenFOAM/db/Time/Time.C
@@ -129,7 +129,7 @@ void Foam::Time::setControls()
         {
             if (timeDirs.size())
             {
-                startTime_ = timeDirs[timeDirs.size()-1].value();
+                startTime_ = timeDirs.last().value();
             }
         }
         else
@@ -419,9 +419,9 @@ Foam::instant Foam::Time::findClosestTime(const scalar t) const
     {
         return timeDirs[1];
     }
-    else if (t > timeDirs[timeDirs.size()-1].value())
+    else if (t > timeDirs.last().value())
     {
-        return timeDirs[timeDirs.size()-1];
+        return timeDirs.last();
     }
 
     label nearestIndex = -1;
@@ -532,6 +532,22 @@ bool Foam::Time::end() const
 }
 
 
+void Foam::Time::stopAt(const stopAtControls sa) const
+{
+    stopAt_ = sa;
+
+    // adjust endTime
+    if (sa == saEndTime)
+    {
+        controlDict_.lookup("endTime") >> endTime_;
+    }
+    else
+    {
+        endTime_ = GREAT;
+    }
+}
+
+
 void Foam::Time::setTime(const Time& t)
 {
     value() = t.value();
diff --git a/src/OpenFOAM/db/Time/Time.H b/src/OpenFOAM/db/Time/Time.H
index 261d9eb0a2387497147a7c4ea364465a8dd79b4e..d90cab32ec908bc776bc847895fb6e78323082ce 100644
--- a/src/OpenFOAM/db/Time/Time.H
+++ b/src/OpenFOAM/db/Time/Time.H
@@ -90,17 +90,17 @@ public:
         //- Stop-run control options
         enum stopAtControls
         {
-            saEndTime,
-            saNoWriteNow,
-            saWriteNow,
-            saNextWrite
+            saEndTime,    /*!< stop when Time reaches the prescribed endTime */
+            saNoWriteNow, /*!< set endTime to stop immediately w/o writing */
+            saWriteNow,   /*!< set endTime to stop immediately w/ writing */
+            saNextWrite   /*!< stop the next time data are written */
         };
 
-        //- Suported time directory name formats
+        //- Supported time directory name formats
         enum fmtflags
         {
-            general = 0,
-            fixed = ios_base::fixed,
+            general    = 0,
+            fixed      = ios_base::fixed,
             scientific = ios_base::scientific
         };
 
@@ -111,10 +111,10 @@ protected:
 
         label  startTimeIndex_;
         scalar startTime_;
-        scalar endTime_;
+        mutable scalar endTime_;
 
         static const NamedEnum<stopAtControls, 4> stopAtControlNames_;
-        stopAtControls stopAt_;
+        mutable stopAtControls stopAt_;
 
         static const NamedEnum<writeControls, 5> writeControlNames_;
         writeControls writeControl_;
@@ -390,6 +390,10 @@ public:
 
         // Edit
 
+            //- Adjust the current stopAtControl. Note that this value
+            //  only persists until the next time the dictionary is read.
+            virtual void 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/dictionary/dictionary.H b/src/OpenFOAM/db/dictionary/dictionary.H
index bdfb7e4a8f11c79a2f19537eb7d1270e22830796..8645dfadc0a8fb8b653178812741fb162b3a0f66 100644
--- a/src/OpenFOAM/db/dictionary/dictionary.H
+++ b/src/OpenFOAM/db/dictionary/dictionary.H
@@ -431,7 +431,7 @@ public:
             //- Clear the dictionary
             void clear();
 
-            //- Transfer the contents of the argument and annull the argument.
+            //- Transfer the contents of the argument and annul the argument.
             void transfer(dictionary&);
 
             //- Transfer contents to the Xfer container
diff --git a/src/OpenFOAM/db/dictionary/dictionaryEntry/dictionaryEntryIO.C b/src/OpenFOAM/db/dictionary/dictionaryEntry/dictionaryEntryIO.C
index 175553e23ae0007323441d6cfd795efe34400e5f..489395e43a72dea2f3270e9475169853b8876aea 100644
--- a/src/OpenFOAM/db/dictionary/dictionaryEntry/dictionaryEntryIO.C
+++ b/src/OpenFOAM/db/dictionary/dictionaryEntry/dictionaryEntryIO.C
@@ -39,7 +39,7 @@ Foam::dictionaryEntry::dictionaryEntry
     Istream& is
 )
 :
-    entry(is),
+    entry(keyType(is)),
     dictionary(parentDict, is)
 {
     is.fatalCheck
diff --git a/src/OpenFOAM/db/dictionary/entry/entry.C b/src/OpenFOAM/db/dictionary/entry/entry.C
index a3049a31519090b546ce3705324e7b164aa680f0..d153bb04e351e41b348a0d441694a266062b8d16 100644
--- a/src/OpenFOAM/db/dictionary/entry/entry.C
+++ b/src/OpenFOAM/db/dictionary/entry/entry.C
@@ -38,7 +38,6 @@ Foam::entry::entry(const keyType& keyword)
 
 Foam::entry::entry(const entry& e)
 :
-    IDLList<entry>::link(),
     keyword_(e.keyword_)
 {}
 
diff --git a/src/OpenFOAM/db/dictionary/entry/entry.H b/src/OpenFOAM/db/dictionary/entry/entry.H
index 2286c4b4ebac1284d25869196c952f9bd39dba8c..972576e51cc5c00743cb7062923012c69ddcff5b 100644
--- a/src/OpenFOAM/db/dictionary/entry/entry.H
+++ b/src/OpenFOAM/db/dictionary/entry/entry.H
@@ -77,7 +77,7 @@ class entry
     // Private Member Functions
 
         //- Get the next valid keyword otherwise return false
-        static bool getKeyword(keyType& keyword, Istream& is);
+        static bool getKeyword(keyType&, Istream&);
 
 
 public:
@@ -85,7 +85,7 @@ public:
     // Constructors
 
         //- Construct from keyword
-        entry(const keyType& keyword);
+        entry(const keyType&);
 
         //- Construct as copy
         entry(const entry&);
@@ -102,7 +102,7 @@ public:
         virtual autoPtr<entry> clone() const;
 
         //- Construct from Istream and insert into dictionary
-        static bool New(dictionary& parentDict, Istream& is);
+        static bool New(dictionary& parentDict, Istream&);
 
         //- Construct on freestore from Istream and return
         static autoPtr<entry> New(Istream& is);
diff --git a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H
index 47009d2643f9a41f8bdac6a316a1cd3e217e1a2a..92f0c43196880ee575c1b89d6e20ba9021a5e9bf 100644
--- a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H
+++ b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H
@@ -27,7 +27,7 @@ Class
 
 Description
     A functionObject wrapper around OutputFilter to allow them to be
-    created via the functions list within controlDict.
+    created via the functions entry within controlDict.
 
 Note
     Since the timeIndex is used directly from Foam::Time, it is unaffected
diff --git a/src/OpenFOAM/db/scalarRange/scalarRange.C b/src/OpenFOAM/db/scalarRange/scalarRange.C
index 393b19bba42846845b7737bdc3e125733789b5d6..239aa44c4101980ccf94312fd0767fa6fe375b26 100644
--- a/src/OpenFOAM/db/scalarRange/scalarRange.C
+++ b/src/OpenFOAM/db/scalarRange/scalarRange.C
@@ -315,7 +315,7 @@ Foam::Istream& Foam::operator>>(Istream& is, scalarRange& range)
         Info<< "rejected ill-formed range:";
         for (label i=0; i<nTok; ++i)
         {
-            Info << " " << toks[i];
+            Info<< " " << toks[i];
         }
         Info<< endl;
     }
diff --git a/src/OpenFOAM/dimensionSet/dimensionSet.C b/src/OpenFOAM/dimensionSet/dimensionSet.C
index e60a3998d449859a078c6a750e98d45181c0d999..8ae8e27a3d9281734d8ec0f4f34e77d264c5e63f 100644
--- a/src/OpenFOAM/dimensionSet/dimensionSet.C
+++ b/src/OpenFOAM/dimensionSet/dimensionSet.C
@@ -26,6 +26,7 @@ License
 
 #include "dimensionSet.H"
 #include "dimensionedScalar.H"
+#include "OStringStream.H"
 
 // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
 
@@ -79,30 +80,109 @@ Foam::dimensionSet::dimensionSet
 
 bool Foam::dimensionSet::dimensionless() const
 {
-    bool Dimensionless = true;
-
-    for (int Dimension=0; Dimension<nDimensions; Dimension++)
+    for (int Dimension=0; Dimension<nDimensions; ++Dimension)
     {
-        Dimensionless = Dimensionless &&
+        // ie, mag(exponents_[Dimension]) > smallExponent
+        if
         (
-            exponents_[Dimension] < smallExponent
-         && exponents_[Dimension] > -smallExponent
-        );
+            exponents_[Dimension] > smallExponent
+         || exponents_[Dimension] < -smallExponent
+        )
+        {
+            return false;
+        }
     }
 
-    return Dimensionless;
+    return true;
 }
 
 
 void Foam::dimensionSet::reset(const dimensionSet& ds)
 {
-    for (int Dimension=0; Dimension<nDimensions; Dimension++)
+    for (int Dimension=0; Dimension<nDimensions; ++Dimension)
     {
         exponents_[Dimension] = ds.exponents_[Dimension];
     }
 }
 
 
+Foam::string Foam::dimensionSet::asText() const
+{
+    OStringStream buf;
+
+    bool Dimensionless = true;
+
+    for (int Dimension=0; Dimension < dimensionSet::nDimensions-1; ++Dimension)
+    {
+        const scalar& expt = exponents_[Dimension];
+
+        if (expt < smallExponent && expt > -smallExponent)
+        {
+            continue;
+        }
+
+        if (Dimensionless)
+        {
+            Dimensionless = false;
+        }
+        else
+        {
+            buf << ' ';
+        }
+
+        // note: currently only handle SI
+        switch (Dimension)
+        {
+            case MASS:
+                buf << "kg";
+                break;
+
+            case LENGTH:
+                buf << "m";
+                break;
+
+            case TIME:
+                buf << "s";
+                break;
+
+            case TEMPERATURE:
+                buf << "K";
+                break;
+
+            case MOLES:
+                buf << "mol";
+                break;
+
+            case CURRENT:
+                buf << "A";
+                break;
+
+            case LUMINOUS_INTENSITY:
+                buf << "Cd";
+                break;
+
+            default:
+                buf << "??";  // this shouldn't be - flag as being weird
+                break;
+        }
+
+        if (expt != 1)
+        {
+            buf << '^' << expt;
+        }
+    }
+
+    if (Dimensionless)
+    {
+        return "none";
+    }
+    else
+    {
+        return buf.str();
+    }
+}
+
+
 // * * * * * * * * * * * * * * * Member Operators  * * * * * * * * * * * * * //
 
 Foam::scalar Foam::dimensionSet::operator[](const dimensionType type) const
@@ -119,16 +199,19 @@ Foam::scalar& Foam::dimensionSet::operator[](const dimensionType type)
 
 bool Foam::dimensionSet::operator==(const dimensionSet& ds) const
 {
-    bool equall = true;
-
-    for (int Dimension=0; Dimension<nDimensions; Dimension++)
+    for (int Dimension=0; Dimension < nDimensions; ++Dimension)
     {
-        equall = equall &&
-            (mag(exponents_[Dimension] - ds.exponents_[Dimension])
-          < smallExponent);
+        if
+        (
+            mag(exponents_[Dimension] - ds.exponents_[Dimension])
+          > smallExponent
+        )
+        {
+            return false;
+        }
     }
 
-    return equall;
+    return true;
 }
 
 
@@ -142,7 +225,7 @@ bool Foam::dimensionSet::operator=(const dimensionSet& ds) const
 {
     if (dimensionSet::debug && *this != ds)
     {
-        FatalErrorIn("dimensionSet::operator=(const dimensionSet& ds) const")
+        FatalErrorIn("dimensionSet::operator=(const dimensionSet&) const")
             << "Different dimensions for =" << endl
             << "     dimensions : " << *this << " = " << ds << endl
             << abort(FatalError);
@@ -156,7 +239,7 @@ bool Foam::dimensionSet::operator+=(const dimensionSet& ds) const
 {
     if (dimensionSet::debug && *this != ds)
     {
-        FatalErrorIn("dimensionSet::operator+=(const dimensionSet& ds) const")
+        FatalErrorIn("dimensionSet::operator+=(const dimensionSet&) const")
             << "Different dimensions for +=" << endl
             << "     dimensions : " << *this << " = " << ds << endl
             << abort(FatalError);
@@ -170,7 +253,7 @@ bool Foam::dimensionSet::operator-=(const dimensionSet& ds) const
 {
     if (dimensionSet::debug && *this != ds)
     {
-        FatalErrorIn("dimensionSet::operator-=(const dimensionSet& ds) const")
+        FatalErrorIn("dimensionSet::operator-=(const dimensionSet&) const")
             << "Different dimensions for -=" << endl
             << "     dimensions : " << *this << " = " << ds << endl
             << abort(FatalError);
@@ -202,7 +285,7 @@ Foam::dimensionSet Foam::max(const dimensionSet& ds1, const dimensionSet& ds2)
 {
     if (dimensionSet::debug && ds1 != ds2)
     {
-        FatalErrorIn("max(const dimensionSet& ds1, const dimensionSet& ds2)")
+        FatalErrorIn("max(const dimensionSet&, const dimensionSet&)")
             << "Arguments of max have different dimensions" << endl
             << "     dimensions : " << ds1 << " and " << ds2 << endl
             << abort(FatalError);
@@ -216,7 +299,7 @@ Foam::dimensionSet Foam::min(const dimensionSet& ds1, const dimensionSet& ds2)
 {
     if (dimensionSet::debug && ds1 != ds2)
     {
-        FatalErrorIn("min(const dimensionSet& ds1, const dimensionSet& ds2)")
+        FatalErrorIn("min(const dimensionSet&, const dimensionSet&)")
             << "Arguments of min have different dimensions" << endl
             << "     dimensions : " << ds1 << " and " << ds2 << endl
             << abort(FatalError);
@@ -271,8 +354,8 @@ Foam::dimensionSet Foam::pow
 {
     if (dimensionSet::debug && !dS.dimensions().dimensionless())
     {
-        FatalErrorIn("pow(const dimensionSet& ds, const dimensionedScalar& dS)")
-            << "Exponent of pow are not dimensionless"
+        FatalErrorIn("pow(const dimensionSet&, const dimensionedScalar&)")
+            << "Exponent of pow is not dimensionless"
             << abort(FatalError);
     }
 
@@ -301,9 +384,10 @@ Foam::dimensionSet Foam::pow
     (
         dimensionSet::debug
      && !dS.dimensions().dimensionless()
-     && !ds.dimensionless())
+     && !ds.dimensionless()
+    )
     {
-        FatalErrorIn("pow(const dimensionedScalar& dS, const dimensionSet& ds)")
+        FatalErrorIn("pow(const dimensionedScalar&, const dimensionSet&)")
             << "Argument or exponent of pow not dimensionless" << endl
             << abort(FatalError);
     }
@@ -394,7 +478,7 @@ Foam::dimensionSet Foam::trans(const dimensionSet& ds)
 {
     if (dimensionSet::debug && !ds.dimensionless())
     {
-        FatalErrorIn("trans(const dimensionSet& ds)")
+        FatalErrorIn("trans(const dimensionSet&)")
             << "Argument of trancendental function not dimensionless"
             << abort(FatalError);
     }
@@ -428,7 +512,7 @@ Foam::dimensionSet Foam::operator+
     if (dimensionSet::debug && ds1 != ds2)
     {
         FatalErrorIn
-            ("operator+(const dimensionSet& ds1, const dimensionSet& ds2)")
+            ("operator+(const dimensionSet&, const dimensionSet&)")
             << "LHS and RHS of + have different dimensions" << endl
             << "     dimensions : " << ds1 << " + " << ds2 << endl
             << abort(FatalError);
@@ -449,7 +533,7 @@ Foam::dimensionSet Foam::operator-
     if (dimensionSet::debug && ds1 != ds2)
     {
         FatalErrorIn
-            ("operator-(const dimensionSet& ds1, const dimensionSet& ds2)")
+            ("operator-(const dimensionSet&, const dimensionSet&)")
             << "LHS and RHS of - have different dimensions" << endl
             << "     dimensions : " << ds1 << " - " << ds2 << endl
             << abort(FatalError);
diff --git a/src/OpenFOAM/dimensionSet/dimensionSet.H b/src/OpenFOAM/dimensionSet/dimensionSet.H
index 13b0a899a9c87507d022fd5745f3c1cbad711bdc..67ca74b3c9b77bf7b70ae5ba9306ccb06b49b73c 100644
--- a/src/OpenFOAM/dimensionSet/dimensionSet.H
+++ b/src/OpenFOAM/dimensionSet/dimensionSet.H
@@ -27,6 +27,7 @@ Class
 
 Description
     Dimension set for the base types.
+
     This type may be used to implement rigorous dimension checking
     for algebraic manipulation.
 
@@ -105,7 +106,7 @@ Ostream& operator<<(Ostream&, const dimensionSet&);
 
 
 /*---------------------------------------------------------------------------*\
-                           Class dimensionSet Declaration
+                        Class dimensionSet Declaration
 \*---------------------------------------------------------------------------*/
 
 class dimensionSet
@@ -184,9 +185,14 @@ public:
 
     // Member functions
 
+        //- Return true if it is dimensionless
         bool dimensionless() const;
+
         void reset(const dimensionSet&);
 
+        //- Return a text representation for added readability
+        string asText() const;
+
 
     // Member operators
 
diff --git a/src/OpenFOAM/fields/FieldFields/FieldField/FieldFieldFunctions.C b/src/OpenFOAM/fields/FieldFields/FieldField/FieldFieldFunctions.C
index c0600bd97c4afc124d10ddc6eeaafc3f674c4c51..a5418574f6ae5c8e3e1affa3e9b2f2df7adb1e2a 100644
--- a/src/OpenFOAM/fields/FieldFields/FieldField/FieldFieldFunctions.C
+++ b/src/OpenFOAM/fields/FieldFields/FieldField/FieldFieldFunctions.C
@@ -412,7 +412,7 @@ template<template<class> class Field, class Type>
 Type max(const FieldField<Field, Type>& f)
 {
     label i = 0;
-    while(i < f.size() && !f[i].size()) i++;
+    while (i < f.size() && !f[i].size()) i++;
 
     if (i < f.size())
     {
@@ -440,12 +440,12 @@ template<template<class> class Field, class Type>
 Type min(const FieldField<Field, Type>& f)
 {
     label i = 0;
-    while(i < f.size() && !f[i].size()) i++;
+    while (i < f.size() && !f[i].size()) i++;
 
     if (i < f.size())
     {
         label i = 0;
-        while(!f[i].size()) i++;
+        while (!f[i].size()) i++;
 
         Type Min(min(f[i]));
 
diff --git a/src/OpenFOAM/interpolations/patchToPatchInterpolation/CalcPatchToPatchWeights.C b/src/OpenFOAM/interpolations/patchToPatchInterpolation/CalcPatchToPatchWeights.C
index 534cb5e1075d67fff0fc0742a4d730d801bc0c87..2f1945ac8edd9a2c81438be7eee5bb409b7930ab 100644
--- a/src/OpenFOAM/interpolations/patchToPatchInterpolation/CalcPatchToPatchWeights.C
+++ b/src/OpenFOAM/interpolations/patchToPatchInterpolation/CalcPatchToPatchWeights.C
@@ -63,7 +63,7 @@ void PatchToPatchInterpolation<FromPatch, ToPatch>::calcPointAddressing() const
 
     if (debug)
     {
-        Info << "projecting points" << endl;
+        Info<< "projecting points" << endl;
     }
 
     List<objectHit> proj =
@@ -139,7 +139,7 @@ void PatchToPatchInterpolation<FromPatch, ToPatch>::calcPointAddressing() const
                   + projectionDirection[pointI]*ph.distance()
                   - ph.missPoint()
                 );
-                
+
             // Calculate the local tolerance
             scalar minEdgeLength = GREAT;
 
@@ -244,7 +244,7 @@ void PatchToPatchInterpolation<FromPatch, ToPatch>::calcFaceAddressing() const
 
     if (debug)
     {
-        Info << "projecting face centres" << endl;
+        Info<< "projecting face centres" << endl;
     }
 
     const pointField& fromPatchPoints = fromPatch_.points();
@@ -274,7 +274,7 @@ void PatchToPatchInterpolation<FromPatch, ToPatch>::calcFaceAddressing() const
         );
 
     faceAddressingPtr_ = new labelList(proj.size(), -1);
-    labelList& faceAddressing = *faceAddressingPtr_;        
+    labelList& faceAddressing = *faceAddressingPtr_;
 
     forAll (faceAddressing, faceI)
     {
diff --git a/src/OpenFOAM/matrices/Matrix/Matrix.H b/src/OpenFOAM/matrices/Matrix/Matrix.H
index b674956e2f2f1e9d8fc2b3fb36ccd01f5c0e3ef2..0847578edd5682463abdbc987f7ef28cbd9b194e 100644
--- a/src/OpenFOAM/matrices/Matrix/Matrix.H
+++ b/src/OpenFOAM/matrices/Matrix/Matrix.H
@@ -151,7 +151,7 @@ public:
             void clear();
 
             //- Transfer the contents of the argument Matrix into this Matrix
-            //  and annull the argument Matrix.
+            //  and annul the argument Matrix.
             void transfer(Matrix<Form, Type>&);
 
 
diff --git a/src/OpenFOAM/matrices/scalarMatrices/SVD/SVD.C b/src/OpenFOAM/matrices/scalarMatrices/SVD/SVD.C
index 585c8c2dda427af99d6e0a4bb76e12be9e52d58c..3576c701c5ed88c3d1b4963c8b99723e569abd5b 100644
--- a/src/OpenFOAM/matrices/scalarMatrices/SVD/SVD.C
+++ b/src/OpenFOAM/matrices/scalarMatrices/SVD/SVD.C
@@ -368,7 +368,7 @@ Foam::SVD::SVD(const scalarRectangularMatrix& A, const scalar minCondition)
     {
         if (S_[i] <= minS)
         {
-            //Info << "Removing " << S_[i] << " < " << minS << endl;
+            //Info<< "Removing " << S_[i] << " < " << minS << endl;
             S_[i] = 0;
             nZeros_++;
         }
@@ -382,19 +382,19 @@ Foam::SVD::SVD(const scalarRectangularMatrix& A, const scalar minCondition)
     multiply(SVDA, U_, S_, transpose(V_));
     scalar maxDiff = 0;
     scalar diff = 0;
-    for(label i = 0; i < A.n(); i++)
+    for (label i = 0; i < A.n(); i++)
     {
-        for(label j = 0; j < A.m(); j++)
+        for (label j = 0; j < A.m(); j++)
         {
             diff = mag(A[i][j] - SVDA[i][j]);
             if (diff > maxDiff) maxDiff = diff;
         }
     }
-    Info << "Maximum discrepancy between A and svd(A) = " << maxDiff << endl;
+    Info<< "Maximum discrepancy between A and svd(A) = " << maxDiff << endl;
 
     if (maxDiff > 4)
     {
-        Info << "singular values " << S_ << endl;
+        Info<< "singular values " << S_ << endl;
     }
     */
 }
diff --git a/src/OpenFOAM/matrices/scalarMatrices/SVD/SVDI.H b/src/OpenFOAM/matrices/scalarMatrices/SVD/SVDI.H
index 82d6c5a6c2545b4927bfaf0c017843db49d21d0f..9f406440cda09d51fcfbe4ed7eac30ec97b9cf7a 100644
--- a/src/OpenFOAM/matrices/scalarMatrices/SVD/SVDI.H
+++ b/src/OpenFOAM/matrices/scalarMatrices/SVD/SVDI.H
@@ -63,7 +63,7 @@ inline Foam::label Foam::SVD::nZeros() const
 inline Foam::scalar Foam::SVD::minNonZeroS() const
 {
     scalar minS = S_[0];
-    for(label i = 1; i < S_.size(); i++)
+    for (label i = 1; i < S_.size(); i++)
     {
         scalar s = S_[i];
         if (s > VSMALL && s < minS) minS = s;
diff --git a/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.C b/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.C
index 53fdf6ecfe786eabe194d8d53e635cf1dc6d7480..56fe4f6742cf9ec79bacd29b2a516c906e6e651e 100644
--- a/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.C
+++ b/src/OpenFOAM/matrices/scalarMatrices/scalarMatrices.C
@@ -159,11 +159,11 @@ void Foam::multiply
 
     ans = scalarRectangularMatrix(A.n(), B.m(), scalar(0));
 
-    for(register label i = 0; i < A.n(); i++)
+    for (register label i = 0; i < A.n(); i++)
     {
-        for(register label j = 0; j < B.m(); j++)
+        for (register label j = 0; j < B.m(); j++)
         {
-            for(register label l = 0; l < B.n(); l++)
+            for (register label l = 0; l < B.n(); l++)
             {
                 ans[i][j] += A[i][l]*B[l][j];
             }
@@ -210,14 +210,14 @@ void Foam::multiply
 
     ans = scalarRectangularMatrix(A.n(), C.m(), scalar(0));
 
-    for(register label i = 0; i < A.n(); i++)
+    for (register label i = 0; i < A.n(); i++)
     {
-        for(register label g = 0; g < C.m(); g++)
+        for (register label g = 0; g < C.m(); g++)
         {
-            for(register label l = 0; l < C.n(); l++)
+            for (register label l = 0; l < C.n(); l++)
             {
                 scalar ab = 0;
-                for(register label j = 0; j < A.m(); j++)
+                for (register label j = 0; j < A.m(); j++)
                 {
                     ab += A[i][j]*B[j][l];
                 }
@@ -266,11 +266,11 @@ void Foam::multiply
 
     ans = scalarRectangularMatrix(A.n(), C.m(), scalar(0));
 
-    for(register label i = 0; i < A.n(); i++)
+    for (register label i = 0; i < A.n(); i++)
     {
-        for(register label g = 0; g < C.m(); g++)
+        for (register label g = 0; g < C.m(); g++)
         {
-            for(register label l = 0; l < C.n(); l++)
+            for (register label l = 0; l < C.n(); l++)
             {
                 ans[i][g] += C[l][g] * A[i][l]*B[l];
             }
diff --git a/src/OpenFOAM/meshes/meshShapes/cellMatcher/cellMatcher.C b/src/OpenFOAM/meshes/meshShapes/cellMatcher/cellMatcher.C
index dffd5db8bb6b6b599bb8c50a1f56a5bd52b938f4..93046b330794c8c8ed6b984ee4699029b4c965f3 100644
--- a/src/OpenFOAM/meshes/meshShapes/cellMatcher/cellMatcher.C
+++ b/src/OpenFOAM/meshes/meshShapes/cellMatcher/cellMatcher.C
@@ -284,7 +284,7 @@ void Foam::cellMatcher::write(Foam::Ostream& os) const
     {
         os  << "    ";
 
-        for(label fp = 0; fp < faceSize_[faceI]; fp++)
+        for (label fp = 0; fp < faceSize_[faceI]; fp++)
         {
             os  << ' ' << localFaces_[faceI][fp];
         }
diff --git a/src/OpenFOAM/meshes/meshShapes/cellMatcher/tetWedgeMatcher.C b/src/OpenFOAM/meshes/meshShapes/cellMatcher/tetWedgeMatcher.C
index 00aacad3ad32cca4bea904603d550b3aca771ddd..af815d5873636a49a1b20202c602e361efc22a82 100644
--- a/src/OpenFOAM/meshes/meshShapes/cellMatcher/tetWedgeMatcher.C
+++ b/src/OpenFOAM/meshes/meshShapes/cellMatcher/tetWedgeMatcher.C
@@ -116,7 +116,7 @@ bool Foam::tetWedgeMatcher::matchShape
     const face& face0 = localFaces_[face0I];
 
     // Try all rotations of this face
-    for(label face0vert0 = 0; face0vert0 < faceSize_[face0I]; face0vert0++)
+    for (label face0vert0 = 0; face0vert0 < faceSize_[face0I]; face0vert0++)
     {
         //
         // Try to follow prespecified path on faces of cell,
diff --git a/src/OpenFOAM/meshes/meshShapes/cellMatcher/wedgeMatcher.C b/src/OpenFOAM/meshes/meshShapes/cellMatcher/wedgeMatcher.C
index 79af03bad80b00081f44df4b802f71e74d5cd049..97512ad427ebfe72cec5174558e1e72ec067e0e0 100644
--- a/src/OpenFOAM/meshes/meshShapes/cellMatcher/wedgeMatcher.C
+++ b/src/OpenFOAM/meshes/meshShapes/cellMatcher/wedgeMatcher.C
@@ -108,7 +108,7 @@ bool Foam::wedgeMatcher::matchShape
     const face& face0 = localFaces_[face0I];
 
     // Try all rotations of this face
-    for(label face0vert0 = 0; face0vert0 < faceSize_[face0I]; face0vert0++)
+    for (label face0vert0 = 0; face0vert0 < faceSize_[face0I]; face0vert0++)
     {
         //
         // Try to follow prespecified path on faces of cell,
diff --git a/src/OpenFOAM/meshes/meshShapes/face/face.C b/src/OpenFOAM/meshes/meshShapes/face/face.C
index 55be336fa21d507fb467995251712a1a6e449ead..6e3d88979ee0f0852135aa2cfe3188998f1b91b0 100644
--- a/src/OpenFOAM/meshes/meshShapes/face/face.C
+++ b/src/OpenFOAM/meshes/meshShapes/face/face.C
@@ -216,7 +216,7 @@ Foam::label Foam::face::split
         label minIndex = index;
         scalar minDiff = constant::mathematical::pi;
 
-        for(label i = 0; i < size() - 3; i++)
+        for (label i = 0; i < size() - 3; i++)
         {
             vector splitEdge
             (
diff --git a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C
index a111e0435da52d5386bb6b71e5af144b4e285cef..07bb357ff34bb39318d0638c1491779cd3509c79 100644
--- a/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C
+++ b/src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C
@@ -598,7 +598,7 @@ bool Foam::polyBoundaryMesh::checkDefinition(const bool report) const
         }
         else
         {
-            Info << "    Boundary definition OK." << endl;
+            Info<< "    Boundary definition OK." << endl;
         }
     }
 
diff --git a/src/OpenFOAM/meshes/polyMesh/polyMeshFromShapeMesh.C b/src/OpenFOAM/meshes/polyMesh/polyMeshFromShapeMesh.C
index f1cc51cb9ec05fd5f3261584f6b92391eda8316b..1a86588c7457762200a9f5a6be7510da8c6e38b6 100644
--- a/src/OpenFOAM/meshes/polyMesh/polyMeshFromShapeMesh.C
+++ b/src/OpenFOAM/meshes/polyMesh/polyMeshFromShapeMesh.C
@@ -614,7 +614,7 @@ Foam::polyMesh::polyMesh
     {
         if (checkMesh())
         {
-            Info << "Mesh OK" << endl;
+            Info<< "Mesh OK" << endl;
         }
     }
 }
diff --git a/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C b/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C
index b8b133ed0115b19a32545ae24c098e93b4b6c2f9..f1bbabc460e1089748d401b13a2cd1f4b54b345b 100644
--- a/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C
+++ b/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C
@@ -89,7 +89,7 @@ Foam::polyMesh::readUpdateState Foam::polyMesh::readUpdate()
         // Topological change
         if (debug)
         {
-            Info << "Topological change" << endl;
+            Info<< "Topological change" << endl;
         }
 
         clearOut();
@@ -403,7 +403,7 @@ Foam::polyMesh::readUpdateState Foam::polyMesh::readUpdate()
         // Points moved
         if (debug)
         {
-            Info << "Point motion" << endl;
+            Info<< "Point motion" << endl;
         }
 
         clearGeom();
@@ -430,14 +430,14 @@ Foam::polyMesh::readUpdateState Foam::polyMesh::readUpdate()
         // Rotation can cause direction vector to change
         geometricD_ = Vector<label>::zero;
         solutionD_ = Vector<label>::zero;
-        
+
         return polyMesh::POINTS_MOVED;
     }
     else
     {
         if (debug)
         {
-            Info << "No change" << endl;
+            Info<< "No change" << endl;
         }
 
         return polyMesh::UNCHANGED;
diff --git a/src/OpenFOAM/meshes/polyMesh/zones/faceZone/faceZone.C b/src/OpenFOAM/meshes/polyMesh/zones/faceZone/faceZone.C
index bf4ce6725503c42165164fe17fa2ceccea5d9b1a..e3e15e8574b056f8f04757dbcbebb23dd585e7fd 100644
--- a/src/OpenFOAM/meshes/polyMesh/zones/faceZone/faceZone.C
+++ b/src/OpenFOAM/meshes/polyMesh/zones/faceZone/faceZone.C
@@ -156,8 +156,8 @@ void Foam::faceZone::calcCellLayers() const
                 sc[faceI] = neiCellI;
             }
         }
-        //Info << "masterCells: " << mc << endl;
-        //Info << "slaveCells: " << sc << endl;
+        //Info<< "masterCells: " << mc << endl;
+        //Info<< "slaveCells: " << sc << endl;
     }
 }
 
diff --git a/src/OpenFOAM/meshes/preservePatchTypes/preservePatchTypes.C b/src/OpenFOAM/meshes/preservePatchTypes/preservePatchTypes.C
index 3def20788466e12d27ee361d361324d7cfb2a130..0c73d3e46a8dd56313250c9e4dff181cf44dc8b5 100644
--- a/src/OpenFOAM/meshes/preservePatchTypes/preservePatchTypes.C
+++ b/src/OpenFOAM/meshes/preservePatchTypes/preservePatchTypes.C
@@ -74,7 +74,7 @@ void Foam::preservePatchTypes
         {
             if (patchDictionary.found(patchNames[patchi]))
             {
-                const dictionary& patchDict = 
+                const dictionary& patchDict =
                     patchDictionary.subDict(patchNames[patchi]);
 
                 patchDict.lookup("type") >> patchTypes[patchi];
@@ -90,14 +90,14 @@ void Foam::preservePatchTypes
 
         if (patchDictionary.found(defaultFacesName))
         {
-            const dictionary& patchDict = 
+            const dictionary& patchDict =
                 patchDictionary.subDict(defaultFacesName);
 
             patchDict.readIfPresent("geometricType", defaultFacesType);
         }
     }
 
-    Info << nl << "Default patch type set to " << defaultFacesType << endl;
+    Info<< nl << "Default patch type set to " << defaultFacesType << endl;
 }
 
 
diff --git a/src/OpenFOAM/meshes/primitiveMesh/PatchTools/PatchToolsCheck.C b/src/OpenFOAM/meshes/primitiveMesh/PatchTools/PatchToolsCheck.C
index a644cd1934901290b85d83305034cb6f2bdf3d9d..1d74afb48ab435342d4136dac8095641df0432d3 100644
--- a/src/OpenFOAM/meshes/primitiveMesh/PatchTools/PatchToolsCheck.C
+++ b/src/OpenFOAM/meshes/primitiveMesh/PatchTools/PatchToolsCheck.C
@@ -95,7 +95,7 @@ Foam::PatchTools::checkOrientation
         const Face& f = p[faceI];
         const point& p0 = p.points()[f[0]];
         const point& p1 = p.points()[f[1]];
-        const point& p2 = p.points()[f[f.size()-1]];
+        const point& p2 = p.points()[f.last()];
 
         const vector pointNormal((p1 - p0) ^ (p2 - p0));
         if ((pointNormal & p.faceNormals()[faceI]) < 0)
diff --git a/src/OpenFOAM/meshes/primitiveMesh/PrimitivePatch/PrimitivePatchProjectPoints.C b/src/OpenFOAM/meshes/primitiveMesh/PrimitivePatch/PrimitivePatchProjectPoints.C
index e90bbd96ece786c9e1ff495ebcf09f76dd070d27..55e97b3681589376b3412f6de1bd288bb97a76ac 100644
--- a/src/OpenFOAM/meshes/primitiveMesh/PrimitivePatch/PrimitivePatchProjectPoints.C
+++ b/src/OpenFOAM/meshes/primitiveMesh/PrimitivePatch/PrimitivePatchProjectPoints.C
@@ -262,7 +262,7 @@ projectPoints
 
             if (debug)
             {
-                Info << result[curLocalPointLabel] << nl;
+                Info<< result[curLocalPointLabel] << nl;
             }
         }
         else
@@ -505,7 +505,7 @@ projectFaceCentres
 
             if (debug)
             {
-                Info << result[curLocalFaceLabel] << nl;
+                Info<< result[curLocalFaceLabel] << nl;
             }
         }
         else
diff --git a/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshCheck/primitiveMeshCheck.C b/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshCheck/primitiveMeshCheck.C
index 5dda9f504d68d0a1fbf342e46bea069585dfc19d..9ca9d2d416af2fff447fad1bdb7413283720d60e 100644
--- a/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshCheck/primitiveMeshCheck.C
+++ b/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshCheck/primitiveMeshCheck.C
@@ -175,7 +175,7 @@ bool Foam::primitiveMesh::checkClosedCells
     {
         scalar maxOpenness = 0;
 
-        for(direction cmpt=0; cmpt<vector::nComponents; cmpt++)
+        for (direction cmpt=0; cmpt<vector::nComponents; cmpt++)
         {
             maxOpenness = max
             (
@@ -654,7 +654,7 @@ bool Foam::primitiveMesh::checkFaceSkewness
             nWarnSkew++;
         }
 
-        if(skewness > maxSkew)
+        if (skewness > maxSkew)
         {
             maxSkew = skewness;
         }
@@ -702,7 +702,7 @@ bool Foam::primitiveMesh::checkFaceSkewness
             nWarnSkew++;
         }
 
-        if(skewness > maxSkew)
+        if (skewness > maxSkew)
         {
             maxSkew = skewness;
         }
@@ -856,7 +856,7 @@ bool Foam::primitiveMesh::checkFaceAngles
         const face& f = fcs[faceI];
 
         // Get edge from f[0] to f[size-1];
-        vector ePrev(p[f[0]] - p[f[f.size()-1]]);
+        vector ePrev(p[f.first()] - p[f.last()]);
         scalar magEPrev = mag(ePrev);
         ePrev /= magEPrev + VSMALL;
 
diff --git a/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshEdges.C b/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshEdges.C
index b7278ecf4900e0b871d667041dcf3fe18b2938cc..38f8597985e2c03b43d736180e1a7f07a9674795 100644
--- a/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshEdges.C
+++ b/src/OpenFOAM/meshes/primitiveMesh/primitiveMeshEdges.C
@@ -468,7 +468,7 @@ Foam::label Foam::primitiveMesh::findFirstCommonElementFromSortedLists
 
     while (iter1 != list1.end() && iter2 != list2.end())
     {
-        if( *iter1 < *iter2)
+        if (*iter1 < *iter2)
         {
             ++iter1;
         }
diff --git a/src/OpenFOAM/meshes/primitiveMesh/primitivePatch/patchZones.C b/src/OpenFOAM/meshes/primitiveMesh/primitivePatch/patchZones.C
index ef48f93ba0e26528c578980a691907ac7e9e68c7..1fb91286e1003fa5dd5b507f6ccfaae3b2f485a9 100644
--- a/src/OpenFOAM/meshes/primitiveMesh/primitivePatch/patchZones.C
+++ b/src/OpenFOAM/meshes/primitiveMesh/primitivePatch/patchZones.C
@@ -114,7 +114,7 @@ void Foam::patchZones::markZone(label faceI)
     // Zones on all edges.
     labelList edgeZone(pp_.nEdges(), -1);
 
-    while(1)
+    while (true)
     {
         changedEdges = faceToEdge(changedFaces, edgeZone);
 
diff --git a/src/OpenFOAM/primitives/hashes/SHA1/SHA1.C b/src/OpenFOAM/primitives/hashes/SHA1/SHA1.C
index 7bf07845e2f87f1200bfb6c3b8380f03e945a2ef..db45597ba705b4b9dacf9890d2b0b24f8b68179e 100644
--- a/src/OpenFOAM/primitives/hashes/SHA1/SHA1.C
+++ b/src/OpenFOAM/primitives/hashes/SHA1/SHA1.C
@@ -223,7 +223,7 @@ Foam::SHA1::processBlock(const void *data, size_t len)
     {                                                                         \
         E += rol_uint32(A, 5) + F(B, C, D) + K + M;                           \
         B = rol_uint32(B, 30);                                                \
-    } while(0)
+    } while (0)
 
     while (words < endp)
     {
diff --git a/src/conversion/meshReader/meshReaderAux.C b/src/conversion/meshReader/meshReaderAux.C
index 856d704857cdabb3a6ffbdfcc9660041ee42ec9b..9b1c9f2bdfa48334050a744dfa7ff64e0b547a35 100644
--- a/src/conversion/meshReader/meshReaderAux.C
+++ b/src/conversion/meshReader/meshReaderAux.C
@@ -58,15 +58,15 @@ void Foam::meshReader::warnDuplicates
     // warn about duplicate names
     if (duplicates)
     {
-        Info << nl << "WARNING: " << context << " with identical names:";
+        Info<< nl << "WARNING: " << context << " with identical names:";
         forAllConstIter(HashTable<label>, hashed, iter)
         {
             if (*iter > 1)
             {
-                Info << "  " << iter.key();
+                Info<< "  " << iter.key();
             }
         }
-        Info << nl << endl;
+        Info<< nl << endl;
     }
 }
 
diff --git a/src/conversion/meshWriter/starcd/STARCDMeshWriter.C b/src/conversion/meshWriter/starcd/STARCDMeshWriter.C
index 15d681898ee24c907d8bb8cb19647bf6d4ccae1d..0bb4632cce7ee5aae608df2b543da2d30e47dfb2 100644
--- a/src/conversion/meshWriter/starcd/STARCDMeshWriter.C
+++ b/src/conversion/meshWriter/starcd/STARCDMeshWriter.C
@@ -554,7 +554,7 @@ bool Foam::meshWriters::STARCD::writeSurface
     OFstream celFile(baseName + ".cel");
     writeHeader(celFile, "CELL");
 
-    Info << "Writing " << celFile.name() << endl;
+    Info<< "Writing " << celFile.name() << endl;
 
     // mesh and patch info
     const pointField& points = mesh_.points();
@@ -693,7 +693,7 @@ bool Foam::meshWriters::STARCD::writeSurface
     vrtFile.precision(10);
     vrtFile.setf(std::ios::showpoint);  // force decimal point for Fortran
 
-    Info << "Writing " << vrtFile.name() << endl;
+    Info<< "Writing " << vrtFile.name() << endl;
 
     // build sorted table of contents
     SortableList<label> toc(pointHash.size());
diff --git a/src/conversion/polyDualMesh/polyDualMesh.C b/src/conversion/polyDualMesh/polyDualMesh.C
index 1332d90fd4bdab5cb3168c854f777a9d01ea5b49..1d04252b1e726a74d14a8b0d8688c1c22378a08e 100644
--- a/src/conversion/polyDualMesh/polyDualMesh.C
+++ b/src/conversion/polyDualMesh/polyDualMesh.C
@@ -1015,7 +1015,7 @@ void Foam::polyDualMesh::calcDual
 
         {
             // Check orientation.
-            const face& f = dynDualFaces[dynDualFaces.size()-1];
+            const face& f = dynDualFaces.last();
             vector n = f.normal(dualPoints);
             if (((mesh.points()[owner] - dualPoints[f[0]]) & n) > 0)
             {
@@ -1130,7 +1130,7 @@ void Foam::polyDualMesh::calcDual
 
             {
                 // Check orientation.
-                const face& f = dynDualFaces[dynDualFaces.size()-1];
+                const face& f = dynDualFaces.last();
                 vector n = f.normal(dualPoints);
                 if (((mesh.points()[owner] - dualPoints[f[0]]) & n) > 0)
                 {
diff --git a/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C b/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C
index c58fa9852e12b2a54976a86e5abf61451c49c01b..9660994749f9aae5d5c5f2f5dff43eb3d6e1a9c2 100644
--- a/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C
+++ b/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C
@@ -88,14 +88,14 @@ Foam::solidBodyMotionFunctions::tabulated6DoFMotion::transformation() const
             << exit(FatalError);
     }
 
-    if (t > times_[times_.size()-1])
+    if (t > times_.last())
     {
         FatalErrorIn
         (
             "solidBodyMotionFunctions::tabulated6DoFMotion::transformation()"
         )   << "current time (" << t
             << ") is greater than the maximum in the data table ("
-            << times_[times_.size()-1] << ')'
+            << times_.last() << ')'
             << exit(FatalError);
     }
 
diff --git a/src/dynamicMesh/boundaryMesh/boundaryMesh.C b/src/dynamicMesh/boundaryMesh/boundaryMesh.C
index b71e0a569ed0fe75a3b85313dc22e2fbc4e6e829..2ca4973e7c13c29cc25d85f077608f5f5f5739e5 100644
--- a/src/dynamicMesh/boundaryMesh/boundaryMesh.C
+++ b/src/dynamicMesh/boundaryMesh/boundaryMesh.C
@@ -390,7 +390,7 @@ void Foam::boundaryMesh::markZone
     // Zones on all edges.
     labelList edgeZone(mesh().nEdges(), -1);
 
-    while(1)
+    while (true)
     {
         changedEdges = faceToEdge
         (
diff --git a/src/dynamicMesh/motionSmoother/motionSmoother.C b/src/dynamicMesh/motionSmoother/motionSmoother.C
index d780ec79dde3dc9d33c007b0a3ddc73271d72b69..b4288c200734e7e635f74c9b96949e37154c1b30 100644
--- a/src/dynamicMesh/motionSmoother/motionSmoother.C
+++ b/src/dynamicMesh/motionSmoother/motionSmoother.C
@@ -65,7 +65,7 @@ void Foam::motionSmoother::makePatchPatchAddressing()
 
     forAll(bm, patchi)
     {
-        if(!isA<emptyPolyPatch>(bm[patchi]))
+        if (!isA<emptyPolyPatch>(bm[patchi]))
         {
             nPatchPatchPoints += bm[patchi].boundaryPoints().size();
         }
@@ -83,7 +83,7 @@ void Foam::motionSmoother::makePatchPatchAddressing()
 
     forAll(bm, patchi)
     {
-        if(!isA<emptyPolyPatch>(bm[patchi]))
+        if (!isA<emptyPolyPatch>(bm[patchi]))
         {
             const labelList& bp = bm[patchi].boundaryPoints();
             const labelList& meshPoints = bm[patchi].meshPoints();
diff --git a/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C b/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C
index 232c19d6b5bcdcf8db5c2f9575835ef9cb2b0b69..4ea2fa926067f395da7be27f6e7f68dcca4283eb 100644
--- a/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C
+++ b/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C
@@ -51,7 +51,7 @@ void Foam::motionSmoother::checkConstraints
 
     forAll(bm, patchi)
     {
-        if(!isA<emptyPolyPatch>(bm[patchi]))
+        if (!isA<emptyPolyPatch>(bm[patchi]))
         {
             nPatchPatchPoints += bm[patchi].boundaryPoints().size();
         }
@@ -81,7 +81,7 @@ void Foam::motionSmoother::checkConstraints
 
     forAll(bm, patchi)
     {
-        if(!isA<emptyPolyPatch>(bm[patchi]))
+        if (!isA<emptyPolyPatch>(bm[patchi]))
         {
             const labelList& bp = bm[patchi].boundaryPoints();
             const labelList& meshPoints = bm[patchi].meshPoints();
@@ -93,7 +93,7 @@ void Foam::motionSmoother::checkConstraints
             }
         }
     }
-    
+
 
     // Forward evaluation
 
@@ -106,7 +106,7 @@ void Foam::motionSmoother::checkConstraints
 
     forAll(bm, patchi)
     {
-        if(!isA<emptyPolyPatch>(bm[patchi]))
+        if (!isA<emptyPolyPatch>(bm[patchi]))
         {
             const labelList& bp = bm[patchi].boundaryPoints();
             const labelList& meshPoints = bm[patchi].meshPoints();
@@ -246,7 +246,7 @@ Foam::tmp<Foam::GeometricField<Type, Foam::pointPatchField, Foam::pointMesh> >
         else
         {
             res[pointI] /= sumWeight[pointI];
-        }        
+        }
     }
 
     res.correctBoundaryConditions();
diff --git a/src/dynamicMesh/motionSmoother/polyMeshGeometry/polyMeshGeometry.C b/src/dynamicMesh/motionSmoother/polyMeshGeometry/polyMeshGeometry.C
index 9c4030ed81d95d295f21aad87fd26fa559c73df6..f42f2a4ef4130059d8aad52c65824d7e0e8b3a79 100644
--- a/src/dynamicMesh/motionSmoother/polyMeshGeometry/polyMeshGeometry.C
+++ b/src/dynamicMesh/motionSmoother/polyMeshGeometry/polyMeshGeometry.C
@@ -1276,7 +1276,7 @@ bool Foam::polyMeshGeometry::checkFaceAngles
         faceNormal /= mag(faceNormal) + VSMALL;
 
         // Get edge from f[0] to f[size-1];
-        vector ePrev(p[f[0]] - p[f[f.size()-1]]);
+        vector ePrev(p[f.first()] - p[f.last()]);
         scalar magEPrev = mag(ePrev);
         ePrev /= magEPrev + VSMALL;
 
diff --git a/src/dynamicMesh/motionSolver/motionSolver.C b/src/dynamicMesh/motionSolver/motionSolver.C
index 5966679feb719ce88d16dcc0c7115f76e849db25..a8c28ea8752469f5e443e5cf724a477f271ba14c 100644
--- a/src/dynamicMesh/motionSolver/motionSolver.C
+++ b/src/dynamicMesh/motionSolver/motionSolver.C
@@ -78,7 +78,7 @@ Foam::autoPtr<Foam::motionSolver> Foam::motionSolver::New(const polyMesh& mesh)
 
     word solverTypeName(msData);
 
-    Info << "Selecting motion solver: " << solverTypeName << endl;
+    Info<< "Selecting motion solver: " << solverTypeName << endl;
 
     dlLibraryTable::open
     (
diff --git a/src/dynamicMesh/polyMeshAdder/faceCoupleInfo.C b/src/dynamicMesh/polyMeshAdder/faceCoupleInfo.C
index bfa9b2ca0c1df82ad0ec9a854c5293bc365e34ab..8261941be2b84101bb0d76a12e247f3449c5600c 100644
--- a/src/dynamicMesh/polyMeshAdder/faceCoupleInfo.C
+++ b/src/dynamicMesh/polyMeshAdder/faceCoupleInfo.C
@@ -1790,7 +1790,7 @@ void Foam::faceCoupleInfo::subDivisionMatch
 
             cutPointI = cutEdges[cutEdgeI].otherVertex(cutPointI);
 
-        } while(cutPointI != cutPoint1);
+        } while (cutPointI != cutPoint1);
     }
 
     if (debug)
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C
index 41ba56aedba532d58a11226e2a264598cf558e1a..5574abcb86d8022b6e0c102f0a3e31884bb8ea83 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C
@@ -262,7 +262,7 @@ Foam::labelPair Foam::addPatchCellLayer::getEdgeString
             // - which hasn't been handled yet
             // - with same neighbour
             // - that needs extrusion
-            while(true)
+            while (true)
             {
                 label prevFp = fEdges.rcIndex(startFp);
 
@@ -286,7 +286,7 @@ Foam::labelPair Foam::addPatchCellLayer::getEdgeString
 
             // Search forward for end of string
             endFp = startFp;
-            while(true)
+            while (true)
             {
                 label nextFp = fEdges.fcIndex(endFp);
 
@@ -1278,7 +1278,7 @@ void Foam::addPatchCellLayer::setRefinement
                     doneEdge[fEdges[fp]] = true;
                     fp = f.fcIndex(fp);
                 }
-                stringedVerts[stringedVerts.size()-1] = f[fp];
+                stringedVerts.last() = f[fp];
 
 
                 // Now stringedVerts contains the vertices in order of face f.
@@ -1296,7 +1296,7 @@ void Foam::addPatchCellLayer::setRefinement
 
                 for (label i = 0; i < numEdgeSideFaces; i++)
                 {
-                    label vEnd = stringedVerts[stringedVerts.size()-1];
+                    label vEnd = stringedVerts.last();
                     label vStart = stringedVerts[0];
 
                     // calculate number of points making up a face
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/combineFaces.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/combineFaces.C
index 51c92b035cecb17744c91f7d59f24cc5fabdffda..bb07db3eb8950c1abd8d44124b7551ca62e27f6f 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChange/combineFaces.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/combineFaces.C
@@ -62,7 +62,7 @@ bool Foam::combineFaces::convexFace
     n /= mag(n);
 
     // Get edge from f[0] to f[size-1];
-    vector ePrev(points[f[0]] - points[f[f.size()-1]]);
+    vector ePrev(points[f.first()] - points[f.last()]);
     scalar magEPrev = mag(ePrev);
     ePrev /= magEPrev + VSMALL;
 
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/edgeCollapser.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/edgeCollapser.C
index 7727e04c87fbf8f39e15600802388cbf1bdda76e..25a0414f830d370da14292f43d61b9723c985172 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChange/edgeCollapser.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/edgeCollapser.C
@@ -456,7 +456,7 @@ bool Foam::edgeCollapser::setRefinement(polyTopoChange& meshMod)
         {
             break;
         }
-    } while(true);
+    } while (true);
 
 
     // Keep track of faces that have been done already.
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8.C
index a47f8a06f11547ebd222a722a9b13c69af147a09..6c7d321533aac5fbc1a68cca27e3db0d9f6242b9 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8.C
@@ -2222,7 +2222,7 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement
                     faceCount
                 )
             );
-            allFaceInfo[faceI] = seedFacesInfo[seedFacesInfo.size()-1];
+            allFaceInfo[faceI] = seedFacesInfo.last();
         }
         else
         {
@@ -2238,7 +2238,7 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement
                     faceCount
                 )
             );
-            allFaceInfo[faceI] = seedFacesInfo[seedFacesInfo.size()-1];
+            allFaceInfo[faceI] = seedFacesInfo.last();
         }
     }
 
@@ -2319,7 +2319,7 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement
         allCellInfo
     );
 
-    while(true)
+    while (true)
     {
         if (debug)
         {
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/refinementHistory.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/refinementHistory.C
index 86be16d7a072c1febfce44b63b28066e6c3b41ae..3239c6a8e0efbf2118bf80a66eba35bb1e287ec2 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChange/refinementHistory.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/refinementHistory.C
@@ -745,7 +745,7 @@ Pout<< "refinementHistory::distribute :"
                 newSplitCells.append(splitCells_[index]);
 
                 Pout<< "Added oldCell " << index
-                    << " info " << newSplitCells[newSplitCells.size()-1]
+                    << " info " << newSplitCells.last()
                     << " at position " << newSplitCells.size()-1
                     << endl;
             }
diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C b/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C
index c89388e3199023bc705b730902b8f2ea6f7f0b10..6519c0e86de4baa056728e54e1627b7730d2f315 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C
@@ -174,14 +174,14 @@ bool Foam::polyTopoChanger::changeTopology() const
             {
                 Info<< "Modifier " << morphI << " named "
                     << topoChanges[morphI].name();
-                
+
                 if (curTriggerChange)
                 {
-                    Info << " morphing" << endl;
+                    Info<< " morphing" << endl;
                 }
                 else
                 {
-                    Info << " unchanged" << endl;
+                    Info<< " unchanged" << endl;
                 }
             }
 
@@ -195,7 +195,7 @@ bool Foam::polyTopoChanger::changeTopology() const
                     << topoChanges[morphI].name() << " inactive" << endl;
             }
         }
-            
+
     }
 
     return triggerChange;
@@ -252,7 +252,7 @@ void Foam::polyTopoChanger::update(const mapPolyMesh& m)
 
     // Force the mesh modifiers to auto-write.  This allows us to
     // preserve the current state of modifiers corresponding with
-    // the mesh.  
+    // the mesh.
     writeOpt() = IOobject::AUTO_WRITE;
     instance() = mesh_.time().timeName();
 }
diff --git a/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatchFaces.C b/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatchFaces.C
index bad4dd118e535aab507f8122f7ce12203bdd8883..1030fcc374ae03fd78bc5a4b08d5401d864ead95 100644
--- a/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatchFaces.C
+++ b/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatchFaces.C
@@ -91,7 +91,7 @@ void Foam::enrichedPatch::calcEnrichedFaces
     {
         const face oldFace = slavePatch_[faceI];
         const face oldLocalFace = slaveLocalFaces[faceI];
-//         Info << "old slave face " << faceI << ": " << oldFace << endl;
+//         Info<< "old slave face " << faceI << ": " << oldFace << endl;
         const labelList& curEdges = slaveFaceEdges[faceI];
 
         DynamicList<label> newFace(oldFace.size()*enrichedFaceRatio_);
@@ -133,7 +133,7 @@ void Foam::enrichedPatch::calcEnrichedFaces
 
             const labelList& slavePointsOnEdge =
                 pointsIntoSlaveEdges[curEdges[i]];
-//             Info << "slavePointsOnEdge for " << curEdges[i] << ": " << slavePointsOnEdge << endl;
+//             Info<< "slavePointsOnEdge for " << curEdges[i] << ": " << slavePointsOnEdge << endl;
             // If there are no points on the edge, skip everything
             // If there is only one point, no need for sorting
             if (slavePointsOnEdge.size())
@@ -246,7 +246,7 @@ void Foam::enrichedPatch::calcEnrichedFaces
     {
         const face& oldFace = masterPatch_[faceI];
         const face& oldLocalFace = masterLocalFaces[faceI];
-//         Info << "old master face: " << oldFace << endl;
+//         Info<< "old master face: " << oldFace << endl;
         const labelList& curEdges = masterFaceEdges[faceI];
 
         DynamicList<label> newFace(oldFace.size()*enrichedFaceRatio_);
diff --git a/src/dynamicMesh/slidingInterface/slidingInterface.C b/src/dynamicMesh/slidingInterface/slidingInterface.C
index 316dd389b6f7843a5edaddc6a8eafac253acfa89..12d99e8083eb25efd90c9b1b42d34b005b4434b7 100644
--- a/src/dynamicMesh/slidingInterface/slidingInterface.C
+++ b/src/dynamicMesh/slidingInterface/slidingInterface.C
@@ -420,7 +420,7 @@ void Foam::slidingInterface::setRefinement(polyTopoChange& ref) const
         }
 
         coupleInterface(ref);
-        
+
         trigger_ = false;
     }
 }
@@ -430,7 +430,7 @@ void Foam::slidingInterface::modifyMotionPoints(pointField& motionPoints) const
 {
     if (debug)
     {
-        Pout<< "void slidingInterface::modifyMotionPoints(" 
+        Pout<< "void slidingInterface::modifyMotionPoints("
             << "pointField& motionPoints) const for object " << name() << " : "
             << "Adjusting motion points." << endl;
     }
@@ -485,7 +485,7 @@ void Foam::slidingInterface::modifyMotionPoints(pointField& motionPoints) const
             else
             {
                 // A cut point is not a projected slave point.  Therefore, it
-                // must be an edge-to-edge intersection.  
+                // must be an edge-to-edge intersection.
 
                 Map<Pair<edge> >::const_iterator cpepmIter =
                     cpepm.find(cutPoints[pointI]);
@@ -499,7 +499,7 @@ void Foam::slidingInterface::modifyMotionPoints(pointField& motionPoints) const
                     // slidingInterface::coupleInterface.  This is done for
                     // efficiency reasons and avoids multiple creation of
                     // cutting planes.  Please update both simultaneously.
-                    // 
+                    //
                     const edge& globalMasterEdge = cpepmIter().first();
 
                     const label curMasterEdgeIndex =
@@ -582,7 +582,7 @@ void Foam::slidingInterface::modifyMotionPoints(pointField& motionPoints) const
                         if (slaveCut.hit())
                         {
                             // Strict checking of slave cut to avoid capturing
-                            // end points.  
+                            // end points.
                             scalar cutOnSlave =
                                 (
                                     (
@@ -615,7 +615,7 @@ void Foam::slidingInterface::modifyMotionPoints(pointField& motionPoints) const
                                 << cme.line(masterLocalPoints)
                                 << " slave edge: " << curSlaveLine
                                 << " point: " << masterCutPoint
-                                << " weight: " << 
+                                << " weight: " <<
                                 (
                                     (
                                         slaveCut.missPoint()
@@ -657,7 +657,7 @@ void Foam::slidingInterface::updateMesh(const mapPolyMesh& m)
 {
     if (debug)
     {
-        Pout<< "void slidingInterface::updateMesh(const mapPolyMesh& m)" 
+        Pout<< "void slidingInterface::updateMesh(const mapPolyMesh& m)"
             << " const for object " << name() << " : "
             << "Updating topology." << endl;
     }
@@ -771,7 +771,7 @@ void Foam::slidingInterface::write(Ostream& os) const
 
 // To write out all those tolerances
 #define WRITE_NON_DEFAULT(name) \
-    if( name ## _ != name ## Default_ )\
+    if ( name ## _ != name ## Default_ )\
     { \
         os << "    " #name " " <<  name ## _ << token::END_STATEMENT << nl; \
     }
diff --git a/src/finiteVolume/cfdTools/general/adjustPhi/adjustPhi.C b/src/finiteVolume/cfdTools/general/adjustPhi/adjustPhi.C
index dfaef4308e6c98824612a3b60a1e4e79a58ebc51..439d83e1786003f7b7686859521429ebf5918fcf 100644
--- a/src/finiteVolume/cfdTools/general/adjustPhi/adjustPhi.C
+++ b/src/finiteVolume/cfdTools/general/adjustPhi/adjustPhi.C
@@ -107,7 +107,7 @@ bool Foam::adjustPhi
         {
             massCorr = (massIn - fixedMassOut)/adjustableMassOut;
         }
-        else if(mag(fixedMassOut - massIn)/totalFlux > 1e-10)
+        else if (mag(fixedMassOut - massIn)/totalFlux > 1e-10)
         {
             FatalErrorIn
             (
diff --git a/src/finiteVolume/cfdTools/general/include/readGravitationalAcceleration.H b/src/finiteVolume/cfdTools/general/include/readGravitationalAcceleration.H
index 2389d0bd2b72d87f0fe4d599aaeb0463e8bfc51d..1be4dc52f53623de32758c6587bb3d4713a56aa1 100644
--- a/src/finiteVolume/cfdTools/general/include/readGravitationalAcceleration.H
+++ b/src/finiteVolume/cfdTools/general/include/readGravitationalAcceleration.H
@@ -1,4 +1,4 @@
-    Info << "\nReading g" << endl;
+    Info<< "\nReading g" << endl;
     uniformDimensionedVectorField g
     (
         IOobject
diff --git a/src/finiteVolume/cfdTools/general/porousMedia/porousZone.H b/src/finiteVolume/cfdTools/general/porousMedia/porousZone.H
index 9a3eb151f969e4034f0c7607f2999c82ec4a9783..edfbad5efb825e61bd06d785ace0db64e3650a21 100644
--- a/src/finiteVolume/cfdTools/general/porousMedia/porousZone.H
+++ b/src/finiteVolume/cfdTools/general/porousMedia/porousZone.H
@@ -42,7 +42,7 @@ Description
 
     Darcy-Forchheimer (@e d and @e f parameters)
     @f[
-        S = - (\mu \, d \, U + \frac{\rho |U|}{2} \, f) U
+        S = - (\mu \, d + \frac{\rho |U|}{2} \, f) U
     @f]
 
 
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFields.C b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFields.C
index ce005c5683eb2cf802aaf663bb2543162157f9c4..2ae16afc957fd0d17719289b5876c0ce96642897 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFields.C
+++ b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchFields.C
@@ -74,7 +74,7 @@ void Foam::fanFvPatchField<Foam::scalar>::updateCoeffs()
                 );
         }
 
-        for(label i=1; i<f_.size(); i++)
+        for (label i=1; i<f_.size(); i++)
         {
             jump_ += f_[i]*pow(Un, i);
         }
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellLimitedGrad/cellLimitedGrad.H b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellLimitedGrad/cellLimitedGrad.H
index 22083de571e94fcbe637c269bd91206e5c0d4715..5c4d711ab30be538e0701e9ab2552a1bcfce1625 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellLimitedGrad/cellLimitedGrad.H
+++ b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellLimitedGrad/cellLimitedGrad.H
@@ -162,7 +162,7 @@ inline void cellLimitedGrad<Type>::limitFace
     const Type& extrapolate
 )
 {
-    for(direction cmpt=0; cmpt<Type::nComponents; cmpt++)
+    for (direction cmpt=0; cmpt<Type::nComponents; cmpt++)
     {
         cellLimitedGrad<scalar>::limitFace
         (
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellMDLimitedGrad/cellMDLimitedGrad.H b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellMDLimitedGrad/cellMDLimitedGrad.H
index d9b389d0f54147eb4fdd01d1821bd4ef58fe4ac3..f48ed450d9a2290b573115d1c61a9d2124deb845 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellMDLimitedGrad/cellMDLimitedGrad.H
+++ b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellMDLimitedGrad/cellMDLimitedGrad.H
@@ -164,7 +164,7 @@ inline void cellMDLimitedGrad<Type>::limitFace
     const vector& dcf
 )
 {
-    for(direction cmpt=0; cmpt<Type::nComponents; cmpt++)
+    for (direction cmpt=0; cmpt<Type::nComponents; cmpt++)
     {
         vector gi(g[cmpt], g[cmpt+3], g[cmpt+6]);
         cellMDLimitedGrad<scalar>::limitFace
diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGradData.C b/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGradData.C
index 1d13f0d915196802308277fd973e137ddde16b65..bd65a3fd375320e32b670145b8eb01cd949bcd38 100644
--- a/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGradData.C
+++ b/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGradData.C
@@ -64,7 +64,7 @@ Foam::quadraticFitSnGradData::quadraticFitSnGradData
 {
     if (debug)
     {
-        Info << "Contructing quadraticFitSnGradData" << endl;
+        Info<< "Contructing quadraticFitSnGradData" << endl;
     }
 
     // check input
@@ -108,7 +108,7 @@ Foam::quadraticFitSnGradData::quadraticFitSnGradData
 
     // find the fit coefficients for every face in the mesh
 
-    for(label faci = 0; faci < mesh.nInternalFaces(); faci++)
+    for (label faci = 0; faci < mesh.nInternalFaces(); faci++)
     {
         snGradPolySize[faci] = calcFit(stencilPoints[faci], faci);
     }
@@ -206,7 +206,7 @@ Foam::label Foam::quadraticFitSnGradData::calcFit
     // calculate the matrix of the polynomial components
     scalarRectangularMatrix B(C.size(), minSize_, scalar(0));
 
-    for(label ip = 0; ip < C.size(); ip++)
+    for (label ip = 0; ip < C.size(); ip++)
     {
         const point& p = C[ip];
 
@@ -254,7 +254,7 @@ Foam::label Foam::quadraticFitSnGradData::calcFit
     const scalar deltaCoeff = mesh().deltaCoeffs()[faci];
 
     bool goodFit = false;
-    for(int iIt = 0; iIt < 10 && !goodFit; iIt++)
+    for (int iIt = 0; iIt < 10 && !goodFit; iIt++)
     {
         SVD svd(B, SMALL);
 
@@ -270,7 +270,7 @@ Foam::label Foam::quadraticFitSnGradData::calcFit
         {
             fit_[faci][0] = fit0;
             fit_[faci][1] = fit1;
-            for(label i = 2; i < stencilSize; i++)
+            for (label i = 2; i < stencilSize; i++)
             {
                 fit_[faci][i] = wts[0]*wts[i]*svd.VSinvUt()[1][i]/scale;
             }
@@ -282,13 +282,13 @@ Foam::label Foam::quadraticFitSnGradData::calcFit
             wts[0] *= 10;
             wts[1] *= 10;
 
-            for(label i = 0; i < B.n(); i++)
+            for (label i = 0; i < B.n(); i++)
             {
                 B[i][0] *= 10;
                 B[i][1] *= 10;
             }
 
-            for(label j = 0; j < B.m(); j++)
+            for (label j = 0; j < B.m(); j++)
             {
                 B[0][j] *= 10;
                 B[1][j] *= 10;
diff --git a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C
index 5e85f505922c3118fb411fa2949f5e72e5a7ac6d..9ce8d888c4bfdedad90d8216809664424428d19f 100644
--- a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C
+++ b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrix.C
@@ -725,7 +725,7 @@ Foam::fvMatrix<Type>::H() const
         )
     );
 
-    for(direction cmpt=0; cmpt<Type::nComponents; cmpt++)
+    for (direction cmpt=0; cmpt<Type::nComponents; cmpt++)
     {
         if (validComponents[cmpt] == -1)
         {
diff --git a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C
index c56899bd62ea89da15aacae44c743e069135f452..a78d6be6cf28250d44475857594f8e0b46acb239 100644
--- a/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C
+++ b/src/finiteVolume/fvMatrices/fvMatrix/fvMatrixSolve.C
@@ -90,7 +90,7 @@ Foam::lduMatrix::solverPerformance Foam::fvMatrix<Type>::solve
         )
     );
 
-    for(direction cmpt=0; cmpt<Type::nComponents; cmpt++)
+    for (direction cmpt=0; cmpt<Type::nComponents; cmpt++)
     {
         if (validComponents[cmpt] == -1) continue;
 
diff --git a/src/finiteVolume/fvMatrices/solvers/MULES/MULESTemplates.C b/src/finiteVolume/fvMatrices/solvers/MULES/MULESTemplates.C
index 151de78a1ef28a735d488ba94c290a29e6c1a479..89e0260456a342ced62b8e3c1b3de0abf5586345 100644
--- a/src/finiteVolume/fvMatrices/solvers/MULES/MULESTemplates.C
+++ b/src/finiteVolume/fvMatrices/solvers/MULES/MULESTemplates.C
@@ -478,7 +478,7 @@ void Foam::MULES::limiter
     scalarField sumlPhip(psiIf.size());
     scalarField mSumlPhim(psiIf.size());
 
-    for(int j=0; j<nLimiterIter; j++)
+    for (int j=0; j<nLimiterIter; j++)
     {
         sumlPhip = 0.0;
         mSumlPhim = 0.0;
diff --git a/src/finiteVolume/fvMesh/fvMesh.C b/src/finiteVolume/fvMesh/fvMesh.C
index 28f0a8d23ee6946b34de5885160a603d2f2bd9e2..95002fd960c47a60b00b23493c5870ebeab0952b 100644
--- a/src/finiteVolume/fvMesh/fvMesh.C
+++ b/src/finiteVolume/fvMesh/fvMesh.C
@@ -356,7 +356,7 @@ Foam::polyMesh::readUpdateState Foam::fvMesh::readUpdate()
     {
         if (debug)
         {
-            Info << "Boundary and topological update" << endl;
+            Info<< "Boundary and topological update" << endl;
         }
 
         boundary_.readUpdate(boundaryMesh());
@@ -368,7 +368,7 @@ Foam::polyMesh::readUpdateState Foam::fvMesh::readUpdate()
     {
         if (debug)
         {
-            Info << "Topological update" << endl;
+            Info<< "Topological update" << endl;
         }
 
         clearOut();
@@ -377,7 +377,7 @@ Foam::polyMesh::readUpdateState Foam::fvMesh::readUpdate()
     {
         if (debug)
         {
-            Info << "Point motion update" << endl;
+            Info<< "Point motion update" << endl;
         }
 
         clearGeom();
@@ -386,7 +386,7 @@ Foam::polyMesh::readUpdateState Foam::fvMesh::readUpdate()
     {
         if (debug)
         {
-            Info << "No update" << endl;
+            Info<< "No update" << endl;
         }
     }
 
diff --git a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C
index 3ecbd0a19720075ef77ec93f6faa8b800d82e993..dc2aec8960d320fdf0ee8ed33cfe664fedb398ec 100644
--- a/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C
+++ b/src/finiteVolume/fvMesh/fvMeshSubset/fvMeshSubset.C
@@ -1341,7 +1341,7 @@ void Foam::fvMeshSubset::setLargeCellSubset
 {
     labelList region(baseMesh().nCells(), 0);
 
-    forAllConstIter (labelHashSet, globalCellMap, iter)
+    forAllConstIter(labelHashSet, globalCellMap, iter)
     {
         region[iter.key()] = 1;
     }
diff --git a/src/finiteVolume/interpolation/interpolation/interpolationCellPointFace/findCellPointFaceTriangle.H b/src/finiteVolume/interpolation/interpolation/interpolationCellPointFace/findCellPointFaceTriangle.H
index dc9e2baa00f9f97ebb92ba2339612828e2f7e032..490b20f182c398e30900ec63b0df0c19590b1b56 100644
--- a/src/finiteVolume/interpolation/interpolation/interpolationCellPointFace/findCellPointFaceTriangle.H
+++ b/src/finiteVolume/interpolation/interpolation/interpolationCellPointFace/findCellPointFaceTriangle.H
@@ -45,7 +45,7 @@ bool interpolationCellPointFace<Type>::findTriangle
         // calculate triangle edge vectors and triangle face normal
         // the 'i':th edge is opposite node i
         vector edge[3], normal[3];
-        for(label i=0; i<3; i++)
+        for (label i=0; i<3; i++)
         {
             label ip0 = (i+1) % 3;
             label ipp = (i+2) % 3;
@@ -55,7 +55,7 @@ bool interpolationCellPointFace<Type>::findTriangle
         vector triangleFaceNormal = edge[1] ^ edge[2];
         
         // calculate edge normal (pointing inwards)
-        for(label i=0; i<3; i++)
+        for (label i=0; i<3; i++)
         {
             normal[i] = triangleFaceNormal ^ edge[i];
             normal[i] /= mag(normal[i]) + VSMALL;
@@ -63,7 +63,7 @@ bool interpolationCellPointFace<Type>::findTriangle
 
         // check if position is inside triangle
         bool inside = true;
-        for(label i=0; i<3; i++)
+        for (label i=0; i<3; i++)
         {
             label ip = (i+1) % 3;
             inside = inside && (((newPos - tetPoints[ip]) & edge[i]) >= 0);
@@ -74,7 +74,7 @@ bool interpolationCellPointFace<Type>::findTriangle
             foundTriangle = true;
 
             // calculate phi-values
-            for(label i=0; i<3; i++)
+            for (label i=0; i<3; i++)
             {
                 label ip = (i+1) % 3;
                 scalar phiMax = max(VSMALL, normal[i] & edge[ip]);
diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/CentredFitScheme/CentredFitData.C b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/CentredFitScheme/CentredFitData.C
index fb9611e9c8aa06f8f70c56ccd847232b34b72ef5..4870127e51d3de130a78967e72e5b60f1fe62172 100644
--- a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/CentredFitScheme/CentredFitData.C
+++ b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/CentredFitScheme/CentredFitData.C
@@ -86,7 +86,7 @@ void Foam::CentredFitData<Polynomial>::calcFit()
 
     const surfaceScalarField& w = mesh.surfaceInterpolation::weights();
 
-    for(label facei = 0; facei < mesh.nInternalFaces(); facei++)
+    for (label facei = 0; facei < mesh.nInternalFaces(); facei++)
     {
         FitData
         <
diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C
index dcea0902668d1444f3d93af5c37550f45a8245bf..62d464dcd6718f7d1c3658af521bdff886e32a4e 100644
--- a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C
+++ b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C
@@ -153,7 +153,7 @@ void Foam::FitData<FitDataType, ExtendedStencil, Polynomial>::calcFit
     // Reference point
     point p0 = this->mesh().faceCentres()[facei];
 
-    // Info << "Face " << facei << " at " << p0 << " stencil points at:\n"
+    // Info<< "Face " << facei << " at " << p0 << " stencil points at:\n"
     //     << C - p0 << endl;
 
     // p0 -> p vector in the face-local coordinate system
@@ -165,7 +165,7 @@ void Foam::FitData<FitDataType, ExtendedStencil, Polynomial>::calcFit
     // Matrix of the polynomial components
     scalarRectangularMatrix B(C.size(), minSize_, scalar(0));
 
-    for(label ip = 0; ip < C.size(); ip++)
+    for (label ip = 0; ip < C.size(); ip++)
     {
         const point& p = C[ip];
 
@@ -195,7 +195,7 @@ void Foam::FitData<FitDataType, ExtendedStencil, Polynomial>::calcFit
     }
 
     // Additional weighting for constant and linear terms
-    for(label i = 0; i < B.n(); i++)
+    for (label i = 0; i < B.n(); i++)
     {
         B[i][0] *= wts[0];
         B[i][1] *= wts[0];
@@ -206,14 +206,14 @@ void Foam::FitData<FitDataType, ExtendedStencil, Polynomial>::calcFit
     coeffsi.setSize(stencilSize);
 
     bool goodFit = false;
-    for(int iIt = 0; iIt < 8 && !goodFit; iIt++)
+    for (int iIt = 0; iIt < 8 && !goodFit; iIt++)
     {
         SVD svd(B, SMALL);
 
         scalar maxCoeff = 0;
         label maxCoeffi = 0;
 
-        for(label i=0; i<stencilSize; i++)
+        for (label i=0; i<stencilSize; i++)
         {
             coeffsi[i] = wts[0]*wts[i]*svd.VSinvUt()[0][i];
             if (mag(coeffsi[i]) > maxCoeff)
@@ -240,7 +240,7 @@ void Foam::FitData<FitDataType, ExtendedStencil, Polynomial>::calcFit
 
         // if (goodFit && iIt > 0)
         // {
-            // Info << "FitData<Polynomial>::calcFit"
+            // Info<< "FitData<Polynomial>::calcFit"
             //     << "(const List<point>& C, const label facei" << nl
             //     << "Can now fit face " << facei << " iteration " << iIt
             //     << " with sum of weights " << sum(coeffsi) << nl
@@ -271,13 +271,13 @@ void Foam::FitData<FitDataType, ExtendedStencil, Polynomial>::calcFit
                 wts[1] *= 10;
             }
 
-            for(label j = 0; j < B.m(); j++)
+            for (label j = 0; j < B.m(); j++)
             {
                 B[0][j] *= 10;
                 B[1][j] *= 10;
             }
 
-            for(label i = 0; i < B.n(); i++)
+            for (label i = 0; i < B.n(); i++)
             {
                 B[i][0] *= 10;
                 B[i][1] *= 10;
diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/UpwindFitScheme/UpwindFitData.C b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/UpwindFitScheme/UpwindFitData.C
index cd7a206ba50048779468aaf50a9b350e0c4a910a..0841fe7d72a8a4f7eb356a80324e51570ce0fecf 100644
--- a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/UpwindFitScheme/UpwindFitData.C
+++ b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/UpwindFitScheme/UpwindFitData.C
@@ -97,7 +97,7 @@ void Foam::UpwindFitData<Polynomial>::calcFit()
     // find the fit coefficients for every owner
 
     //Pout<< "-- Owner --" << endl;
-    for(label facei = 0; facei < mesh.nInternalFaces(); facei++)
+    for (label facei = 0; facei < mesh.nInternalFaces(); facei++)
     {
         FitData
         <
@@ -156,7 +156,7 @@ void Foam::UpwindFitData<Polynomial>::calcFit()
     // find the fit coefficients for every neighbour
 
     //Pout<< "-- Neighbour --" << endl;
-    for(label facei = 0; facei < mesh.nInternalFaces(); facei++)
+    for (label facei = 0; facei < mesh.nInternalFaces(); facei++)
     {
         FitData
         <
diff --git a/src/finiteVolume/interpolation/volPointInterpolation/pointPatchInterpolation/pointPatchInterpolation.C b/src/finiteVolume/interpolation/volPointInterpolation/pointPatchInterpolation/pointPatchInterpolation.C
index 16cd028f726392e5723ec62abf75f2903f18ce50..6cebe3369bd95024213b75f113292a0dc5b9e5c2 100644
--- a/src/finiteVolume/interpolation/volPointInterpolation/pointPatchInterpolation/pointPatchInterpolation.C
+++ b/src/finiteVolume/interpolation/volPointInterpolation/pointPatchInterpolation/pointPatchInterpolation.C
@@ -63,7 +63,7 @@ void pointPatchInterpolation::makePatchPatchAddressing()
 
     forAll(bm, patchi)
     {
-        if(!isA<emptyFvPatch>(bm[patchi]) && !bm[patchi].coupled())
+        if (!isA<emptyFvPatch>(bm[patchi]) && !bm[patchi].coupled())
         {
             nPatchPatchPoints += bm[patchi].patch().boundaryPoints().size();
         }
@@ -81,7 +81,7 @@ void pointPatchInterpolation::makePatchPatchAddressing()
 
     forAll(bm, patchi)
     {
-        if(!isA<emptyFvPatch>(bm[patchi]) && !bm[patchi].coupled())
+        if (!isA<emptyFvPatch>(bm[patchi]) && !bm[patchi].coupled())
         {
             const labelList& bp = bm[patchi].patch().boundaryPoints();
             const labelList& meshPoints = bm[patchi].patch().meshPoints();
@@ -129,10 +129,10 @@ void pointPatchInterpolation::makePatchPatchAddressing()
     {
         if (patchPatchPointConstraints[i].first() != 0)
         {
-            patchPatchPointConstraintPoints_[nConstraints] = 
+            patchPatchPointConstraintPoints_[nConstraints] =
                 patchPatchPoints_[i];
 
-            patchPatchPointConstraintTensors_[nConstraints] = 
+            patchPatchPointConstraintTensors_[nConstraints] =
                 patchPatchPointConstraints[i].constraintTransformation();
 
             nConstraints++;
diff --git a/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C b/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C
index cdd5a999ec1290068d5fb02c141830c419a28c53..80fc0d9bc4ac61ce1b4f07796117c8e12ff91e23 100644
--- a/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C
+++ b/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C
@@ -179,7 +179,7 @@ displacementInterpolationFvMotionSolver
 
         // Slightly tweak min and max face zone so points sort within
         zoneCoordinates[0] -= SMALL;
-        zoneCoordinates[zoneCoordinates.size()-1] += SMALL;
+        zoneCoordinates.last() += SMALL;
 
         // Check if we have static min and max mesh bounds
         const scalarField meshCoords = points0().component(dir);
@@ -237,7 +237,7 @@ displacementInterpolationFvMotionSolver
             }
             rangeI++;
         }
-        if (maxCoord > zoneCoordinates[zoneCoordinates.size()-1])
+        if (maxCoord > zoneCoordinates.last())
         {
             label sz = rangeToCoord.size();
             rangeToCoord.setSize(sz+1);
diff --git a/src/fvMotionSolver/motionDiffusivity/motionDiffusivity/motionDiffusivity.C b/src/fvMotionSolver/motionDiffusivity/motionDiffusivity/motionDiffusivity.C
index 50936f456a903eb935cf8ec23f0cedc185fe496f..159a363b4a114298e4072684fa58fc2cc6561405 100644
--- a/src/fvMotionSolver/motionDiffusivity/motionDiffusivity/motionDiffusivity.C
+++ b/src/fvMotionSolver/motionDiffusivity/motionDiffusivity/motionDiffusivity.C
@@ -54,7 +54,7 @@ Foam::autoPtr<Foam::motionDiffusivity> Foam::motionDiffusivity::New
 {
     word diffTypeName(mdData);
 
-    Info << "Selecting motion diffusion: " << diffTypeName << endl;
+    Info<< "Selecting motion diffusion: " << diffTypeName << endl;
 
     IstreamConstructorTable::iterator cstrIter =
         IstreamConstructorTablePtr_->find(diffTypeName);
diff --git a/src/lagrangian/basic/Particle/Particle.C b/src/lagrangian/basic/Particle/Particle.C
index 4838da0ad1d1dc6bd56ee90ca0e79fdb8f24e86b..2b85924f8b3aed9f809cc3496010b2cc9b1dabb8 100644
--- a/src/lagrangian/basic/Particle/Particle.C
+++ b/src/lagrangian/basic/Particle/Particle.C
@@ -208,7 +208,7 @@ Foam::label Foam::Particle<ParticleType>::track
     facei_ = -1;
 
     // Tracks to endPosition or stop on boundary
-    while(!onBoundary() && stepFraction_ < 1.0 - SMALL)
+    while (!onBoundary() && stepFraction_ < 1.0 - SMALL)
     {
         stepFraction_ += trackToFace(endPosition, td)*(1.0 - stepFraction_);
     }
diff --git a/src/lagrangian/dieselSpray/injector/commonRailInjector/commonRailInjector.C b/src/lagrangian/dieselSpray/injector/commonRailInjector/commonRailInjector.C
index 72acb4167969fbb2899b004c33ad4d80f1d73863..6d5201111c39e3f4a267b65bdfaf2b78fb8ad034 100644
--- a/src/lagrangian/dieselSpray/injector/commonRailInjector/commonRailInjector.C
+++ b/src/lagrangian/dieselSpray/injector/commonRailInjector/commonRailInjector.C
@@ -104,8 +104,8 @@ Foam::commonRailInjector::commonRailInjector
 
     if
     (
-        mag(injectionPressureProfile_[injectionPressureProfile_.size()-1][0]
-      - massFlowRateProfile_[massFlowRateProfile_.size()-1][0])
+        mag(injectionPressureProfile_.last()[0]
+      - massFlowRateProfile_.last()[0])
       > SMALL
     )
     {
@@ -163,7 +163,7 @@ Foam::commonRailInjector::commonRailInjector
         }
     }
 
-    Info << "end constructor. in commonRail" << endl;
+    Info<< "end constructor. in commonRail" << endl;
 }
 
 
@@ -330,13 +330,13 @@ Foam::scalar Foam::commonRailInjector::T(const scalar time) const
 
 Foam::scalar Foam::commonRailInjector::tsoi() const
 {
-    return massFlowRateProfile_[0][0];
+    return massFlowRateProfile_.first()[0];
 }
 
 
 Foam::scalar Foam::commonRailInjector::teoi() const
 {
-    return massFlowRateProfile_[massFlowRateProfile_.size()-1][0];
+    return massFlowRateProfile_.last()[0];
 }
 
 
diff --git a/src/lagrangian/dieselSpray/injector/definedInjector/definedInjector.C b/src/lagrangian/dieselSpray/injector/definedInjector/definedInjector.C
index 4cd8780535accd344672733b51379515086e9dce..76c9e4ea5df4d8bbac8c708e52e8e7df40d72bad 100644
--- a/src/lagrangian/dieselSpray/injector/definedInjector/definedInjector.C
+++ b/src/lagrangian/dieselSpray/injector/definedInjector/definedInjector.C
@@ -99,8 +99,7 @@ Foam::definedInjector::definedInjector
 
     if
     (
-        mag(massFlowRateProfile_[massFlowRateProfile_.size()-1][0]
-      - velocityProfile_[velocityProfile_.size()-1][0])
+        mag(massFlowRateProfile_.last()[0] - velocityProfile_.last()[0])
       > SMALL
     )
     {
@@ -331,13 +330,13 @@ Foam::scalar Foam::definedInjector::T(const scalar time) const
 
 Foam::scalar Foam::definedInjector::tsoi() const
 {
-    return massFlowRateProfile_[0][0];
+    return massFlowRateProfile_.first()[0];
 }
 
 
 Foam::scalar Foam::definedInjector::teoi() const
 {
-    return massFlowRateProfile_[massFlowRateProfile_.size()-1][0];
+    return massFlowRateProfile_.last()[0];
 }
 
 
diff --git a/src/lagrangian/dieselSpray/injector/multiHoleInjector/multiHoleInjector.C b/src/lagrangian/dieselSpray/injector/multiHoleInjector/multiHoleInjector.C
index 4b2367c41a8dc6f2147ba0d435872239d2fe4b8d..ea7cd833230643d3ceaa8ad18f1646579a9afe38 100644
--- a/src/lagrangian/dieselSpray/injector/multiHoleInjector/multiHoleInjector.C
+++ b/src/lagrangian/dieselSpray/injector/multiHoleInjector/multiHoleInjector.C
@@ -91,8 +91,7 @@ Foam::multiHoleInjector::multiHoleInjector
 
     if
     (
-        mag(massFlowRateProfile_[massFlowRateProfile_.size()-1][0]
-      - TProfile_[TProfile_.size()-1][0])
+        mag(massFlowRateProfile_.last()[0] - TProfile_.last()[0])
       > SMALL
     )
     {
@@ -178,9 +177,9 @@ void Foam::multiHoleInjector::setTangentialVectors()
     }
     vector yp = zp^xp;
 
-//    Info << "xp = " << xp << endl;
-//    Info << "yp = " << yp << endl;
-//    Info << "zp = " << zp << endl;
+//    Info<< "xp = " << xp << endl;
+//    Info<< "yp = " << yp << endl;
+//    Info<< "zp = " << zp << endl;
 
     scalar angle = 0.0;
     scalar u = degToRad(umbrellaAngle_/2.0);
@@ -351,13 +350,13 @@ Foam::scalar Foam::multiHoleInjector::T(const scalar time) const
 
 Foam::scalar Foam::multiHoleInjector::tsoi() const
 {
-    return massFlowRateProfile_[0][0];
+    return massFlowRateProfile_.first()[0];
 }
 
 
 Foam::scalar Foam::multiHoleInjector::teoi() const
 {
-    return massFlowRateProfile_[massFlowRateProfile_.size()-1][0];
+    return massFlowRateProfile_.last()[0];
 }
 
 
diff --git a/src/lagrangian/dieselSpray/injector/swirlInjector/swirlInjector.C b/src/lagrangian/dieselSpray/injector/swirlInjector/swirlInjector.C
index 7d05a29a5c2526006631e75d5567f92e68ee3a2b..e1e0fe26f408f78d4baa00b79bce7b4aa564742f 100644
--- a/src/lagrangian/dieselSpray/injector/swirlInjector/swirlInjector.C
+++ b/src/lagrangian/dieselSpray/injector/swirlInjector/swirlInjector.C
@@ -384,13 +384,13 @@ Foam::scalar Foam::swirlInjector::T(const scalar time) const
 
 Foam::scalar Foam::swirlInjector::tsoi() const
 {
-    return massFlowRateProfile_[0][0];
+    return massFlowRateProfile_.first()[0];
 }
 
 
 Foam::scalar Foam::swirlInjector::teoi() const
 {
-    return massFlowRateProfile_[massFlowRateProfile_.size()-1][0];
+    return massFlowRateProfile_.last()[0];
 }
 
 
diff --git a/src/lagrangian/dieselSpray/injector/unitInjector/unitInjector.C b/src/lagrangian/dieselSpray/injector/unitInjector/unitInjector.C
index a3a1093eb624a12d152b7c6bee958ba5fe03ce2f..1e054f2d41fe3c1f506305be567c32b054002f6f 100644
--- a/src/lagrangian/dieselSpray/injector/unitInjector/unitInjector.C
+++ b/src/lagrangian/dieselSpray/injector/unitInjector/unitInjector.C
@@ -83,8 +83,8 @@ Foam::unitInjector::unitInjector
 
     if
     (
-        mag(massFlowRateProfile_[massFlowRateProfile_.size()-1][0]
-      - TProfile_[TProfile_.size()-1][0])
+        mag(massFlowRateProfile_.last()[0]
+      - TProfile_.last()[0])
       > SMALL
     )
     {
@@ -306,13 +306,13 @@ Foam::scalar Foam::unitInjector::T(const scalar time) const
 
 Foam::scalar Foam::unitInjector::tsoi() const
 {
-    return massFlowRateProfile_[0][0];
+    return massFlowRateProfile_.first()[0];
 }
 
 
 Foam::scalar Foam::unitInjector::teoi() const
 {
-    return massFlowRateProfile_[massFlowRateProfile_.size()-1][0];
+    return massFlowRateProfile_.last()[0];
 }
 
 
diff --git a/src/lagrangian/dieselSpray/parcel/parcel.C b/src/lagrangian/dieselSpray/parcel/parcel.C
index dc45f4dec40a4410123793910f20f604376450bb..c0913258454b21767a30404b33b1176fefd756ee 100644
--- a/src/lagrangian/dieselSpray/parcel/parcel.C
+++ b/src/lagrangian/dieselSpray/parcel/parcel.C
@@ -114,7 +114,7 @@ bool Foam::parcel::move(spray& sDB)
     scalarField Yfg(Nf, 0.0);
 
     scalar cpMixture = 0.0;
-    for(label i=0; i<Ns; i++)
+    for (label i=0; i<Ns; i++)
     {
         const volScalarField& Yi = sDB.composition().Y()[i];
         if (sDB.isLiquidFuel()[i])
@@ -341,7 +341,7 @@ void Foam::parcel::updateParcelProperties
 
     // calculate mean molecular weight
     scalar W = 0.0;
-    for(label i=0; i<Ns; i++)
+    for (label i=0; i<Ns; i++)
     {
         W += sDB.composition().Y()[i][celli]/sDB.gasProperties()[i].W();
 
@@ -357,7 +357,7 @@ void Foam::parcel::updateParcelProperties
 
     // correct the gaseous temperature for evaporated fuel
     scalar cpMix = 0.0;
-    for(label i=0; i<Ns; i++)
+    for (label i=0; i<Ns; i++)
     {
         cpMix += sDB.composition().Y()[i][celli]
                 *sDB.gasProperties()[i].Cp(T());
@@ -475,7 +475,7 @@ void Foam::parcel::updateParcelProperties
             newMass = m();
             newhg = 0.0;
             scalarField Ynew(fuels.Y(X()));
-            for(label i=0; i<Nf; i++)
+            for (label i=0; i<Nf; i++)
             {
                 label j = sDB.liquidToGasIndex()[i];
                 newhg += Ynew[i]*sDB.gasProperties()[j].H(Tnew);
@@ -523,7 +523,7 @@ void Foam::parcel::updateParcelProperties
         scalar liquidcL = sDB.fuels().cp(pg, TDroplet, X());
 
         cpMix = 0.0;
-        for(label i=0; i<Ns; i++)
+        for (label i=0; i<Ns; i++)
         {
             if (sDB.isLiquidFuel()[i])
             {
@@ -541,7 +541,7 @@ void Foam::parcel::updateParcelProperties
         scalar z = 0.0;
         scalar tauEvap = 0.0;
 
-        for(label i=0; i<Nf; i++)
+        for (label i=0; i<Nf; i++)
         {
             tauEvap += X()[i]*fuels.properties()[i].W()/tauEvaporation[i];
         }
@@ -616,7 +616,7 @@ void Foam::parcel::updateParcelProperties
                     {
                         if (n>100)
                         {
-                            Info << "n = " << n << ", T = " << Td << ", pv = " << pAtSurface << endl;
+                            Info<< "n = " << n << ", T = " << Td << ", pv = " << pAtSurface << endl;
                         }
                     }
                 }
@@ -628,7 +628,7 @@ void Foam::parcel::updateParcelProperties
         // if the droplet is NOT boiling use implicit scheme.
         if (sDB.evaporation().evaporation())
         {
-            for(label i=0; i<Nf; i++)
+            for (label i=0; i<Nf; i++)
             {
                 // immediately evaporate mass that has reached critical
                 // condition
diff --git a/src/lagrangian/dieselSpray/parcel/setRelaxationTimes.C b/src/lagrangian/dieselSpray/parcel/setRelaxationTimes.C
index 131e9f885f9877a9ba771d4650ffec322aaed6e5..94cc2df8f8a3832ec567a7468fdc3ab90c4449d5 100644
--- a/src/lagrangian/dieselSpray/parcel/setRelaxationTimes.C
+++ b/src/lagrangian/dieselSpray/parcel/setRelaxationTimes.C
@@ -74,7 +74,7 @@ void parcel::setRelaxationTimes
     scalar cpMixture = 0.0;
     scalar muf = 0.0;
 
-    for(label i=0; i<Ns; i++)
+    for (label i=0; i<Ns; i++)
     {
         scalar Y = sDB.composition().Y()[i][celli];
         W += Y/sDB.gasProperties()[i].W();
@@ -90,7 +90,7 @@ void parcel::setRelaxationTimes
     scalarField psat(Nf, 0.0);
     scalarField msat(Nf, 0.0);
 
-    for(label i=0; i<Nf; i++)
+    for (label i=0; i<Nf; i++)
     {
         label j = sDB.liquidToGasIndex()[i];
         scalar Y = sDB.composition().Y()[j][celli];
@@ -121,14 +121,14 @@ void parcel::setRelaxationTimes
     scalarField Ys(Nf, 0.0);
     scalar Wliq = 0.0;
 
-    for(label i=0; i<Nf; i++)
+    for (label i=0; i<Nf; i++)
     {
         label j = sDB.liquidToGasIndex()[i];
         scalar Wi = sDB.gasProperties()[j].W();
         Wliq += Xs[i]*Wi;
     }
 
-    for(label i=0; i<Nf; i++)
+    for (label i=0; i<Nf; i++)
     {
         label j = sDB.liquidToGasIndex()[i];
         scalar Wi = sDB.gasProperties()[j].W();
@@ -140,9 +140,9 @@ void parcel::setRelaxationTimes
 
     // calculate the characteritic times
 
-    if(liquidCore_> 0.5)
+    if (liquidCore_> 0.5)
     {
-//      no drag for parcels in the liquid core..
+        // no drag for parcels in the liquid core.
         tauMomentum = GREAT;
     }
     else
@@ -177,7 +177,7 @@ void parcel::setRelaxationTimes
     // this is mainly to put a limit on the evaporation time,
     // since tauEvaporation is very very small close to the boiling point.
 
-    for(label i=0; i<Nf; i++)
+    for (label i=0; i<Nf; i++)
     {
         scalar Td = min(T(), 0.999*fuels.properties()[i].Tc());
         bool boiling = fuels.properties()[i].pv(pressure, Td) >= 0.999*pressure;
@@ -187,7 +187,7 @@ void parcel::setRelaxationTimes
         scalar partialPressure = Xf[i]*pressure;
 
 //      saturated vapour
-        if(partialPressure > psat[i])
+        if (partialPressure > psat[i])
         {
             tauEvaporation[i] = GREAT;
         }
@@ -259,7 +259,7 @@ void parcel::setRelaxationTimes
                 scalar vapourSurfaceEnthalpy = 0.0;
                 scalar vapourFarEnthalpy = 0.0;
 
-                for(label k = 0; k < sDB.gasProperties().size(); k++)
+                for (label k = 0; k < sDB.gasProperties().size(); k++)
                 {
                     vapourSurfaceEnthalpy += sDB.composition().Y()[k][celli]*sDB.gasProperties()[k].H(tBoilingSurface);
                     vapourFarEnthalpy += sDB.composition().Y()[k][celli]*sDB.gasProperties()[k].H(temperature);
diff --git a/src/lagrangian/dieselSpray/spray/spray.C b/src/lagrangian/dieselSpray/spray/spray.C
index e7725acd2cea59687ec8a45150b456f322075efa..1e556d7a763af4cad9d4fae42dbab8de72fde01e 100644
--- a/src/lagrangian/dieselSpray/spray/spray.C
+++ b/src/lagrangian/dieselSpray/spray/spray.C
@@ -331,11 +331,11 @@ Foam::spray::spray
         }
         if (liquidToGasIndex_[i] == -1)
         {
-            Info << "In composition:" << endl;
+            Info<< "In composition:" << endl;
             for (label k=0; k<Ns; k++)
             {
                 word specieName(composition_.Y()[k].name());
-                Info << specieName << endl;
+                Info<< specieName << endl;
             }
 
             FatalError<<
diff --git a/src/lagrangian/dieselSpray/spray/sprayFunctions.C b/src/lagrangian/dieselSpray/spray/sprayFunctions.C
index fb3e9541b15d0eb6f50acefa228ff1ecb2cee026..632d47411ad88223d2ac1812eafc40ff1118cbdf 100644
--- a/src/lagrangian/dieselSpray/spray/sprayFunctions.C
+++ b/src/lagrangian/dieselSpray/spray/sprayFunctions.C
@@ -77,7 +77,7 @@ scalar spray::injectedEnthalpy
         scalar Wl = fuels_->W(X);
         scalar hg = 0.0;
 
-        for(label j=0; j<Nf; j++)
+        for (label j=0; j<Nf; j++)
         {
             label k = liquidToGasIndex_[j];
             hg += gasProperties()[k].H(T)*gasProperties()[k].W()*X[j]/Wl;
@@ -133,7 +133,7 @@ scalar spray::liquidEnthalpy() const
         scalar hg = 0.0;
         scalar Wl = fuels().W(elmnt().X());
 
-        for(label j=0; j<Nf; j++)
+        for (label j=0; j<Nf; j++)
         {
             label k = liquidToGasIndex_[j];
 
@@ -177,7 +177,7 @@ scalar spray::liquidTotalEnthalpy() const
         scalar hg = 0.0;
         scalar Wl = fuels().W(elmnt().X());
 
-        for(label j=0; j<Nf; j++)
+        for (label j=0; j<Nf; j++)
         {
             label k = liquidToGasIndex_[j];
             hg +=
@@ -251,7 +251,7 @@ scalar spray::liquidPenetration
     vector ip(vector::zero);
     if (nHoles > 1)
     {
-        for(label i=0;i<nHoles;i++)
+        for (label i=0;i<nHoles;i++)
         {
             ip += injectors_[nozzlei].properties()->position(i);
         }
@@ -308,7 +308,7 @@ scalar spray::liquidPenetration
                 if (de < dist[i])
                 {
                     found = true;
-                    for(label j=n; j>i; j--)
+                    for (label j=n; j>i; j--)
                     {
                         m[j]    = m[j-1];
                         dist[j] = dist[j-1];
diff --git a/src/lagrangian/dieselSpray/spray/sprayInject.C b/src/lagrangian/dieselSpray/spray/sprayInject.C
index b0aea70def1878bccdd0eba33d70276936704ce2..f53ad1748363d13d6aa9358cb6f8b68aab2b989c 100644
--- a/src/lagrangian/dieselSpray/spray/sprayInject.C
+++ b/src/lagrangian/dieselSpray/spray/sprayInject.C
@@ -79,12 +79,12 @@ void spray::inject()
                 )
             );
 
-            for(label j=0; j<Np; j++)
+            for (label j=0; j<Np; j++)
             {
                 // calculate the time of injection for parcel 'j'
                 scalar toi = time0 + constT + deltaT*j/scalar(Np);
 
-                for(label n=0; n<nHoles; n++)
+                for (label n=0; n<nHoles; n++)
                 {
 
                     // calculate the velocity of the injected parcel
@@ -164,8 +164,8 @@ void spray::inject()
                             delete pPtr;
                         }
                     } // if (injectorCell....
-                } // for(label n=0...
-            } // for(label j=0....
+                } // for (label n=0...
+            } // for (label j=0....
         } // if (mass>0)...
     } // forAll(injectors)...
 
diff --git a/src/lagrangian/dieselSpray/spraySubModels/atomizationModel/LISA/LISA.C b/src/lagrangian/dieselSpray/spraySubModels/atomizationModel/LISA/LISA.C
index 2478061ab1416b29378f6088a8039e5fb5261d9e..01525723f9b0a6236a46c7395553739a40b2e6ca 100644
--- a/src/lagrangian/dieselSpray/spraySubModels/atomizationModel/LISA/LISA.C
+++ b/src/lagrangian/dieselSpray/spraySubModels/atomizationModel/LISA/LISA.C
@@ -183,7 +183,7 @@ void LISA::atomizeParcel
         scalar kOld = 0.0;
 
 
-        for(label i=0; i<40; i++)
+        for (label i=0; i<40; i++)
         {
 
             k = kPos
diff --git a/src/lagrangian/dieselSpray/spraySubModels/dispersionModel/gradientDispersionRAS/gradientDispersionRAS.C b/src/lagrangian/dieselSpray/spraySubModels/dispersionModel/gradientDispersionRAS/gradientDispersionRAS.C
index d381e9516f52ce9d5b96a0d05cc11b805dee2ac7..1db72fe0088d0e1b8cf2b965f007b3a9304d744d 100644
--- a/src/lagrangian/dieselSpray/spraySubModels/dispersionModel/gradientDispersionRAS/gradientDispersionRAS.C
+++ b/src/lagrangian/dieselSpray/spraySubModels/dispersionModel/gradientDispersionRAS/gradientDispersionRAS.C
@@ -109,7 +109,7 @@ void gradientDispersionRAS::disperseParcels() const
                 scalar x1 = 0.0;
                 scalar x2 = 0.0;
                 scalar rsq = 10.0;
-                while((rsq > 1.0) || (rsq == 0.0))
+                while ((rsq > 1.0) || (rsq == 0.0))
                 {
                     x1 = 2.0*spray_.rndGen().scalar01() - 1.0;
                     x2 = 2.0*spray_.rndGen().scalar01() - 1.0;
diff --git a/src/lagrangian/dieselSpray/spraySubModels/dispersionModel/stochasticDispersionRAS/stochasticDispersionRAS.C b/src/lagrangian/dieselSpray/spraySubModels/dispersionModel/stochasticDispersionRAS/stochasticDispersionRAS.C
index 36cf7b05885da131ed7937077c2944c6554d3734..5c8d8732f8b1164f18d5217bb832ab628e16b80e 100644
--- a/src/lagrangian/dieselSpray/spraySubModels/dispersionModel/stochasticDispersionRAS/stochasticDispersionRAS.C
+++ b/src/lagrangian/dieselSpray/spraySubModels/dispersionModel/stochasticDispersionRAS/stochasticDispersionRAS.C
@@ -111,7 +111,7 @@ void stochasticDispersionRAS::disperseParcels() const
                 // numerical recipes... Ch. 7. Random Numbers...
                 scalar x1,x2;
                 scalar rsq = 10.0;
-                while((rsq > 1.0) || (rsq == 0.0))
+                while ((rsq > 1.0) || (rsq == 0.0))
                 {
                     x1 = 2.0*spray_.rndGen().scalar01() - 1.0;
                     x2 = 2.0*spray_.rndGen().scalar01() - 1.0;
diff --git a/src/lagrangian/dieselSpray/spraySubModels/evaporationModel/RutlandFlashBoil/RutlandFlashBoil.C b/src/lagrangian/dieselSpray/spraySubModels/evaporationModel/RutlandFlashBoil/RutlandFlashBoil.C
index 7ba41141ba35b3840a8a49aad639506e370db833..afb24110d8d9b9329a50c4ad4910b9b760622653 100644
--- a/src/lagrangian/dieselSpray/spraySubModels/evaporationModel/RutlandFlashBoil/RutlandFlashBoil.C
+++ b/src/lagrangian/dieselSpray/spraySubModels/evaporationModel/RutlandFlashBoil/RutlandFlashBoil.C
@@ -160,7 +160,7 @@ scalar RutlandFlashBoil::relaxationTime
     scalar logXratio = log(1.0 + Xratio);
     scalar Fb = 1.0;
 
-    if(logXratio > SMALL)
+    if (logXratio > SMALL)
     {
         Fb = pow((1.0 + Xratio), FbExp)*log(1.0 + Xratio)/Xratio;
     }
@@ -286,7 +286,7 @@ scalar RutlandFlashBoil::boilingTime
                     Gneg = Gneg/10.0;
                     Gneg = max(Gneg, VSMALL);
                     FgNeg = Gneg + Gf - B*log(1.0 + (1.0 + Gf/Gneg)*A);
-                    if(FgNeg < 0.0)
+                    if (FgNeg < 0.0)
                     {
                         break;
                     }
@@ -303,7 +303,7 @@ scalar RutlandFlashBoil::boilingTime
 
             if (FgNeg > 0.0)
             {
-                Info << "no convergence" << endl;
+                Info<< "no convergence" << endl;
             }
 
 
@@ -333,7 +333,7 @@ scalar RutlandFlashBoil::boilingTime
 
                 if (k >= Niter - 1)
                 {
-                    Info << " No convergence for G " << endl;
+                    Info<< " No convergence for G " << endl;
                 }
             }
             else
diff --git a/src/lagrangian/dieselSpray/spraySubModels/wallModel/reflectParcel/reflectParcel.C b/src/lagrangian/dieselSpray/spraySubModels/wallModel/reflectParcel/reflectParcel.C
index aa56562f009838cfbcbf64a078d8fa51b81e3f22..9d631553e57f7cd5379e4033cfceee05dc1949f1 100644
--- a/src/lagrangian/dieselSpray/spraySubModels/wallModel/reflectParcel/reflectParcel.C
+++ b/src/lagrangian/dieselSpray/spraySubModels/wallModel/reflectParcel/reflectParcel.C
@@ -159,7 +159,7 @@ bool reflectParcel::wallTreatment
                 /*
                 if (mag(Ub-v) > SMALL)
                 {
-                    Info << "reflectParcel:: v = " << v
+                    Info<< "reflectParcel:: v = " << v
                         << ", Ub = " << Ub
                         << ", facei = " << facei
                         << ", patchi = " << patchi
diff --git a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C
index f7aaaa724d2a9f4606d4785fc59e7b29fd089163..5c7819c709a141acbd42b5f77d77a2c1c4d8bb5c 100644
--- a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C
+++ b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C
@@ -380,7 +380,7 @@ void Foam::DsmcCloud<ParcelType>::collisions()
                     {
                         candidateQ = subCellPs[rndGen_.integer(0, nSC - 1)];
 
-                    } while(candidateP == candidateQ);
+                    } while (candidateP == candidateQ);
                 }
                 else
                 {
@@ -392,7 +392,7 @@ void Foam::DsmcCloud<ParcelType>::collisions()
                     {
                         candidateQ = rndGen_.integer(0, nC - 1);
 
-                    } while(candidateP == candidateQ);
+                    } while (candidateP == candidateQ);
                 }
 
                 // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -405,7 +405,7 @@ void Foam::DsmcCloud<ParcelType>::collisions()
                 // label candidateQ = rndGen_.integer(0, nC-1);
 
                 // // If the same candidate is chosen, choose again
-                // while(candidateP == candidateQ)
+                // while (candidateP == candidateQ)
                 // {
                 //     candidateQ = rndGen_.integer(0, nC-1);
                 // }
diff --git a/src/lagrangian/intermediate/submodels/IO/DataEntry/Table/Table.C b/src/lagrangian/intermediate/submodels/IO/DataEntry/Table/Table.C
index 98abaf6e67e533db1dfe4d19b0656ba548d9d333..ed009f8f3347eb6d97e4c82349711131836b41b2 100644
--- a/src/lagrangian/intermediate/submodels/IO/DataEntry/Table/Table.C
+++ b/src/lagrangian/intermediate/submodels/IO/DataEntry/Table/Table.C
@@ -64,7 +64,7 @@ template<class Type>
 Type Foam::Table<Type>::value(const scalar x) const
 {
     // Return zero if out of bounds
-    if ((x > table_[table_.size()-1].first()) || (x < table_[0].first()))
+    if (x < table_[0].first() || x > table_.last().first())
     {
         return pTraits<Type>::zero;
     }
diff --git a/src/lagrangian/molecularDynamics/molecularMeasurements/correlationFunction/correlationFunction.C b/src/lagrangian/molecularDynamics/molecularMeasurements/correlationFunction/correlationFunction.C
index c9e975e296afc9a6730cbc43ffe929594b0d3cf9..2dd3e9bf3fa45ecdf1c260edcda0053dc1628069 100644
--- a/src/lagrangian/molecularDynamics/molecularMeasurements/correlationFunction/correlationFunction.C
+++ b/src/lagrangian/molecularDynamics/molecularMeasurements/correlationFunction/correlationFunction.C
@@ -185,7 +185,7 @@ void Foam::correlationFunction<Type>::calculateCorrelationFunction
     const Type& currentValue
 )
 {
-    if( measurandFieldSize() != 1)
+    if (measurandFieldSize() != 1)
     {
         FatalErrorIn("correlationFunction<Type>::calculateCorrelationFunction")
             << "Trying to supply a single value to calculate the correlation "
diff --git a/src/lagrangian/molecularDynamics/molecularMeasurements/distribution/distribution.C b/src/lagrangian/molecularDynamics/molecularMeasurements/distribution/distribution.C
index 7cc9e70c0ef6413a086dc1f33c8aefdaaa242840..a714a36924dda00814b6c0529535c823f4c1b3ab 100644
--- a/src/lagrangian/molecularDynamics/molecularMeasurements/distribution/distribution.C
+++ b/src/lagrangian/molecularDynamics/molecularMeasurements/distribution/distribution.C
@@ -256,7 +256,7 @@ void Foam::distribution::insertMissingKeys()
 
     if (keys.size())
     {
-        for (label k = keys[0]; k < keys[keys.size()-1]; k++)
+        for (label k = keys[0]; k < keys.last(); k++)
         {
             iter = find(k);
 
diff --git a/src/lagrangian/molecularDynamics/molecule/interactionLists/interactionLists.C b/src/lagrangian/molecularDynamics/molecule/interactionLists/interactionLists.C
index f1036eaa0e937bd2121f80187ef61199cd3d75e4..1a587f3022b5e44b0605661ea7a759b421045888 100644
--- a/src/lagrangian/molecularDynamics/molecule/interactionLists/interactionLists.C
+++ b/src/lagrangian/molecularDynamics/molecule/interactionLists/interactionLists.C
@@ -667,7 +667,7 @@ const Foam::labelList Foam::interactionLists::referredCellsInRangeOfSegment
                     )
                 )
                 {
-                    if(findIndex(referredCellsFoundInRange, rIL) == -1)
+                    if (findIndex(referredCellsFoundInRange, rIL) == -1)
                     {
                         referredCellsFoundInRange.append(rIL);
                     }
diff --git a/src/lagrangian/molecularDynamics/molecule/interactionLists/referredCell/referredCell.C b/src/lagrangian/molecularDynamics/molecule/interactionLists/referredCell/referredCell.C
index 225ad5902a01ca024526ef4e8b43326f90e4f677..0059fad4b9431843f987c0287684b099e1b5255c 100644
--- a/src/lagrangian/molecularDynamics/molecule/interactionLists/referredCell/referredCell.C
+++ b/src/lagrangian/molecularDynamics/molecule/interactionLists/referredCell/referredCell.C
@@ -277,7 +277,7 @@ referredCell::referredCell
     // Allow sourceCell = -1 to create a dummy referredCell
     // to obtain the transformation
 
-    if(sourceCell >= 0)
+    if (sourceCell >= 0)
     {
         setConstructionData(mesh, sourceCell);
     }
diff --git a/src/lagrangian/molecularDynamics/molecule/interactionLists/referredCellList/referredCellList.C b/src/lagrangian/molecularDynamics/molecule/interactionLists/referredCellList/referredCellList.C
index acccb66b31d933a193016cc607b5a137b77ffbd4..583f7382beed512136c0a41fc7a964bb60695dc3 100644
--- a/src/lagrangian/molecularDynamics/molecule/interactionLists/referredCellList/referredCellList.C
+++ b/src/lagrangian/molecularDynamics/molecule/interactionLists/referredCellList/referredCellList.C
@@ -40,7 +40,7 @@ void Foam::referredCellList::buildReferredCellList
     bool pointPointListBuild
 )
 {
-    Info << nl << "Building list of referred interaction neighbours" << endl;
+    Info<< nl << "Building list of referred interaction neighbours" << endl;
 
     const polyMesh& mesh(il_.mesh());
 
diff --git a/src/lagrangian/molecularDynamics/molecule/mdTools/averageMDFields.H b/src/lagrangian/molecularDynamics/molecule/mdTools/averageMDFields.H
index 9781c9d70f415b8c92d90d29d3b05ec015bcebcc..4e93070479e69dfaf71c485acf929e7ac8faab0a 100644
--- a/src/lagrangian/molecularDynamics/molecule/mdTools/averageMDFields.H
+++ b/src/lagrangian/molecularDynamics/molecule/mdTools/averageMDFields.H
@@ -152,7 +152,7 @@ if (runTime.outputTime())
 
     forAll(totalTemperature.internalField(), tT)
     {
-        if(totalN_sum[tT] > 0)
+        if (totalN_sum[tT] > 0)
         {
             totalTemperature.internalField()[tT] =
                 totalTemperatureVTerms_sum[tT]
@@ -181,7 +181,7 @@ if (runTime.outputTime())
 
         forAll(singleSpeciesMeanKE, sSMKE)
         {
-            if(allSpeciesN_RU[mKE][sSMKE])
+            if (allSpeciesN_RU[mKE][sSMKE])
             {
                 singleSpeciesMeanKE[sSMKE] =
                     allSpeciesM_RU[mKE][sSMKE]
@@ -208,7 +208,7 @@ if (runTime.outputTime())
 
     forAll(totalMeanKE.internalField(), tMKE)
     {
-        if(totalN_sum[tMKE] > 0)
+        if (totalN_sum[tMKE] > 0)
         {
             totalMeanKE.internalField()[tMKE] =
                 totalKE_sum[tMKE]
diff --git a/src/lagrangian/molecularDynamics/molecule/mdTools/createMDFields.H b/src/lagrangian/molecularDynamics/molecule/mdTools/createMDFields.H
index 730db2d0a8c7e2f701ff63615ca4d58bd331116e..50e82df48ab0ab945297c8c521db9a5be9bac366 100644
--- a/src/lagrangian/molecularDynamics/molecule/mdTools/createMDFields.H
+++ b/src/lagrangian/molecularDynamics/molecule/mdTools/createMDFields.H
@@ -39,7 +39,7 @@ PtrList<volScalarField> allSpeciesRhoN
 
 forAll (allSpeciesRhoN, rN)
 {
-    Info << "    Creating number density field for "
+    Info<< "    Creating number density field for "
         << molecules.potential().idList()[rN] << endl;
 
     allSpeciesRhoN.set
@@ -94,7 +94,7 @@ PtrList<volScalarField> allSpeciesRhoM
 
 forAll (allSpeciesRhoM, rM)
 {
-    Info << "    Creating mass density field for "
+    Info<< "    Creating mass density field for "
         << molecules.potential().idList()[rM] << endl;
 
     allSpeciesRhoM.set
@@ -149,7 +149,7 @@ PtrList<volVectorField> allSpeciesVelocity
 
 forAll (allSpeciesVelocity, v)
 {
-    Info << "    Creating velocity field for "
+    Info<< "    Creating velocity field for "
         << molecules.potential().idList()[v] << endl;
 
     allSpeciesVelocity.set
@@ -223,7 +223,7 @@ PtrList<volScalarField> allSpeciesTemperature
 
 forAll (allSpeciesTemperature, t)
 {
-    Info << "    Creating temperature field for "
+    Info<< "    Creating temperature field for "
         << molecules.potential().idList()[t] << endl;
 
     allSpeciesTemperature.set
@@ -279,7 +279,7 @@ PtrList<volScalarField> allSpeciesMeanKE
 
 forAll (allSpeciesMeanKE, mKE)
 {
-    Info << "    Creating mean kinetic energy field for "
+    Info<< "    Creating mean kinetic energy field for "
         << molecules.potential().idList()[mKE] << endl;
 
     allSpeciesMeanKE.set
diff --git a/src/lagrangian/molecularDynamics/molecule/mdTools/createRefUnits.H b/src/lagrangian/molecularDynamics/molecule/mdTools/createRefUnits.H
index bbd6c6daf7bc378e10c1cec250febb9184dc9769..c1e558b2213748d246588a244958642a6d972215 100644
--- a/src/lagrangian/molecularDynamics/molecule/mdTools/createRefUnits.H
+++ b/src/lagrangian/molecularDynamics/molecule/mdTools/createRefUnits.H
@@ -11,7 +11,7 @@ IOobject reducedUnitsDictIOobject
 
 if (reducedUnitsDictIOobject.headerOk())
 {
-    Info << nl
+    Info<< nl
         << "Reading reference quantities from reducedUnitsDict file." << endl;
 
     IOdictionary reducedUnitsDict(reducedUnitsDictIOobject);
diff --git a/src/lagrangian/molecularDynamics/molecule/mdTools/meanMomentumEnergyAndNMols.H b/src/lagrangian/molecularDynamics/molecule/mdTools/meanMomentumEnergyAndNMols.H
index fb5118bb5a484f0ce77bb3dd7a88b0e88aa2fd14..446e58da05f6ba861cf026383238b088096a85da 100644
--- a/src/lagrangian/molecularDynamics/molecule/mdTools/meanMomentumEnergyAndNMols.H
+++ b/src/lagrangian/molecularDynamics/molecule/mdTools/meanMomentumEnergyAndNMols.H
@@ -73,7 +73,7 @@ label singleStepDOFs = 0;
         //singleStepCentreOfMass += mol().position()*molMass;
     }
 
-    // if(singleStepNMols)
+    // if (singleStepNMols)
     // {
     //     singleStepCentreOfMass /= singleStepTotalMass;
     // }
@@ -104,7 +104,7 @@ label singleStepDOFs = 0;
         singleStepTotalAngularMomentum += molPiGlobal;
         //+((mol().position() - singleStepCentreOfMass) ^ (molV * molMass));
 
-        if(mag(molV) > singleStepMaxVelocityMag)
+        if (mag(molV) > singleStepMaxVelocityMag)
         {
             singleStepMaxVelocityMag = mag(molV);
         }
@@ -176,7 +176,7 @@ if (singleStepNMols)
         /singleStepNMols
         << endl;
 
-        // Info << singleStepNMols << " "
+        // Info<< singleStepNMols << " "
         //     << singleStepTotalMomentum/singleStepTotalMass << " "
         //     << singleStepMaxVelocityMag << " "
         //     << singleStepTotalKE/singleStepNMols << " "
diff --git a/src/lagrangian/molecularDynamics/molecule/mdTools/temperatureAndPressure.H b/src/lagrangian/molecularDynamics/molecule/mdTools/temperatureAndPressure.H
index 34dd65156a90d7cc61c1f212a33f5518c37703d1..e95addc7bd374577358f504ad2ce7024f8c310bf 100644
--- a/src/lagrangian/molecularDynamics/molecule/mdTools/temperatureAndPressure.H
+++ b/src/lagrangian/molecularDynamics/molecule/mdTools/temperatureAndPressure.H
@@ -53,7 +53,7 @@ if (runTime.outputTime())
 {
     if (accumulatedNMols)
     {
-        Info << "calculating averages" << endl;
+        Info<< "calculating averages" << endl;
 
         averageTemperature =
         (
@@ -77,7 +77,7 @@ if (runTime.outputTime())
             meshVolume
         );
 
-        Info << "----------------------------------------" << nl
+        Info<< "----------------------------------------" << nl
             << "Averaged properties" << nl
             << "Average |velocity| = "
             << mag(accumulatedTotalLinearMomentum)/accumulatedTotalMass << nl
diff --git a/src/lagrangian/molecularDynamics/molecule/molecule/moleculeI.H b/src/lagrangian/molecularDynamics/molecule/molecule/moleculeI.H
index 447a04e4ea3e047f045ac56cf55af05aa2849cac..b13f5ea6a0219fdc36595f087a072fd531a575c4 100644
--- a/src/lagrangian/molecularDynamics/molecule/molecule/moleculeI.H
+++ b/src/lagrangian/molecularDynamics/molecule/molecule/moleculeI.H
@@ -77,7 +77,7 @@ inline Foam::molecule::constantProperties::constantProperties
 
     siteReferencePositions_ -= centreOfMass;
 
-    if(siteIds_.size() == 1)
+    if (siteIds_.size() == 1)
     {
         // Single site molecule - no rotational motion.
 
@@ -85,7 +85,7 @@ inline Foam::molecule::constantProperties::constantProperties
 
         momentOfInertia_ = diagTensor(-1, -1, -1);
     }
-    else if(linearMoleculeTest())
+    else if (linearMoleculeTest())
     {
         // Linear molecule.
 
diff --git a/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C b/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C
index f341267b846c696c5703118c70d57bd1916f8be5..a50159ee9333c15644fcc7b3262188b798fbfb06 100644
--- a/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C
+++ b/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloud.C
@@ -509,7 +509,7 @@ void Foam::moleculeCloud::initialiseMolecules
                     zoneDict.lookup("latticePositions")
                 );
 
-                if(latticeIds.size() != latticePositions.size())
+                if (latticeIds.size() != latticePositions.size())
                 {
                     FatalErrorIn("Foam::moleculeCloud::initialiseMolecules")
                         << "latticeIds and latticePositions must be the same "
diff --git a/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloudI.H b/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloudI.H
index fee67cfced40f59f4820a7ae232844502aad8d83..2a92af07cfe63b27bb2dcd2b4e8a99677792fcbc 100644
--- a/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloudI.H
+++ b/src/lagrangian/molecularDynamics/molecule/moleculeCloud/moleculeCloudI.H
@@ -75,7 +75,7 @@ inline void Foam::moleculeCloud::evaluatePair
 
                 scalar rsIsJMagSq = magSqr(rsIsJ);
 
-                if(pairPot.rCutSqr(idsI, idsJ, rsIsJMagSq))
+                if (pairPot.rCutSqr(idsI, idsJ, rsIsJMagSq))
                 {
                     scalar rsIsJMag = mag(rsIsJ);
 
@@ -118,7 +118,7 @@ inline void Foam::moleculeCloud::evaluatePair
 
                 scalar rsIsJMagSq = magSqr(rsIsJ);
 
-                if(rsIsJMagSq <= electrostatic.rCutSqr())
+                if (rsIsJMagSq <= electrostatic.rCutSqr())
                 {
                     scalar rsIsJMag = mag(rsIsJ);
 
diff --git a/src/lagrangian/molecularDynamics/potential/pairPotential/pairPotentialList/pairPotentialList.C b/src/lagrangian/molecularDynamics/potential/pairPotential/pairPotentialList/pairPotentialList.C
index 2d77c4ce59505c320590182f5eae168637f48cc4..26b99d7e3b88863d3ec71147e3bc2188aa04747a 100644
--- a/src/lagrangian/molecularDynamics/potential/pairPotential/pairPotentialList/pairPotentialList.C
+++ b/src/lagrangian/molecularDynamics/potential/pairPotential/pairPotentialList/pairPotentialList.C
@@ -158,7 +158,7 @@ void Foam::pairPotentialList::readPairPotentialDict
     {
         OFstream ppTabFile(mesh.time().path()/"electrostatic");
 
-        if(!electrostaticPotential_->writeEnergyAndForceTables(ppTabFile))
+        if (!electrostaticPotential_->writeEnergyAndForceTables(ppTabFile))
         {
             FatalErrorIn("pairPotentialList::readPairPotentialDict")
                 << "Failed writing to "
diff --git a/src/lagrangian/molecularDynamics/potential/potential/potential.C b/src/lagrangian/molecularDynamics/potential/potential/potential.C
index 5532c2f105c0751eeb4bf966918e91fb12c09c10..2fc95108dd5054ac394da6f8ecc8be88aa2ad2e6 100644
--- a/src/lagrangian/molecularDynamics/potential/potential/potential.C
+++ b/src/lagrangian/molecularDynamics/potential/potential/potential.C
@@ -53,7 +53,7 @@ void Foam::potential::setSiteIdList(const IOdictionary& moleculePropertiesDict)
         {
             const word& siteId = siteIdNames[sI];
 
-            if(findIndex(siteIdList, siteId) == -1)
+            if (findIndex(siteIdList, siteId) == -1)
             {
                 siteIdList.append(siteId);
             }
@@ -65,14 +65,14 @@ void Foam::potential::setSiteIdList(const IOdictionary& moleculePropertiesDict)
         {
             const word& siteId = pairPotSiteIds[sI];
 
-            if(findIndex(siteIdNames, siteId) == -1)
+            if (findIndex(siteIdNames, siteId) == -1)
             {
                 FatalErrorIn("potential.C") << nl
                     << siteId << " in pairPotentialSiteIds is not in siteIds: "
                     << siteIdNames << nl << abort(FatalError);
             }
 
-            if(findIndex(pairPotentialSiteIdList, siteId) == -1)
+            if (findIndex(pairPotentialSiteIdList, siteId) == -1)
             {
                 pairPotentialSiteIdList.append(siteId);
             }
@@ -85,7 +85,7 @@ void Foam::potential::setSiteIdList(const IOdictionary& moleculePropertiesDict)
     {
         const word& siteId = siteIdList[aSIN];
 
-        if(findIndex(pairPotentialSiteIdList, siteId) == -1)
+        if (findIndex(pairPotentialSiteIdList, siteId) == -1)
         {
             pairPotentialSiteIdList.append(siteId);
         }
@@ -231,7 +231,7 @@ void Foam::potential::potential::readPotentialDict()
     if (potentialDict.found("external"))
     {
 
-        Info << nl << "Reading external forces:" << endl;
+        Info<< nl << "Reading external forces:" << endl;
 
         const dictionary& externalDict = potentialDict.subDict("external");
 
@@ -244,7 +244,7 @@ void Foam::potential::potential::readPotentialDict()
         }
     }
 
-    Info << nl << tab << "gravity = " << gravity_ << endl;
+    Info<< nl << tab << "gravity = " << gravity_ << endl;
 }
 
 
@@ -287,7 +287,7 @@ void Foam::potential::potential::readMdInitialiseDict
         {
             const word& id = latticeIds[i];
 
-            if(!moleculePropertiesDict.found(id))
+            if (!moleculePropertiesDict.found(id))
             {
                 FatalErrorIn("potential.C") << nl
                     << "Molecule type "
diff --git a/src/mesh/autoMesh/Make/options b/src/mesh/autoMesh/Make/options
index f1687b7eb1ecf3b19e60d8363cc3703b17a80e72..573d0007c1d9445f4cee37c8f74341922bbc4940 100644
--- a/src/mesh/autoMesh/Make/options
+++ b/src/mesh/autoMesh/Make/options
@@ -1,5 +1,5 @@
 EXE_INC = \
-    -I$(LIB_SRC)/decompositionMethods/decompositionMethods/lnInclude \
+    -I$(LIB_SRC)/parallel/decompositionMethods/lnInclude \
     -I$(LIB_SRC)/dynamicMesh/lnInclude \
     -I$(LIB_SRC)/finiteVolume/lnInclude \
     -I$(LIB_SRC)/lagrangian/basic/lnInclude \
diff --git a/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/autoLayerDriverShrink.C b/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/autoLayerDriverShrink.C
index 8f47f9de8cec7d1cbc0f99b3228abc2084ff41fb..bc2dcabf58ecfb269deec9b407cc2bfa0d2f25f6 100644
--- a/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/autoLayerDriverShrink.C
+++ b/src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/autoLayerDriverShrink.C
@@ -468,7 +468,7 @@ void Foam::autoLayerDriver::findIsolatedRegions
     // Keep count of number of points unextruded
     label nPointCounter = 0;
 
-    while(true)
+    while (true)
     {
         // Stop layer growth where mesh wraps around edge with a
         // large feature angle
@@ -835,7 +835,7 @@ void Foam::autoLayerDriver::medialAxisSmoothingInfo
                                 vector::zero    // passive data
                             )
                         );
-                        pointMedialDist[pointI] = maxInfo[maxInfo.size()-1];
+                        pointMedialDist[pointI] = maxInfo.last();
                     }
                 }
             }
@@ -879,7 +879,7 @@ void Foam::autoLayerDriver::medialAxisSmoothingInfo
                                 vector::zero    // passive data
                             )
                         );
-                        pointMedialDist[pointI] = maxInfo[maxInfo.size()-1];
+                        pointMedialDist[pointI] = maxInfo.last();
                     }
                 }
             }
diff --git a/src/mesh/autoMesh/autoHexMesh/trackedParticle/ExactParticle.C b/src/mesh/autoMesh/autoHexMesh/trackedParticle/ExactParticle.C
index 237e35276c33e528be26b13430bc078ea66baab4..0bda7cd1cc4dafb8c1c887ae09e72d400593cd61 100644
--- a/src/mesh/autoMesh/autoHexMesh/trackedParticle/ExactParticle.C
+++ b/src/mesh/autoMesh/autoHexMesh/trackedParticle/ExactParticle.C
@@ -39,7 +39,7 @@ Foam::label Foam::ExactParticle<ParticleType>::track
     this->facei_ = -1;
 
     // Tracks to endPosition or stop on boundary
-    while(!this->onBoundary() && this->stepFraction_ < 1.0 - SMALL)
+    while (!this->onBoundary() && this->stepFraction_ < 1.0 - SMALL)
     {
         this->stepFraction_ +=
             trackToFace(endPosition, td)
diff --git a/src/mesh/blockMesh/Make/files b/src/mesh/blockMesh/Make/files
index cc7a1c1bb5fe8b9db96e92037ca0dced0fe89b86..d68caa1c244ba6544143a427c877a1e885649894 100644
--- a/src/mesh/blockMesh/Make/files
+++ b/src/mesh/blockMesh/Make/files
@@ -1,13 +1,17 @@
+curvedEdges/CatmullRomSpline.C
+curvedEdges/polyLine.C
+
+curvedEdges/arcEdge.C
 curvedEdges/curvedEdge.C
 curvedEdges/lineEdge.C
-curvedEdges/polyLine.C
 curvedEdges/polyLineEdge.C
-curvedEdges/arcEdge.C
-curvedEdges/spline.C
-curvedEdges/BSpline.C
-curvedEdges/simpleSplineEdge.C
-curvedEdges/polySplineEdge.C
 curvedEdges/lineDivide.C
+curvedEdges/splineEdge.C
+
+curvedEdges/legacy/spline.C
+curvedEdges/legacy/BSpline.C
+curvedEdges/legacy/simpleSplineEdge.C
+curvedEdges/legacy/polySplineEdge.C
 
 blockDescriptor/blockDescriptor.C
 blockDescriptor/blockDescriptorEdges.C
diff --git a/src/mesh/blockMesh/blockDescriptor/blockDescriptor.C b/src/mesh/blockMesh/blockDescriptor/blockDescriptor.C
index 599a108c3cbffaf4ef996f89b8afc20e8711e45f..335fc824b85200d5c89c9d153e95a08be1fa625c 100644
--- a/src/mesh/blockMesh/blockDescriptor/blockDescriptor.C
+++ b/src/mesh/blockMesh/blockDescriptor/blockDescriptor.C
@@ -89,7 +89,7 @@ Foam::blockDescriptor::blockDescriptor
     {
         zoneName_ = t.wordToken();
 
-        // Get the next token
+        // Examine next token
         is >> t;
     }
     is.putBack(t);
@@ -129,7 +129,12 @@ Foam::blockDescriptor::blockDescriptor
 
     scalarList expRatios(is);
 
-    if (expRatios.size() == 3)
+    if (expRatios.size() == 1)
+    {
+        // identical in x/y/z-directions
+        expand_ = expRatios[0];
+    }
+    else if (expRatios.size() == 3)
     {
         // x-direction
         expand_[0]  = expRatios[0];
diff --git a/src/mesh/blockMesh/blockDescriptor/blockDescriptorEdges.C b/src/mesh/blockMesh/blockDescriptor/blockDescriptorEdges.C
index 5fcf31f4218935aa34f52339ddc21214022f737b..afc8fcd078bc53e21897b36a25c4f56d6e6cd006 100644
--- a/src/mesh/blockMesh/blockDescriptor/blockDescriptorEdges.C
+++ b/src/mesh/blockMesh/blockDescriptor/blockDescriptorEdges.C
@@ -120,8 +120,8 @@ void Foam::blockDescriptor::setEdge
                 // divide the line
                 lineDivide divEdge(cedge, dim, 1.0/(gExp+SMALL));
 
-                pointField p = divEdge.points();
-                scalarList d = divEdge.lambdaDivisions();
+                const pointField& p = divEdge.points();
+                const scalarList& d = divEdge.lambdaDivisions();
 
                 edgePoints_[edgeI].setSize(p.size());
                 edgeWeights_[edgeI].setSize(d.size());
diff --git a/src/mesh/blockMesh/curvedEdges/CatmullRomSpline.C b/src/mesh/blockMesh/curvedEdges/CatmullRomSpline.C
new file mode 100644
index 0000000000000000000000000000000000000000..d1647de07f7b3bf926a5f5a7fe9a417f73fc90ec
--- /dev/null
+++ b/src/mesh/blockMesh/curvedEdges/CatmullRomSpline.C
@@ -0,0 +1,131 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2009-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
+
+\*---------------------------------------------------------------------------*/
+
+#include "error.H"
+#include "CatmullRomSpline.H"
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::CatmullRomSpline::CatmullRomSpline
+(
+    const pointField& Knots,
+    const vector&,
+    const vector&
+)
+:
+    polyLine(Knots)
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+Foam::point Foam::CatmullRomSpline::position(const scalar mu) const
+{
+    // endpoints
+    if (mu < SMALL)
+    {
+        return points().first();
+    }
+    else if (mu > 1 - SMALL)
+    {
+        return points().last();
+    }
+
+    scalar lambda = mu;
+    label segment = localParameter(lambda);
+    return position(segment, lambda);
+}
+
+
+Foam::point Foam::CatmullRomSpline::position
+(
+    const label segment,
+    const scalar mu
+) const
+{
+    const point& p0 = points()[segment];
+    const point& p1 = points()[segment+1];
+
+    // special cases - no calculation needed
+    if (segment < 0 || mu < 0.0)
+    {
+        return p0;
+    }
+    else if (segment > nSegments() || mu >= 1.0)
+    {
+        return p1;
+    }
+
+    // determine the end points
+    point e0;
+    point e1;
+
+    if (segment == 0)
+    {
+        // end: simple reflection
+        e0 = 2.0 * p0 - p1;
+    }
+    else
+    {
+        e0 = points()[segment-1];
+    }
+
+    if (segment+1 == nSegments())
+    {
+        // end: simple reflection
+        e1 = 2.0 * p1 - p0;
+    }
+    else
+    {
+        e1 = points()[segment+2];
+    }
+
+
+    return 0.5 *
+    (
+        ( 2 * p0 )
+      + mu *
+        (
+            ( -e0 + p1 )
+          + mu *
+            (
+                ( 2*e0 - 5*p0 + 4*p1 - e1 )
+              + mu *
+                ( -e0 + 3*p0 - 3*p1 + e1 )
+            )
+        )
+    );
+}
+
+
+Foam::scalar Foam::CatmullRomSpline::length() const
+{
+    notImplemented("CatmullRomSpline::length() const");
+    return 1.0;
+}
+
+
+// ************************************************************************* //
diff --git a/src/mesh/blockMesh/curvedEdges/CatmullRomSpline.H b/src/mesh/blockMesh/curvedEdges/CatmullRomSpline.H
new file mode 100644
index 0000000000000000000000000000000000000000..6f1851a7a65821af8c7986c38c0a17d7504429e0
--- /dev/null
+++ b/src/mesh/blockMesh/curvedEdges/CatmullRomSpline.H
@@ -0,0 +1,128 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2009-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::CatmullRomSpline
+
+Description
+    An implementation of Catmull-Rom splines (sometime as known as
+    Overhauser splines).
+
+    In this implementation, the end tangents are created
+    automatically by reflection.
+
+    In matrix form, the @e local interpolation on the interval t=[0..1] is
+    described as follows:
+    @verbatim
+    P(t) = 0.5 * [ t^3 t^2 t 1 ] * [ -1  3 -3  1 ] * [ P-1 ]
+                                   [  2 -5  4 -1 ]   [ P0 ]
+                                   [ -1  0  1  0 ]   [ P1 ]
+                                   [  0  2  0  0 ]   [ P2 ]
+    @endverbatim
+
+    Where P-1 and P2 represent the neighbouring points or the
+    extrapolated end points. Simple reflection is used to
+    automatically create the end points.
+
+    The spline is discretized based on the chord length of the
+    individual segments. In rare cases (sections with very high
+    curvatures), the resulting distribution may be sub-optimal.
+
+SeeAlso
+    http://www.algorithmist.net/catmullrom.html provides a nice
+    introduction
+
+ToDo
+    A future implementation could also handle closed splines - either
+    when the start/end points are identically or when specified.
+
+SourceFiles
+    CatmullRomSpline.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef CatmullRomSpline_H
+#define CatmullRomSpline_H
+
+#include "polyLine.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                      Class CatmullRomSpline Declaration
+\*---------------------------------------------------------------------------*/
+
+class CatmullRomSpline
+:
+    public polyLine
+{
+    // Private Member Functions
+
+        //- Disallow default bitwise copy construct
+        CatmullRomSpline(const CatmullRomSpline&);
+
+        //- Disallow default bitwise assignment
+        void operator=(const CatmullRomSpline&);
+
+
+public:
+
+    // Constructors
+
+        //- Construct from components
+        CatmullRomSpline
+        (
+            const pointField& knots,
+            const vector& begTangentNotImplemented = vector::zero,
+            const vector& endTangentNotImplemented = vector::zero
+        );
+
+
+    // Member Functions
+
+        //- Return the point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        point position(const scalar lambda) const;
+
+        //- Return the point position corresponding to the local parameter
+        //  0 <= lambda <= 1 on the given segment
+        point position(const label segment, const scalar lambda) const;
+
+        //- Return the length of the curve
+        scalar length() const;
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/mesh/blockMesh/curvedEdges/arcEdge.C b/src/mesh/blockMesh/curvedEdges/arcEdge.C
index afb62a8f8b437daaf7ba5fa734d6b07b653ba1f2..21143ac43a5bcd6e39a4e09a79c247aff0e8e935 100644
--- a/src/mesh/blockMesh/curvedEdges/arcEdge.C
+++ b/src/mesh/blockMesh/curvedEdges/arcEdge.C
@@ -61,7 +61,7 @@ Foam::cylindricalCS Foam::arcEdge::calcAngle()
 
     scalar fact = 0.5*(bsqr - adotb)/denom;
 
-    vector centre = 0.5*a + fact*((a ^ b) ^ a);
+    point centre = 0.5*a + fact*((a ^ b) ^ a);
 
     centre += p1_;
 
@@ -71,11 +71,10 @@ Foam::cylindricalCS Foam::arcEdge::calcAngle()
     vector r3(p3_ - centre);
 
     // find angles
-    scalar tmp = (r3&r1)/(mag(r3)*mag(r1));
-    angle_ = radToDeg(acos(tmp));
+    angle_ = radToDeg(acos((r3 & r1)/(mag(r3) * mag(r1))));
 
     // check if the vectors define an exterior or an interior arcEdge
-    if (((r1 ^ r2)&(r1 ^ r3)) < 0.0)
+    if (((r1 ^ r2) & (r1 ^ r3)) < 0.0)
     {
         angle_ = 360.0 - angle_;
     }
@@ -99,7 +98,7 @@ Foam::cylindricalCS Foam::arcEdge::calcAngle()
     radius_ = mag(r3);
 
     // set up and return the local coordinate system
-    return cylindricalCS("tmpCS", centre, tempAxis, r1);
+    return cylindricalCS("arcEdgeCS", centre, tempAxis, r1);
 }
 
 
@@ -133,7 +132,7 @@ Foam::arcEdge::arcEdge(const pointField& points, Istream& is)
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-Foam::vector Foam::arcEdge::position(const scalar lambda) const
+Foam::point Foam::arcEdge::position(const scalar lambda) const
 {
     if (lambda < 0 || lambda > 1)
     {
@@ -146,7 +145,7 @@ Foam::vector Foam::arcEdge::position(const scalar lambda) const
     {
         return p1_;
     }
-    else if (lambda > 1-SMALL)
+    else if (lambda > 1 - SMALL)
     {
         return p3_;
     }
diff --git a/src/mesh/blockMesh/curvedEdges/arcEdge.H b/src/mesh/blockMesh/curvedEdges/arcEdge.H
index da96d150fc0803f0b6fecb6c50d31b072ff17a35..194e5c634bb39d147081af5e25624b2fe9f91de6 100644
--- a/src/mesh/blockMesh/curvedEdges/arcEdge.H
+++ b/src/mesh/blockMesh/curvedEdges/arcEdge.H
@@ -54,15 +54,16 @@ class arcEdge
 {
     // Private data
 
-        vector p1_, p2_, p3_;
+        point p1_, p2_, p3_;
+        cylindricalCS cs_;
         scalar angle_;
         scalar radius_;
-        cylindricalCS cs_;
-
-        cylindricalCS calcAngle();
 
     // Private Member Functions
 
+        //- Calculate the coordinate system, angle and radius
+        cylindricalCS calcAngle();
+
         //- Disallow default bitwise copy construct
         arcEdge(const arcEdge&);
 
@@ -96,9 +97,9 @@ public:
 
     // Member Functions
 
-        //- Return the position of a point on the curve given by
-        //  the parameter 0 <= lambda <= 1
-        vector position(const scalar) const;
+        //- Return the point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        point position(const scalar) const;
 
         //- Return the length of the curve
         scalar length() const;
diff --git a/src/mesh/blockMesh/curvedEdges/curvedEdge.C b/src/mesh/blockMesh/curvedEdges/curvedEdge.C
index 4b80a221ddd16c78fead7a889344db6d4454b189..35e58b7692b96e1573f900e6554cd664d90bb799 100644
--- a/src/mesh/blockMesh/curvedEdges/curvedEdge.C
+++ b/src/mesh/blockMesh/curvedEdges/curvedEdge.C
@@ -108,27 +108,27 @@ Foam::autoPtr<Foam::curvedEdge> Foam::curvedEdge::New
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-Foam::pointField Foam::curvedEdge::knotlist
+Foam::pointField Foam::curvedEdge::appendEndPoints
 (
     const pointField& points,
     const label start,
     const label end,
-    const pointField& otherknots
+    const pointField& otherKnots
 )
 {
-    pointField newPoints(otherknots.size() + 2);
+    pointField allKnots(otherKnots.size() + 2);
 
     // start/end knots
-    newPoints[0] = points[start];
-    newPoints[otherknots.size() + 1] = points[end];
+    allKnots[0] = points[start];
+    allKnots[otherKnots.size() + 1] = points[end];
 
     // intermediate knots
-    forAll(otherknots, knotI)
+    forAll(otherKnots, knotI)
     {
-        newPoints[knotI+1] = otherknots[knotI];
+        allKnots[knotI+1] = otherKnots[knotI];
     }
 
-    return newPoints;
+    return allKnots;
 }
 
 
diff --git a/src/mesh/blockMesh/curvedEdges/curvedEdge.H b/src/mesh/blockMesh/curvedEdges/curvedEdge.H
index 49ad047e45a759603d41141e38ee6b010ccf9979..bd1ad3246ada4444ef88cd3dabdfd914d695c329 100644
--- a/src/mesh/blockMesh/curvedEdges/curvedEdge.H
+++ b/src/mesh/blockMesh/curvedEdges/curvedEdge.H
@@ -26,8 +26,8 @@ Class
     Foam::curvedEdge
 
 Description
-    Define a curved edge in space that is parameterised for
-    0<lambda<1 from the beginning to the end point.
+    Define a curved edge that is parameterized for 0<lambda<1
+    between the start and end point.
 
 SourceFiles
     curvedEdge.C
@@ -62,6 +62,19 @@ protected:
         const label start_;
         const label end_;
 
+    // Protected Member Functions
+
+        //- Return a complete point field by appending the start/end points
+        //  to the given list
+        static pointField appendEndPoints
+        (
+            const pointField&,
+            const label start,
+            const label end,
+            const pointField& otherKnots
+        );
+
+
 public:
 
     //- Runtime type information
@@ -136,23 +149,13 @@ public:
         //  - -1: same edge, but different orientation
         inline int compare(const label start, const label end) const;
 
-        //- Return the position of a point on the curve given by
-        //  the parameter 0 <= lambda <= 1
-        virtual vector position(const scalar) const = 0;
+        //- Return the point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        virtual point position(const scalar) const = 0;
 
         //- Return the length of the curve
         virtual scalar length() const = 0;
 
-        //- Return a complete knotList by adding the start/end points
-        //  to the given list
-        static pointField knotlist
-        (
-            const pointField&,
-            const label start,
-            const label end,
-            const pointField& otherknots
-        );
-
 
     // Member operators
 
diff --git a/src/mesh/blockMesh/curvedEdges/curvedEdgeI.H b/src/mesh/blockMesh/curvedEdges/curvedEdgeI.H
index 6d3de4e554009922cc29918ad31a41d5369a3e62..ade7db175bfe2e0ada926c04f0fa38b65ac25921 100644
--- a/src/mesh/blockMesh/curvedEdges/curvedEdgeI.H
+++ b/src/mesh/blockMesh/curvedEdges/curvedEdgeI.H
@@ -67,7 +67,4 @@ inline int Foam::curvedEdge::compare(const edge& e) const
 }
 
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-
 // ************************************************************************* //
diff --git a/src/mesh/blockMesh/curvedEdges/BSpline.C b/src/mesh/blockMesh/curvedEdges/legacy/BSpline.C
similarity index 96%
rename from src/mesh/blockMesh/curvedEdges/BSpline.C
rename to src/mesh/blockMesh/curvedEdges/legacy/BSpline.C
index 3e166f25cb9650f17a5271df613e47cad7db686e..cd7ee90ca1e195e9270034943ac06a819038816d 100644
--- a/src/mesh/blockMesh/curvedEdges/BSpline.C
+++ b/src/mesh/blockMesh/curvedEdges/legacy/BSpline.C
@@ -115,13 +115,13 @@ Foam::BSpline::BSpline
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-Foam::vector Foam::BSpline::realPosition(const scalar mu) const
+Foam::point Foam::BSpline::realPosition(const scalar mu) const
 {
     return spline::position(mu);
 }
 
 
-Foam::vector Foam::BSpline::position(const scalar mu) const
+Foam::point Foam::BSpline::position(const scalar mu) const
 {
     return spline::position((1.0/(nKnots() - 1))*(1.0 + mu*(nKnots() - 3)));
 }
diff --git a/src/mesh/blockMesh/curvedEdges/BSpline.H b/src/mesh/blockMesh/curvedEdges/legacy/BSpline.H
similarity index 89%
rename from src/mesh/blockMesh/curvedEdges/BSpline.H
rename to src/mesh/blockMesh/curvedEdges/legacy/BSpline.H
index ace98b4e21097bd7e0f90be743683601810a9974..5ba6423ea12d4a6cdee287e9dd1803d6b13166c7 100644
--- a/src/mesh/blockMesh/curvedEdges/BSpline.H
+++ b/src/mesh/blockMesh/curvedEdges/legacy/BSpline.H
@@ -82,13 +82,13 @@ public:
 
     // Member Functions
 
-        //- Return the real position of a point on the curve given by
-        //  the parameter 0 <= lambda <= 1
-        vector realPosition(const scalar lambda) const;
+        //- Return the real point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        point realPosition(const scalar lambda) const;
 
-        //- Return the position of a point on the curve given by
-        //  the parameter 0 <= lambda <= 1
-        vector position(const scalar lambda) const;
+        //- Return the point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        point position(const scalar lambda) const;
 
         //- Return the length of the curve
         scalar length() const;
diff --git a/src/mesh/blockMesh/curvedEdges/polySplineEdge.C b/src/mesh/blockMesh/curvedEdges/legacy/polySplineEdge.C
similarity index 92%
rename from src/mesh/blockMesh/curvedEdges/polySplineEdge.C
rename to src/mesh/blockMesh/curvedEdges/legacy/polySplineEdge.C
index 8e4f0f90b3c324888d95bb7c0de7de2f44879664..bf370cd7d3fe0fee5ebb1f554fd430a032b836a3 100644
--- a/src/mesh/blockMesh/curvedEdges/polySplineEdge.C
+++ b/src/mesh/blockMesh/curvedEdges/legacy/polySplineEdge.C
@@ -56,7 +56,7 @@ Foam::pointField Foam::polySplineEdge::intervening
 {
     BSpline spl
     (
-        knotlist(points_, start_, end_, otherknots),
+        appendEndPoints(curvedEdge::points_, start_, end_, otherknots),
         fstend,
         sndend
     );
@@ -73,7 +73,7 @@ Foam::pointField Foam::polySplineEdge::intervening
     interval /= nBetweenKnots + 1;
 
     pointField ans(nSize);
-    ans[0] = points_[start_];
+    ans[0] = curvedEdge::points_[start_];
 
     register scalar index(init);
     for (register label i=1; i<nSize-1; i++)
@@ -82,7 +82,7 @@ Foam::pointField Foam::polySplineEdge::intervening
         ans[i] = spl.realPosition(index);
     }
 
-    ans[nSize-1] = points_[end_];
+    ans[nSize-1] = curvedEdge::points_[end_];
 
     return ans;
 }
@@ -128,14 +128,14 @@ Foam::polySplineEdge::polySplineEdge
     vector fstend(is);
     vector sndend(is);
 
-    controlPoints_ = intervening(otherKnots_, nInterKnots, fstend, sndend);
-    calcDistances();
+    polyLine::points_ = intervening(otherKnots_, nInterKnots, fstend, sndend);
+    calcParam();
 }
 
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-Foam::vector Foam::polySplineEdge::position(const scalar mu) const
+Foam::point Foam::polySplineEdge::position(const scalar mu) const
 {
     return polyLine::position(mu);
 }
diff --git a/src/mesh/blockMesh/curvedEdges/polySplineEdge.H b/src/mesh/blockMesh/curvedEdges/legacy/polySplineEdge.H
similarity index 91%
rename from src/mesh/blockMesh/curvedEdges/polySplineEdge.H
rename to src/mesh/blockMesh/curvedEdges/legacy/polySplineEdge.H
index b133b9e45dd15de1f261e118593993bb8b2ca02c..dcb5fc2dfe97da62bbbf423196dc84a7839b86cb 100644
--- a/src/mesh/blockMesh/curvedEdges/polySplineEdge.H
+++ b/src/mesh/blockMesh/curvedEdges/legacy/polySplineEdge.H
@@ -26,7 +26,7 @@ Class
     Foam::polySplineEdge
 
 Description
-    A spline representation via a polyLine
+    A curvedEdge interface for B-splines.
 
 SourceFiles
     polySplineEdge.C
@@ -90,16 +90,16 @@ public:
         polySplineEdge(const pointField&, Istream&);
 
 
-    // Destructor
-
-        virtual ~polySplineEdge(){}
+    //- Destructor
+        virtual ~polySplineEdge()
+        {}
 
 
     // Member Functions
 
-        //- Return the position of a point on the curve given by
-        //  the parameter 0 <= lambda <= 1
-        vector position(const scalar mu) const;
+        //- Return the point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        point position(const scalar mu) const;
 
         //- Return the length of the curve
         scalar length() const;
diff --git a/src/mesh/blockMesh/curvedEdges/simpleSplineEdge.C b/src/mesh/blockMesh/curvedEdges/legacy/simpleSplineEdge.C
similarity index 90%
rename from src/mesh/blockMesh/curvedEdges/simpleSplineEdge.C
rename to src/mesh/blockMesh/curvedEdges/legacy/simpleSplineEdge.C
index 3132a1f7eaff97f24178dc84aef9d1f774ab12e9..c5dc9e6d9c866015c02c0914640413a5b72f3bc0 100644
--- a/src/mesh/blockMesh/curvedEdges/simpleSplineEdge.C
+++ b/src/mesh/blockMesh/curvedEdges/legacy/simpleSplineEdge.C
@@ -48,7 +48,7 @@ Foam::simpleSplineEdge::simpleSplineEdge
 )
 :
     curvedEdge(points, start, end),
-    BSpline(knotlist(points, start, end, otherknots))
+    BSpline(appendEndPoints(points, start, end, otherknots))
 {}
 
 
@@ -63,20 +63,20 @@ Foam::simpleSplineEdge::simpleSplineEdge
 )
 :
     curvedEdge(points, start, end),
-    BSpline(knotlist(points, start, end, otherknots), fstend, sndend)
+    BSpline(appendEndPoints(points, start, end, otherknots), fstend, sndend)
 {}
 
 
 Foam::simpleSplineEdge::simpleSplineEdge(const pointField& points, Istream& is)
 :
     curvedEdge(points, is),
-    BSpline(knotlist(points, start_, end_, pointField(is)))
+    BSpline(appendEndPoints(points, start_, end_, pointField(is)))
 {}
 
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-Foam::vector Foam::simpleSplineEdge::position(const scalar mu) const
+Foam::point Foam::simpleSplineEdge::position(const scalar mu) const
 {
     return BSpline::position(mu);
 }
diff --git a/src/mesh/blockMesh/curvedEdges/simpleSplineEdge.H b/src/mesh/blockMesh/curvedEdges/legacy/simpleSplineEdge.H
similarity index 93%
rename from src/mesh/blockMesh/curvedEdges/simpleSplineEdge.H
rename to src/mesh/blockMesh/curvedEdges/legacy/simpleSplineEdge.H
index 4c6df2a5095a3893f0a609cb8f4c4134b204b4b8..91acf6fdee535928dd7589b8c50b3bcc017bba73 100644
--- a/src/mesh/blockMesh/curvedEdges/simpleSplineEdge.H
+++ b/src/mesh/blockMesh/curvedEdges/legacy/simpleSplineEdge.H
@@ -26,7 +26,7 @@ Class
     Foam::simpleSplineEdge
 
 Description
-    The actual access class for Bspline
+    A curvedEdge interface for B-splines.
 
 SourceFiles
     simpleSplineEdge.C
@@ -102,9 +102,9 @@ public:
 
     // Member Functions
 
-        //- Return the position of a point on the simple spline curve given by
-        //  the parameter 0 <= lambda <= 1
-        vector position(const scalar mu) const;
+        //- Return the point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        point position(const scalar) const;
 
         //- Return the length of the simple spline curve
         scalar length() const;
diff --git a/src/mesh/blockMesh/curvedEdges/spline.C b/src/mesh/blockMesh/curvedEdges/legacy/spline.C
similarity index 96%
rename from src/mesh/blockMesh/curvedEdges/spline.C
rename to src/mesh/blockMesh/curvedEdges/legacy/spline.C
index cddf6fa8edaad6653612d396760d69ad009820d5..4f7ab8e195e33f12144a2ba90bc264fb5e13bb67 100644
--- a/src/mesh/blockMesh/curvedEdges/spline.C
+++ b/src/mesh/blockMesh/curvedEdges/legacy/spline.C
@@ -72,9 +72,9 @@ Foam::spline::spline(const pointField& knotPoints)
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-Foam::vector Foam::spline::position(const scalar mu) const
+Foam::point Foam::spline::position(const scalar mu) const
 {
-    vector loc(vector::zero);
+    point loc(point::zero);
 
     for (register label i=0; i < knots_.size(); i++)
     {
diff --git a/src/mesh/blockMesh/curvedEdges/spline.H b/src/mesh/blockMesh/curvedEdges/legacy/spline.H
similarity index 90%
rename from src/mesh/blockMesh/curvedEdges/spline.H
rename to src/mesh/blockMesh/curvedEdges/legacy/spline.H
index 74e73afdc652c00efe762d0d72b75cbb23ca7800..1055690933919980b3b5fa9e1959210dba04d165 100644
--- a/src/mesh/blockMesh/curvedEdges/spline.H
+++ b/src/mesh/blockMesh/curvedEdges/legacy/spline.H
@@ -81,6 +81,13 @@ public:
 
         // Access
 
+            //- Return the knot points in the spline
+            const pointField& knotPoints() const
+            {
+                return knots_;
+            }
+
+
             //- Return the number of knots in the spline
             label nKnots() const
             {
@@ -88,9 +95,9 @@ public:
             }
 
 
-        //- Return the position of a point on the curve given by
-        //  the parameter 0 <= lambda <= 1
-        vector position(const scalar) const;
+        //- Return the point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        point position(const scalar) const;
 
         //- Return the length of the spline curve
         scalar length() const;
diff --git a/src/mesh/blockMesh/curvedEdges/lineDivide.H b/src/mesh/blockMesh/curvedEdges/lineDivide.H
index 37f1d9ba5c3670ea55ecb7295bf11acc8db9f129..1b3f33e69da6184b76f2b8adb699d360a749184f 100644
--- a/src/mesh/blockMesh/curvedEdges/lineDivide.H
+++ b/src/mesh/blockMesh/curvedEdges/lineDivide.H
@@ -55,14 +55,14 @@ class lineDivide
     // Private data
 
         pointField points_;
+
         scalarList divisions_;
 
 public:
 
     // Constructors
 
-        //- Construct from components
-        //  discretization and expansion ration
+        //- Construct from components with discretization and expansion ratio
         lineDivide
         (
             const curvedEdge&,
diff --git a/src/mesh/blockMesh/curvedEdges/lineEdge.C b/src/mesh/blockMesh/curvedEdges/lineEdge.C
index 72e173ea2ce3e6b88d953b1006de372cc78a9b80..586d495d491d8e0a556a0d96f81e630fe308a35b 100644
--- a/src/mesh/blockMesh/curvedEdges/lineEdge.C
+++ b/src/mesh/blockMesh/curvedEdges/lineEdge.C
@@ -46,23 +46,23 @@ Foam::lineEdge::lineEdge
     const label end
 )
 :
-    curvedEdge(points, start, end),
-    startPoint_(points_[start_]),
-    direction_(points_[end_] - points_[start_])
+    curvedEdge(points, start, end)
 {}
 
 
 Foam::lineEdge::lineEdge(const pointField& points, Istream& is)
 :
-    curvedEdge(points, is),
-    startPoint_(points_[start_]),
-    direction_(points_[end_] - points_[start_])
+    curvedEdge(points, is)
 {}
 
+// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * * //
+
+Foam::lineEdge::~lineEdge()
+{}
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-Foam::vector Foam::lineEdge::position(const scalar lambda) const
+Foam::point Foam::lineEdge::position(const scalar lambda) const
 {
     if (lambda < 0 || lambda > 1)
     {
@@ -71,13 +71,13 @@ Foam::vector Foam::lineEdge::position(const scalar lambda) const
             << abort(FatalError);
     }
 
-    return startPoint_ + lambda*direction_;
+    return points_[start_] + lambda * (points_[end_] - points_[start_]);
 }
 
 
 Foam::scalar Foam::lineEdge::length() const
 {
-    return mag(direction_);
+    return mag(points_[end_] - points_[start_]);
 }
 
 
diff --git a/src/mesh/blockMesh/curvedEdges/lineEdge.H b/src/mesh/blockMesh/curvedEdges/lineEdge.H
index a601830f7f70e6449110a5949ef44cf41a734855..3d295912325ae204df275b720707defdb416a62a 100644
--- a/src/mesh/blockMesh/curvedEdges/lineEdge.H
+++ b/src/mesh/blockMesh/curvedEdges/lineEdge.H
@@ -26,7 +26,7 @@ Class
     Foam::lineEdge
 
 Description
-    Defines a straight line between the start point and the end point.
+    A straight edge between the start point and the end point.
 
 SourceFiles
     lineEdge.C
@@ -52,14 +52,6 @@ class lineEdge
 :
     public curvedEdge
 {
-    // Private data
-
-        //- Avoid repetitive calculation of the start point
-        const vector startPoint_;
-
-        //- Avoid repetitive calculation of the direction (end - start)
-        const vector direction_;
-
     // Private Member Functions
 
         //- Disallow default bitwise copy construct
@@ -68,7 +60,6 @@ class lineEdge
         //- Disallow default bitwise assignment
         void operator=(const lineEdge&);
 
-
 public:
 
     //- Runtime type information
@@ -79,20 +70,19 @@ public:
         //- Construct from components
         lineEdge(const pointField&, const label start, const label end);
 
-        //- Construct from Istream setting pointsList
+        //- Construct from Istream with a pointField
         lineEdge(const pointField&, Istream&);
 
 
-    // Destructor
-
-        virtual ~lineEdge(){}
+        //- Destructor
+        virtual ~lineEdge();
 
 
     // Member Functions
 
-        //- Return the position of a point on the curve given by
-        //  the parameter 0 <= lambda <= 1
-        vector position(const scalar) const;
+        //- Return the point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        point position(const scalar) const;
 
         //- Return the length of the curve
         scalar length() const;
diff --git a/src/mesh/blockMesh/curvedEdges/polyLine.C b/src/mesh/blockMesh/curvedEdges/polyLine.C
index e8872de6a2b983bddc0fb2c99e9a6cc0ba9f60c7..08083041f2d5c7c82bb8b0fb86af14f3120d1468 100644
--- a/src/mesh/blockMesh/curvedEdges/polyLine.C
+++ b/src/mesh/blockMesh/curvedEdges/polyLine.C
@@ -29,29 +29,26 @@ License
 
 // * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
 
-// calcDistances generates the distances_ lookup table (cumulative
-// distance along the line) from the individual vectors to the points
-
-void Foam::polyLine::calcDistances()
+void Foam::polyLine::calcParam()
 {
-    distances_.setSize(controlPoints_.size());
+    param_.setSize(points_.size());
 
-    if (distances_.size())
+    if (param_.size())
     {
-        distances_[0] = 0.0;
+        param_[0] = 0.0;
 
-        for (label i=1; i<distances_.size(); i++)
+        for (label i=1; i < param_.size(); i++)
         {
-            distances_[i] = distances_[i-1] +
-                mag(controlPoints_[i] - controlPoints_[i-1]);
+            param_[i] = param_[i-1] + mag(points_[i] - points_[i-1]);
         }
 
-        // normalize
-        lineLength_ = distances_[distances_.size()-1];
-        for (label i=1; i<distances_.size(); i++)
+        // normalize on the interval 0-1
+        lineLength_ = param_.last();
+        for (label i=1; i < param_.size() - 1; i++)
         {
-            distances_[i] /= lineLength_;
+            param_[i] /= lineLength_;
         }
+        param_.last() = 1.0;
     }
     else
     {
@@ -65,20 +62,75 @@ void Foam::polyLine::calcDistances()
 
 Foam::polyLine::polyLine(const pointField& ps)
 :
-    controlPoints_(ps),
-    distances_(0),
-    lineLength_(0.0)
+    points_(ps),
+    lineLength_(0.0),
+    param_(0)
 {
-    calcDistances();
+    calcParam();
 }
 
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-Foam::vector Foam::polyLine::position(const scalar lambda) const
+const Foam::pointField& Foam::polyLine::points() const
+{
+    return points_;
+}
+
+
+Foam::label Foam::polyLine::nSegments() const
+{
+    return points_.size()-1;
+}
+
+
+Foam::label Foam::polyLine::localParameter(scalar& lambda) const
 {
     // check range of lambda
+    if (lambda < 0 || lambda > 1)
+    {
+        FatalErrorIn("polyLine::localParameter(scalar&)")
+            << "Parameter out-of-range, "
+            << "lambda = " << lambda
+            << abort(FatalError);
+    }
 
+    // check endpoints
+    if (lambda < SMALL)
+    {
+        lambda = 0;
+        return 0;
+    }
+    else if (lambda > 1 - SMALL)
+    {
+        lambda = 1;
+        return nSegments();
+    }
+
+    // search table of cumulative distances to find which line-segment
+    // we are on. Check the upper bound.
+
+    label segmentI = 1;
+    while (param_[segmentI] < lambda)
+    {
+        segmentI++;
+    }
+    segmentI--;   // we want the corresponding lower bound
+
+    // the local parameter [0-1] on this line segment
+    lambda =
+    (
+        ( lambda - param_[segmentI] )
+      / ( param_[segmentI+1] - param_[segmentI] )
+    );
+
+    return segmentI;
+}
+
+
+Foam::point Foam::polyLine::position(const scalar lambda) const
+{
+    // check range of lambda
     if (lambda < 0 || lambda > 1)
     {
         FatalErrorIn("polyLine::position(const scalar)")
@@ -87,37 +139,36 @@ Foam::vector Foam::polyLine::position(const scalar lambda) const
             << abort(FatalError);
     }
 
-    // Quick calc of endpoints
-
+    // check endpoints
     if (lambda < SMALL)
     {
-        return controlPoints_[0];
+        return points_[0];
     }
     else if (lambda > 1 - SMALL)
     {
-        return controlPoints_[controlPoints_.size()-1];
+        return points_.last();
     }
 
 
-    // search table of cumulative distance to find which linesegment we
-    // are on
+    // search table of cumulative distances to find which line-segment
+    // we are on. Check the upper bound.
 
-    label i(0);
-    do
+    label segmentI = 1;
+    while (param_[segmentI] < lambda)
     {
-        i++;
-    } while (distances_[i] < lambda);
-
-    i--;               // we overshot!
-
-    // construct position vector
-    scalar offsetDist =
-        (lambda - distances_[i])
-       /(distances_[i+1] - distances_[i]);
+        ++segmentI;
+    }
+    --segmentI;   // we now want the lower bound
 
-    vector offsetV = controlPoints_[i+1] - controlPoints_[i];
 
-    return controlPoints_[i] + offsetDist*offsetV;
+    // linear interpolation
+    return
+    (
+        points_[segmentI]
+      + ( points_[segmentI+1] - points_[segmentI] )
+      * ( lambda - param_[segmentI] )
+      / ( param_[segmentI+1] - param_[segmentI] )
+    );
 }
 
 
diff --git a/src/mesh/blockMesh/curvedEdges/polyLine.H b/src/mesh/blockMesh/curvedEdges/polyLine.H
index 4ef97f30525b6368e3f9a0f7ddb6a4ef5107bd5b..ea8c59e389bf08cfa5a6d28c1cd5d1503342e107 100644
--- a/src/mesh/blockMesh/curvedEdges/polyLine.H
+++ b/src/mesh/blockMesh/curvedEdges/polyLine.H
@@ -26,10 +26,8 @@ Class
     Foam::polyLine
 
 Description
-    Defines a curvedEdge in terms of a series of straight line segments.
-
-    This is the basic polyLine class which implements just the line
-    (no topology - it is not derived from curvedEdge)
+    A series of straight line segments, which can also be interpreted as
+    a series of control points for splines, etc.
 
 SourceFiles
     polyLine.C
@@ -66,15 +64,26 @@ protected:
 
     // Protected data
 
-        pointField controlPoints_;
-        scalarList distances_;
+        //- The control points or ends of each segments
+        pointField points_;
+
+        //- The real line length
         scalar lineLength_;
 
+        //- The rational (0-1) cumulative parameter value for each point
+        scalarList param_;
+
     // Protected member functions
 
-        void calcDistances();
+        //- Precalculate the rational cumulative parameter value
+        //  and the line-length
+        void calcParam();
 
 
+        //- Return the line segment and the local parameter [0..1]
+        //  corresponding to the global lambda [0..1]
+        label localParameter(scalar& lambda) const;
+
 public:
 
     // Constructors
@@ -85,9 +94,15 @@ public:
 
     // Member Functions
 
-        //- Return the position of a point on the curve given by
-        //  the parameter 0 <= lambda <= 1
-        vector position(const scalar) const;
+        //- Return const-access to the control-points
+        const pointField& points() const;
+
+        //- Return the number of line segments
+        label nSegments() const;
+
+        //- Return the point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        point position(const scalar) const;
 
         //- Return the length of the curve
         scalar length() const;
diff --git a/src/mesh/blockMesh/curvedEdges/polyLineEdge.C b/src/mesh/blockMesh/curvedEdges/polyLineEdge.C
index 89029d1af97726cf6895650b32e8baaa8e1bf971..1f038a78a85af3e3812bb3b0b0bf93eaa2e5c7cc 100644
--- a/src/mesh/blockMesh/curvedEdges/polyLineEdge.C
+++ b/src/mesh/blockMesh/curvedEdges/polyLineEdge.C
@@ -44,24 +44,30 @@ Foam::polyLineEdge::polyLineEdge
     const pointField& ps,
     const label start,
     const label end,
-    const pointField& otherpoints
+    const pointField& otherPoints
 )
 :
     curvedEdge(ps, start, end),
-    polyLine(knotlist(ps, start, end, otherpoints))
+    polyLine(appendEndPoints(ps, start_, end_, otherPoints))
 {}
 
 
 Foam::polyLineEdge::polyLineEdge(const pointField& ps, Istream& is)
 :
     curvedEdge(ps, is),
-    polyLine(knotlist(ps, start_, end_, pointField(is)))
+    polyLine(appendEndPoints(ps, start_, end_, pointField(is)))
+{}
+
+
+// * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
+
+Foam::polyLineEdge::~polyLineEdge()
 {}
 
 
 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
 
-Foam::vector Foam::polyLineEdge::position(const scalar lambda) const
+Foam::point Foam::polyLineEdge::position(const scalar lambda) const
 {
     return polyLine::position(lambda);
 }
diff --git a/src/mesh/blockMesh/curvedEdges/polyLineEdge.H b/src/mesh/blockMesh/curvedEdges/polyLineEdge.H
index 532a91ad5d50c265ca3b42c76033a0d04fc4725c..e941bba716183daf3c111ae92bcb1925a781c2bf 100644
--- a/src/mesh/blockMesh/curvedEdges/polyLineEdge.H
+++ b/src/mesh/blockMesh/curvedEdges/polyLineEdge.H
@@ -26,8 +26,7 @@ Class
     Foam::polyLineEdge
 
 Description
-    Defines a curvedEdge in terms of a series of straight line segments.
-    This is the public face of polyLine
+    A curvedEdge defined in terms of a series of straight line segments.
 
 SourceFiles
     polyLineEdge.C
@@ -84,16 +83,15 @@ public:
         polyLineEdge(const pointField&, Istream&);
 
 
-    // Destructor
-
-        virtual ~polyLineEdge(){}
+        //- Destructor
+        virtual ~polyLineEdge();
 
 
     // Member Functions
 
-        //- Return the position of a point on the curve given by
-        //  the parameter 0 <= lambda <= 1
-        vector position(const scalar lambda) const;
+        //- Return the point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        point position(const scalar lambda) const;
 
         //- Return the length of the curve
         scalar length() const;
diff --git a/src/mesh/blockMesh/curvedEdges/splineEdge.C b/src/mesh/blockMesh/curvedEdges/splineEdge.C
new file mode 100644
index 0000000000000000000000000000000000000000..810cd7dc9b87c912bc092c3ab5921e48505f1fde
--- /dev/null
+++ b/src/mesh/blockMesh/curvedEdges/splineEdge.C
@@ -0,0 +1,86 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2009-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
+
+\*---------------------------------------------------------------------------*/
+
+#include "splineEdge.H"
+#include "addToRunTimeSelectionTable.H"
+
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTypeNameAndDebug(splineEdge, 0);
+    addToRunTimeSelectionTable(curvedEdge, splineEdge, Istream);
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::splineEdge::splineEdge
+(
+    const pointField& points,
+    const label start,
+    const label end,
+    const pointField& otherknots
+)
+:
+    curvedEdge(points, start, end),
+    CatmullRomSpline(appendEndPoints(points, start, end, otherknots))
+{}
+
+
+Foam::splineEdge::splineEdge(const pointField& points, Istream& is)
+:
+    curvedEdge(points, is),
+    CatmullRomSpline(appendEndPoints(points, start_, end_, pointField(is)))
+{
+    token t(is);
+    is.putBack(t);
+
+    // might have start/end tangents that we currently ignore
+    if (t == token::BEGIN_LIST)
+    {
+        vector fstend(is);
+        vector sndend(is);
+    }
+}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+Foam::point Foam::splineEdge::position(const scalar mu) const
+{
+    return CatmullRomSpline::position(mu);
+}
+
+
+Foam::scalar Foam::splineEdge::length() const
+{
+    return CatmullRomSpline::length();
+}
+
+
+// ************************************************************************* //
diff --git a/src/mesh/blockMesh/curvedEdges/splineEdge.H b/src/mesh/blockMesh/curvedEdges/splineEdge.H
new file mode 100644
index 0000000000000000000000000000000000000000..ba9501c20447b13857f7295724f8f18490f59e18
--- /dev/null
+++ b/src/mesh/blockMesh/curvedEdges/splineEdge.H
@@ -0,0 +1,111 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2009-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::splineEdge
+
+Description
+    A curvedEdge interface for Catmull-Rom splines.
+
+SourceFiles
+    splineEdge.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef splineEdge_H
+#define splineEdge_H
+
+#include "curvedEdge.H"
+#include "CatmullRomSpline.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                      Class splineEdge Declaration
+\*---------------------------------------------------------------------------*/
+
+class splineEdge
+:
+    public curvedEdge,
+    public CatmullRomSpline
+{
+    // Private Member Functions
+
+        //- Disallow default bitwise copy construct
+        splineEdge(const splineEdge&);
+
+        //- Disallow default bitwise assignment
+        void operator=(const splineEdge&);
+
+
+public:
+
+    //- Runtime type information
+    TypeName("spline");
+
+
+    // Constructors
+
+        //- Construct from components
+        splineEdge
+        (
+            const pointField&,
+            const label start,
+            const label end,
+            const pointField& otherKnots
+        );
+
+        //- Construct from Istream setting pointsList
+        splineEdge(const pointField&, Istream&);
+
+
+    // Destructor
+
+        virtual ~splineEdge()
+        {}
+
+
+    // Member Functions
+
+        //- Return the point position corresponding to the curve parameter
+        //  0 <= lambda <= 1
+        virtual point position(const scalar) const;
+
+        //- Return the length of the simple spline curve
+        virtual scalar length() const;
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/meshTools/Make/options b/src/meshTools/Make/options
index 1d1560eb5a4b73f7c97f6644a30f146534b5bb5e..0ff22029260fd949e08c06a762e8352bcadf6d7c 100644
--- a/src/meshTools/Make/options
+++ b/src/meshTools/Make/options
@@ -1,6 +1,6 @@
 EXE_INC = \
     -I$(LIB_SRC)/triSurface/lnInclude \
-    -I$(LIB_SRC)/decompositionMethods/decompositionMethods/lnInclude \
+    -I$(LIB_SRC)/parallel/decompositionMethods/lnInclude \
     -I$(LIB_SRC)/lagrangian/basic/lnInclude
 
 LIB_LIBS = \
diff --git a/src/meshTools/PointEdgeWave/PointEdgeWave.C b/src/meshTools/PointEdgeWave/PointEdgeWave.C
index 81309490d5f31745c55629bd4dbf250c05a86f79..7dcaea3f85077b7b5237cbe304709414454d068c 100644
--- a/src/meshTools/PointEdgeWave/PointEdgeWave.C
+++ b/src/meshTools/PointEdgeWave/PointEdgeWave.C
@@ -994,7 +994,7 @@ Foam::label Foam::PointEdgeWave<Type>::iterate(const label maxIter)
 
     label iter = 0;
 
-    while(iter < maxIter)
+    while (iter < maxIter)
     {
         if (debug)
         {
diff --git a/src/meshTools/cellClassification/cellClassification.C b/src/meshTools/cellClassification/cellClassification.C
index 518fd5ae4a03e171ff1b85ab39a2bc935dabf7bd..58c1cfeb4670a2c0be316e365e103bb93134e2c5 100644
--- a/src/meshTools/cellClassification/cellClassification.C
+++ b/src/meshTools/cellClassification/cellClassification.C
@@ -683,7 +683,7 @@ Foam::label Foam::cellClassification::fillHangingCells
 {
     label nTotChanged = 0;
 
-    for(label iter = 0; iter < maxIter; iter++)
+    for (label iter = 0; iter < maxIter; iter++)
     {
         label nChanged = 0;
 
@@ -740,7 +740,7 @@ Foam::label Foam::cellClassification::fillRegionEdges
 {
     label nTotChanged = 0;
 
-    for(label iter = 0; iter < maxIter; iter++)
+    for (label iter = 0; iter < maxIter; iter++)
     {
         // Get interface between meshType cells and non-meshType cells as a list
         // of faces and for each face the cell which is the meshType.
@@ -809,7 +809,7 @@ Foam::label Foam::cellClassification::fillRegionPoints
 {
     label nTotChanged = 0;
 
-    for(label iter = 0; iter < maxIter; iter++)
+    for (label iter = 0; iter < maxIter; iter++)
     {
         // Get interface between meshType cells and non-meshType cells as a list
         // of faces and for each face the cell which is the meshType.
diff --git a/src/meshTools/cellDist/cellDistFuncs.C b/src/meshTools/cellDist/cellDistFuncs.C
index bca2841273c45d8782658aa9ef4526ac95dffbd8..76ec6eee355a5644a866ae445f173c9538de9a99 100644
--- a/src/meshTools/cellDist/cellDistFuncs.C
+++ b/src/meshTools/cellDist/cellDistFuncs.C
@@ -121,7 +121,7 @@ Foam::scalar Foam::cellDistFuncs::smallestDist
     scalar minDist = GREAT;
     minFaceI = -1;
 
-    for(label wallFaceI = 0; wallFaceI < nWallFaces; wallFaceI++)
+    for (label wallFaceI = 0; wallFaceI < nWallFaces; wallFaceI++)
     {
         label patchFaceI = wallFaces[wallFaceI];
 
diff --git a/src/meshTools/meshSearch/meshSearch.C b/src/meshTools/meshSearch/meshSearch.C
index 9b822b11516ad57114fa7b786b564afd93ac47a9..7448c7faa3df702b6abcab1495f15f2c8665da92 100644
--- a/src/meshTools/meshSearch/meshSearch.C
+++ b/src/meshTools/meshSearch/meshSearch.C
@@ -791,7 +791,7 @@ Foam::label Foam::meshSearch::findCell
                       + offset(curHit.hitPoint(), curHit.index(), edgeVec);
                 }
             }
-            while(true);
+            while (true);
         }
         else
         {
@@ -928,7 +928,7 @@ Foam::List<Foam::pointIndexHit> Foam::meshSearch::intersections
               + offset(bHit.hitPoint(), bHit.index(), edgeVec);
         }
 
-    } while(bHit.hit());
+    } while (bHit.hit());
 
 
     hits.shrink();
diff --git a/src/meshTools/polyMeshZipUpCells/polyMeshZipUpCells.C b/src/meshTools/polyMeshZipUpCells/polyMeshZipUpCells.C
index 0d4ec63faa85b81bb425257a43825df670026ef1..17a598626047230d32f8190bc3c719a5c79036ce 100644
--- a/src/meshTools/polyMeshZipUpCells/polyMeshZipUpCells.C
+++ b/src/meshTools/polyMeshZipUpCells/polyMeshZipUpCells.C
@@ -154,7 +154,7 @@ bool Foam::polyMeshZipUpCells(polyMesh& mesh)
             singleEdges.setSize(nSingleEdges);
 
 #           ifdef DEBUG_ZIPUP
-            Info << "Cell " << cellI << endl;
+            Info<< "Cell " << cellI << endl;
 
             forAll (curFaces, faceI)
             {
@@ -274,18 +274,18 @@ bool Foam::polyMeshZipUpCells(polyMesh& mesh)
                             if (pointUsage[pointI] > 2)
                             {
 #                               ifdef DEBUG_CHAIN
-                                Info << "start head blocked" << endl;
+                                Info<< "start head blocked" << endl;
 #                               endif
 
                                 blockHead = true;
                             }
                         }
-                        else if(cellPoints[pointI] == newEdgeEnd)
+                        else if (cellPoints[pointI] == newEdgeEnd)
                         {
                             if (pointUsage[pointI] > 2)
                             {
 #                               ifdef DEBUG_CHAIN
-                                Info << "start tail blocked" << endl;
+                                Info<< "start tail blocked" << endl;
 #                               endif
 
                                 blockTail = true;
@@ -369,18 +369,18 @@ bool Foam::polyMeshZipUpCells(polyMesh& mesh)
                                         if (pointUsage[pointI] > 2)
                                         {
 #                                           ifdef DEBUG_CHAIN
-                                            Info << "head blocked" << endl;
+                                            Info<< "head blocked" << endl;
 #                                           endif
 
                                             blockHead = true;
                                         }
                                     }
-                                    else if(cellPoints[pointI] == curEdgeEnd)
+                                    else if (cellPoints[pointI] == curEdgeEnd)
                                     {
                                         if (pointUsage[pointI] > 2)
                                         {
 #                                           ifdef DEBUG_CHAIN
-                                            Info << "tail blocked" << endl;
+                                            Info<< "tail blocked" << endl;
 #                                           endif
 
                                             blockTail = true;
@@ -392,7 +392,7 @@ bool Foam::polyMeshZipUpCells(polyMesh& mesh)
                                 if (curEdgeStart == curEdgeEnd)
                                 {
 #                                   ifdef DEBUG_CHAIN
-                                    Info << "closed loop" << endl;
+                                    Info<< "closed loop" << endl;
 #                                   endif
 
                                     pointChain.removeHead();
@@ -415,7 +415,7 @@ bool Foam::polyMeshZipUpCells(polyMesh& mesh)
                 }
 
 #               ifdef DEBUG_CHAIN
-                Info << "completed patch chain: " << pointChain << endl;
+                Info<< "completed patch chain: " << pointChain << endl;
 #               endif
 
                 if (pointChain.size() > 2)
@@ -428,7 +428,7 @@ bool Foam::polyMeshZipUpCells(polyMesh& mesh)
             edgesToInsert.setSize(nEdgesToInsert);
 
 #           ifdef DEBUG_ZIPUP
-            Info << "edgesToInsert: " << edgesToInsert << endl;
+            Info<< "edgesToInsert: " << edgesToInsert << endl;
 #           endif
 
             // Insert the edges into a list of faces
@@ -588,7 +588,7 @@ bool Foam::polyMeshZipUpCells(polyMesh& mesh)
 #                       ifdef DEBUG_ZIPUP
                         if (allPointsPresent)
                         {
-                            Info << "All points present" << endl;
+                            Info<< "All points present" << endl;
                         }
 #                       endif
 
@@ -605,7 +605,7 @@ bool Foam::polyMeshZipUpCells(polyMesh& mesh)
                             edgeList newFaceEdges = newFace.edges();
 
 #                           ifdef DEBUG_ZIPUP
-                            Info << "Not all points present." << endl;
+                            Info<< "Not all points present." << endl;
 #                           endif
 
                             label nNewFacePoints = 0;
diff --git a/src/meshTools/primitiveMeshGeometry/primitiveMeshGeometry.C b/src/meshTools/primitiveMeshGeometry/primitiveMeshGeometry.C
index 91afa7c23ee6fa7ce92f36ab3d01a107f4480bad..e20a0dddb607f418839d867cd686c10416098113 100644
--- a/src/meshTools/primitiveMeshGeometry/primitiveMeshGeometry.C
+++ b/src/meshTools/primitiveMeshGeometry/primitiveMeshGeometry.C
@@ -796,7 +796,7 @@ bool Foam::primitiveMeshGeometry::checkFaceAngles
         faceNormal /= mag(faceNormal) + VSMALL;
 
         // Get edge from f[0] to f[size-1];
-        vector ePrev(p[f[0]] - p[f[f.size()-1]]);
+        vector ePrev(p[f.first()] - p[f.last()]);
         scalar magEPrev = mag(ePrev);
         ePrev /= magEPrev + VSMALL;
 
diff --git a/src/meshTools/regionSplit/regionSplit.C b/src/meshTools/regionSplit/regionSplit.C
index 667a2ddc5d102bfe7d8d8b1906d416f48f58f515..b415d66f02e0375de8d18604c900307919bd1280 100644
--- a/src/meshTools/regionSplit/regionSplit.C
+++ b/src/meshTools/regionSplit/regionSplit.C
@@ -342,7 +342,7 @@ Foam::label Foam::regionSplit::calcRegionSplit
         nRegions++;
         unsetCellI++;
     }
-    while(true);
+    while (true);
 
 
     if (debug)
diff --git a/src/meshTools/searchableSurface/searchableBox.C b/src/meshTools/searchableSurface/searchableBox.C
index 8b4c0f5c76c5c8abfd0b0ab5f432e268766769a8..a4cc593562a6460ac80f4998d7dc570c4651da71 100644
--- a/src/meshTools/searchableSurface/searchableBox.C
+++ b/src/meshTools/searchableSurface/searchableBox.C
@@ -496,7 +496,7 @@ void Foam::searchableBox::findLineAll
                 if
                 (
                     !inter.hit()
-                 || (inter.index() == hits[hits.size()-1].index())
+                 || (inter.index() == hits.last().index())
                 )
                 {
                     break;
diff --git a/src/meshTools/searchableSurface/searchableSurfacesQueries.C b/src/meshTools/searchableSurface/searchableSurfacesQueries.C
index b0d6322a740b3fe42012a114fa4687a24d89aac8..6b8c2841f32ce074702f903120821675caaed8f0 100644
--- a/src/meshTools/searchableSurface/searchableSurfacesQueries.C
+++ b/src/meshTools/searchableSurface/searchableSurfacesQueries.C
@@ -730,7 +730,7 @@ Foam::pointIndexHit Foam::searchableSurfacesQueries::facesIntersection
         }
     }
 
-    nearest[nearest.size()-1] = sumNearest / surfacesToTest.size();
+    nearest.last() = sumNearest / surfacesToTest.size();
 
 
     // Get the sum of distances (initial evaluation)
diff --git a/src/meshTools/searchableSurface/triSurfaceMesh.C b/src/meshTools/searchableSurface/triSurfaceMesh.C
index 950cd13285334a4849f187b61f678f0dc21b309d..5f9a846ace2144d0b2da506417959b5bdba0e067 100644
--- a/src/meshTools/searchableSurface/triSurfaceMesh.C
+++ b/src/meshTools/searchableSurface/triSurfaceMesh.C
@@ -632,7 +632,7 @@ void Foam::triSurfaceMesh::findLineAll
                 if
                 (
                     !inter.hit()
-                 || (inter.index() == hits[hits.size()-1].index())
+                 || (inter.index() == hits.last().index())
                 )
                 {
                     break;
diff --git a/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.C b/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.C
index 11e2eadd483d9db9bc7c9a6bcc38fd7c32e5c2f9..7f822733b8a5c96c0326e0e37f9e4556828dd0d6 100644
--- a/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.C
+++ b/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.C
@@ -35,13 +35,9 @@ License
 
 namespace Foam
 {
-
-defineTypeNameAndDebug(setsToFaceZone, 0);
-
-addToRunTimeSelectionTable(topoSetSource, setsToFaceZone, word);
-
-addToRunTimeSelectionTable(topoSetSource, setsToFaceZone, istream);
-
+    defineTypeNameAndDebug(setsToFaceZone, 0);
+    addToRunTimeSelectionTable(topoSetSource, setsToFaceZone, word);
+    addToRunTimeSelectionTable(topoSetSource, setsToFaceZone, istream);
 }
 
 
@@ -155,7 +151,7 @@ void Foam::setsToFaceZone::applyToSet
                         {
                             flip = false;
                         }
-                        else if(!ownFound && neiFound)
+                        else if (!ownFound && neiFound)
                         {
                             flip = true;
                         }
diff --git a/src/meshTools/triSurface/booleanOps/intersectedSurface/edgeSurface.C b/src/meshTools/triSurface/booleanOps/intersectedSurface/edgeSurface.C
index 5caa377e0549a686d9388865c9bc7bf88e2ff04a..4721cb48ab489c1d53432fd1549487938c1ac14d 100644
--- a/src/meshTools/triSurface/booleanOps/intersectedSurface/edgeSurface.C
+++ b/src/meshTools/triSurface/booleanOps/intersectedSurface/edgeSurface.C
@@ -213,7 +213,7 @@ Foam::edgeSurface::edgeSurface
             (
                 edge
                 (
-                    extraVerts[extraVerts.size()-1] + nSurfacePoints_,
+                    extraVerts.last() + nSurfacePoints_,
                     e.end()
                 )
             );
@@ -330,7 +330,7 @@ Foam::edgeSurface::edgeSurface
         labelList edgeLabels(edges_.size() - nSurfaceEdges_);
 
         label i = 0;
-        for(label edgeI = nSurfaceEdges_; edgeI < edges_.size(); edgeI++)
+        for (label edgeI = nSurfaceEdges_; edgeI < edges_.size(); edgeI++)
         {
             edgeLabels[i++] = edgeI;
         }
diff --git a/src/meshTools/triSurface/booleanOps/intersectedSurface/intersectedSurface.C b/src/meshTools/triSurface/booleanOps/intersectedSurface/intersectedSurface.C
index be758c07fdf0c6b4d9677b57629c066ee4d2fda1..201593990b21dfec7d12524bb0999fa43aeba247 100644
--- a/src/meshTools/triSurface/booleanOps/intersectedSurface/intersectedSurface.C
+++ b/src/meshTools/triSurface/booleanOps/intersectedSurface/intersectedSurface.C
@@ -597,7 +597,7 @@ Foam::face Foam::intersectedSurface::walkFace
     label vertI = startVertI;
     label edgeI = startEdgeI;
 
-    while(true)
+    while (true)
     {
         const edge& e = edges[edgeI];
 
diff --git a/src/meshTools/triSurface/booleanOps/surfaceIntersection/edgeIntersections.C b/src/meshTools/triSurface/booleanOps/surfaceIntersection/edgeIntersections.C
index 47c31f04bf049800c62eb0fd2fe4e1f740e9246c..86e97a49d385f90b9780eac412c707cd341c4346 100644
--- a/src/meshTools/triSurface/booleanOps/surfaceIntersection/edgeIntersections.C
+++ b/src/meshTools/triSurface/booleanOps/surfaceIntersection/edgeIntersections.C
@@ -258,12 +258,12 @@ bool Foam::edgeIntersections::inlinePerturb
         bool perturbEnd = false;
 
         // Check first intersection.
-        if (edgeEnds[0] == 0)
+        if (edgeEnds.first() == 0)
         {
             perturbStart = true;
         }
 
-        if (edgeEnds[edgeEnds.size()-1] == 1)
+        if (edgeEnds.last() == 1)
         {
             perturbEnd = true;
         }
diff --git a/src/meshTools/triSurface/booleanOps/surfaceIntersection/surfaceIntersection.C b/src/meshTools/triSurface/booleanOps/surfaceIntersection/surfaceIntersection.C
index 33940989b8228a358caa1c19ebfda82404a94344..a25664a130db244aa91809279003702222d5c36c 100644
--- a/src/meshTools/triSurface/booleanOps/surfaceIntersection/surfaceIntersection.C
+++ b/src/meshTools/triSurface/booleanOps/surfaceIntersection/surfaceIntersection.C
@@ -242,8 +242,7 @@ void Foam::surfaceIntersection::storeIntersection
 
             // Check whether perhaps degenerate
             const point& prevHit = allCutPoints[*iter];
-
-            const point& thisHit = allCutPoints[allCutPoints.size()-1];
+            const point& thisHit = allCutPoints.last();
 
             if (mag(prevHit - thisHit) < SMALL)
             {
@@ -706,7 +705,7 @@ void Foam::surfaceIntersection::doCutEdges
                 doTrack = false;
             }
         }
-        while(doTrack);
+        while (doTrack);
     }
     intersection::setPlanarTol(oldTol);
 }
diff --git a/src/meshTools/triSurface/booleanOps/surfaceIntersection/surfaceIntersectionFuncs.C b/src/meshTools/triSurface/booleanOps/surfaceIntersection/surfaceIntersectionFuncs.C
index b2a5eec086885c647d557aef1b4969bf236429f3..a710c98d44c560bfbda01f9f7ee039165e164ade 100644
--- a/src/meshTools/triSurface/booleanOps/surfaceIntersection/surfaceIntersectionFuncs.C
+++ b/src/meshTools/triSurface/booleanOps/surfaceIntersection/surfaceIntersectionFuncs.C
@@ -155,12 +155,12 @@ void Foam::surfaceIntersection::removeDuplicates
         // Insert first
         elems[elemI++] = map[oldElems[0]];
 
-        for(label vertI = 1; vertI < oldElems.size(); vertI++)
+        for (label vertI = 1; vertI < oldElems.size(); vertI++)
         {
             // Insert others only if they differ from one before
             label newVertI = map[oldElems[vertI]];
 
-            if (newVertI != elems[elems.size()-1])
+            if (newVertI != elems.last())
             {
                 elems[elemI++] = newVertI;
             }
@@ -294,13 +294,13 @@ void Foam::surfaceIntersection::writeIntersectedEdges
             os  << "l " << e.start()+1 << ' '
                 << extraVerts[0] + surf.nPoints() + 1 << endl;
 
-            for(label i = 1; i < extraVerts.size(); i++)
+            for (label i = 1; i < extraVerts.size(); i++)
             {
                 os  << "l " << extraVerts[i-1] + surf.nPoints() + 1  << ' '
                     << extraVerts[i] + surf.nPoints() + 1 << endl;
             }
 
-            os  << "l " << extraVerts[extraVerts.size()-1] + surf.nPoints() + 1
+            os  << "l " << extraVerts.last() + surf.nPoints() + 1
                 << ' ' << e.end()+1 << endl;
         }
     }
diff --git a/src/meshTools/triSurface/orientedSurface/orientedSurface.C b/src/meshTools/triSurface/orientedSurface/orientedSurface.C
index 34a230744754b257802e9a2a47c39320ac5e75fb..045693caa8434dc9ebb76d22b373f8573dd91e69 100644
--- a/src/meshTools/triSurface/orientedSurface/orientedSurface.C
+++ b/src/meshTools/triSurface/orientedSurface/orientedSurface.C
@@ -185,7 +185,7 @@ void Foam::orientedSurface::walkSurface
     // List of edges that were changed in the last iteration.
     labelList changedEdges;
 
-    while(true)
+    while (true)
     {
         changedEdges = faceToEdge(s, changedFaces);
 
diff --git a/src/meshTools/triSurface/triSurfaceTools/triSurfaceTools.C b/src/meshTools/triSurface/triSurfaceTools/triSurfaceTools.C
index 0e97a6331659fc31ba6bd78977e6e40a6cc66911..773c423419002942d5d7c29bd2d146d028b57eb3 100644
--- a/src/meshTools/triSurface/triSurfaceTools/triSurfaceTools.C
+++ b/src/meshTools/triSurface/triSurfaceTools/triSurfaceTools.C
@@ -2702,7 +2702,7 @@ void Foam::triSurfaceTools::calcInterpolationWeights
 
     // calculate edge normal (pointing inwards)
     FixedList<vector, 3> normal;
-    for(label i=0; i<3; i++)
+    for (label i=0; i<3; i++)
     {
         normal[i] = triangleFaceNormal ^ edge[i];
         normal[i] /= mag(normal[i]) + VSMALL;
diff --git a/src/decompositionMethods/Allwmake b/src/parallel/Allwmake
similarity index 70%
rename from src/decompositionMethods/Allwmake
rename to src/parallel/Allwmake
index f71ea71b867935edc49b4529681def9fe7cfde95..34d323251aadcde80683ac1b8609faba82fc936d 100755
--- a/src/decompositionMethods/Allwmake
+++ b/src/parallel/Allwmake
@@ -3,10 +3,11 @@ cd ${0%/*} || exit 1    # run from this directory
 set -x
 
 wmake libso decompositionMethods
+wmake libso reconstruct
 
 if [ -d "$FOAM_MPI_LIBBIN" ]
 then
-    (WM_OPTIONS=${WM_OPTIONS}$WM_MPLIB; wmake libso parMetisDecomp)
+    ( WM_OPTIONS=${WM_OPTIONS}$WM_MPLIB; wmake libso parMetisDecomp )
 fi
 
 # ----------------------------------------------------------------- end-of-file
diff --git a/src/decompositionMethods/decompositionMethods/Make/files b/src/parallel/decompositionMethods/Make/files
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/Make/files
rename to src/parallel/decompositionMethods/Make/files
diff --git a/src/decompositionMethods/decompositionMethods/Make/options b/src/parallel/decompositionMethods/Make/options
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/Make/options
rename to src/parallel/decompositionMethods/Make/options
diff --git a/src/decompositionMethods/decompositionMethods/decompositionMethod/decompositionMethod.C b/src/parallel/decompositionMethods/decompositionMethod/decompositionMethod.C
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/decompositionMethod/decompositionMethod.C
rename to src/parallel/decompositionMethods/decompositionMethod/decompositionMethod.C
diff --git a/src/decompositionMethods/decompositionMethods/decompositionMethod/decompositionMethod.H b/src/parallel/decompositionMethods/decompositionMethod/decompositionMethod.H
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/decompositionMethod/decompositionMethod.H
rename to src/parallel/decompositionMethods/decompositionMethod/decompositionMethod.H
diff --git a/src/decompositionMethods/decompositionMethods/geomDecomp/geomDecomp.C b/src/parallel/decompositionMethods/geomDecomp/geomDecomp.C
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/geomDecomp/geomDecomp.C
rename to src/parallel/decompositionMethods/geomDecomp/geomDecomp.C
diff --git a/src/decompositionMethods/decompositionMethods/geomDecomp/geomDecomp.H b/src/parallel/decompositionMethods/geomDecomp/geomDecomp.H
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/geomDecomp/geomDecomp.H
rename to src/parallel/decompositionMethods/geomDecomp/geomDecomp.H
diff --git a/src/decompositionMethods/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C b/src/parallel/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C
similarity index 98%
rename from src/decompositionMethods/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C
rename to src/parallel/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C
index 4ee04a7cdfca385dbcb6f154d2096d9112bd6f10..5fa638649d42825ceb0b861cfff432e22778890d 100644
--- a/src/decompositionMethods/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C
+++ b/src/parallel/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C
@@ -165,7 +165,7 @@ void Foam::hierarchGeomDecomp::calculateSortedWeightedSizes
     // Non-dimensionalise and multiply by size.
     scalar globalCurrentLength = returnReduce
     (
-        sortedWeightedSizes[current.size()], 
+        sortedWeightedSizes[current.size()],
         sumOp<scalar>()
     );
     // Normalise weights by global sum of weights and multiply through
@@ -238,7 +238,7 @@ void Foam::hierarchGeomDecomp::findBinary
         if (returnReduce(hasNotChanged, andOp<bool>()))
         {
             WarningIn("hierarchGeomDecomp::findBinary(..)")
-                << "unable to find desired deomposition split, making do!" 
+                << "unable to find desired deomposition split, making do!"
                 << endl;
             break;
         }
@@ -288,7 +288,7 @@ void Foam::hierarchGeomDecomp::findBinary
             Pout<< "    low:" << low << " lowValue:" << lowValue
                 << " high:" << high << " highValue:" << highValue
                 << " mid:" << mid << " midValue:" << midValue << endl
-                << "    globalSize:" << weightedSize 
+                << "    globalSize:" << weightedSize
                 << " wantedSize:" << wantedSize
                 << " sizeTol:" << sizeTol << endl;
         }
@@ -318,7 +318,7 @@ void Foam::hierarchGeomDecomp::findBinary
         if (returnReduce(hasNotChanged, andOp<bool>()))
         {
             WarningIn("hierarchGeomDecomp::findBinary(..)")
-                << "unable to find desired deomposition split, making do!" 
+                << "unable to find desired deomposition split, making do!"
                 << endl;
             break;
         }
@@ -375,7 +375,7 @@ void Foam::hierarchGeomDecomp::sortComponent
     (
         (
             sortedCoord.size()
-          ? sortedCoord[sortedCoord.size()-1]
+          ? sortedCoord.last()
           : -GREAT
         ),
         maxOp<scalar>()
@@ -562,14 +562,14 @@ void Foam::hierarchGeomDecomp::sortComponent
     (
         (
             sortedCoord.size()
-          ? sortedCoord[sortedCoord.size()-1]
+          ? sortedCoord.last()
           : -GREAT
         ),
         maxOp<scalar>()
     );
 
     if (debug)
-    {   
+    {
         Pout<< "sortComponent : minCoord:" << minCoord
             << " maxCoord:" << maxCoord << endl;
     }
@@ -592,7 +592,7 @@ void Foam::hierarchGeomDecomp::sortComponent
 
         // Value at right of bin (leftIndex+localSize-1)
         scalar rightCoord = -GREAT;
-        
+
         if (bin == n_[compI]-1)
         {
             // Last bin. Copy all.
@@ -602,7 +602,7 @@ void Foam::hierarchGeomDecomp::sortComponent
         else
         {
             // For the current bin (starting at leftCoord) we want a rightCoord
-            // such that the sum of all weighted sizes are 
+            // such that the sum of all weighted sizes are
             // globalCurrentLength/n_[compI].
             // We have to iterate to obtain this.
 
diff --git a/src/decompositionMethods/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H b/src/parallel/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H
rename to src/parallel/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H
diff --git a/src/decompositionMethods/decompositionMethods/manualDecomp/manualDecomp.C b/src/parallel/decompositionMethods/manualDecomp/manualDecomp.C
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/manualDecomp/manualDecomp.C
rename to src/parallel/decompositionMethods/manualDecomp/manualDecomp.C
diff --git a/src/decompositionMethods/decompositionMethods/manualDecomp/manualDecomp.H b/src/parallel/decompositionMethods/manualDecomp/manualDecomp.H
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/manualDecomp/manualDecomp.H
rename to src/parallel/decompositionMethods/manualDecomp/manualDecomp.H
diff --git a/src/decompositionMethods/decompositionMethods/metisDecomp/metisDecomp.C b/src/parallel/decompositionMethods/metisDecomp/metisDecomp.C
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/metisDecomp/metisDecomp.C
rename to src/parallel/decompositionMethods/metisDecomp/metisDecomp.C
diff --git a/src/decompositionMethods/decompositionMethods/metisDecomp/metisDecomp.H b/src/parallel/decompositionMethods/metisDecomp/metisDecomp.H
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/metisDecomp/metisDecomp.H
rename to src/parallel/decompositionMethods/metisDecomp/metisDecomp.H
diff --git a/src/decompositionMethods/decompositionMethods/scotchDecomp/scotchDecomp.C b/src/parallel/decompositionMethods/scotchDecomp/scotchDecomp.C
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/scotchDecomp/scotchDecomp.C
rename to src/parallel/decompositionMethods/scotchDecomp/scotchDecomp.C
diff --git a/src/decompositionMethods/decompositionMethods/scotchDecomp/scotchDecomp.H b/src/parallel/decompositionMethods/scotchDecomp/scotchDecomp.H
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/scotchDecomp/scotchDecomp.H
rename to src/parallel/decompositionMethods/scotchDecomp/scotchDecomp.H
diff --git a/src/decompositionMethods/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C b/src/parallel/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C
rename to src/parallel/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C
diff --git a/src/decompositionMethods/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H b/src/parallel/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H
similarity index 100%
rename from src/decompositionMethods/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H
rename to src/parallel/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H
diff --git a/src/decompositionMethods/parMetisDecomp/Make/files b/src/parallel/parMetisDecomp/Make/files
similarity index 100%
rename from src/decompositionMethods/parMetisDecomp/Make/files
rename to src/parallel/parMetisDecomp/Make/files
diff --git a/src/decompositionMethods/parMetisDecomp/Make/options b/src/parallel/parMetisDecomp/Make/options
similarity index 100%
rename from src/decompositionMethods/parMetisDecomp/Make/options
rename to src/parallel/parMetisDecomp/Make/options
diff --git a/src/decompositionMethods/parMetisDecomp/parMetisDecomp.C b/src/parallel/parMetisDecomp/parMetisDecomp.C
similarity index 100%
rename from src/decompositionMethods/parMetisDecomp/parMetisDecomp.C
rename to src/parallel/parMetisDecomp/parMetisDecomp.C
diff --git a/src/decompositionMethods/parMetisDecomp/parMetisDecomp.H b/src/parallel/parMetisDecomp/parMetisDecomp.H
similarity index 100%
rename from src/decompositionMethods/parMetisDecomp/parMetisDecomp.H
rename to src/parallel/parMetisDecomp/parMetisDecomp.H
diff --git a/src/decompositionMethods/parMetisDecomp/parMetisDecompTemplates.C b/src/parallel/parMetisDecomp/parMetisDecompTemplates.C
similarity index 100%
rename from src/decompositionMethods/parMetisDecomp/parMetisDecompTemplates.C
rename to src/parallel/parMetisDecomp/parMetisDecompTemplates.C
diff --git a/src/parallel/reconstruct/Make/files b/src/parallel/reconstruct/Make/files
new file mode 100644
index 0000000000000000000000000000000000000000..64023e9573ba96525acca6a464dc0000b858361c
--- /dev/null
+++ b/src/parallel/reconstruct/Make/files
@@ -0,0 +1,6 @@
+processorMeshes.C
+fvFieldReconstructor.C
+pointFieldReconstructor.C
+reconstructLagrangianPositions.C
+
+LIB = $(FOAM_LIBBIN)/libreconstruct
diff --git a/src/parallel/reconstruct/Make/options b/src/parallel/reconstruct/Make/options
new file mode 100644
index 0000000000000000000000000000000000000000..71546225cf549de3ffb95105271396bf163a8dfc
--- /dev/null
+++ b/src/parallel/reconstruct/Make/options
@@ -0,0 +1,7 @@
+EXE_INC = \
+    -I$(LIB_SRC)/finiteVolume/lnInclude \
+    -I$(LIB_SRC)/lagrangian/basic/lnInclude
+
+LIB_LIBS = \
+    -lfiniteVolume \
+    -llagrangian
diff --git a/applications/utilities/parallelProcessing/reconstructPar/fvFieldReconstructor.C b/src/parallel/reconstruct/fvFieldReconstructor.C
similarity index 100%
rename from applications/utilities/parallelProcessing/reconstructPar/fvFieldReconstructor.C
rename to src/parallel/reconstruct/fvFieldReconstructor.C
diff --git a/applications/utilities/parallelProcessing/reconstructPar/fvFieldReconstructor.H b/src/parallel/reconstruct/fvFieldReconstructor.H
similarity index 97%
rename from applications/utilities/parallelProcessing/reconstructPar/fvFieldReconstructor.H
rename to src/parallel/reconstruct/fvFieldReconstructor.H
index b9f2fb4bf6af487877b31361acf66b74edd4268b..0e3758cafc8885f6f258288f90fe9675d21ce427 100644
--- a/applications/utilities/parallelProcessing/reconstructPar/fvFieldReconstructor.H
+++ b/src/parallel/reconstruct/fvFieldReconstructor.H
@@ -26,7 +26,7 @@ Class
     Foam::fvFieldReconstructor
 
 Description
-    FV volume and surface field reconstructor.
+    Finite volume reconstructor for volume and surface fields.
 
 SourceFiles
     fvFieldReconstructor.C
@@ -50,7 +50,7 @@ namespace Foam
 
 
 /*---------------------------------------------------------------------------*\
-                 Class fvFieldReconstructor Declaration
+                    Class fvFieldReconstructor Declaration
 \*---------------------------------------------------------------------------*/
 
 class fvFieldReconstructor
diff --git a/applications/utilities/parallelProcessing/reconstructPar/fvFieldReconstructorReconstructFields.C b/src/parallel/reconstruct/fvFieldReconstructorReconstructFields.C
similarity index 100%
rename from applications/utilities/parallelProcessing/reconstructPar/fvFieldReconstructorReconstructFields.C
rename to src/parallel/reconstruct/fvFieldReconstructorReconstructFields.C
diff --git a/applications/utilities/parallelProcessing/reconstructPar/pointFieldReconstructor.C b/src/parallel/reconstruct/pointFieldReconstructor.C
similarity index 100%
rename from applications/utilities/parallelProcessing/reconstructPar/pointFieldReconstructor.C
rename to src/parallel/reconstruct/pointFieldReconstructor.C
diff --git a/applications/utilities/parallelProcessing/reconstructPar/pointFieldReconstructor.H b/src/parallel/reconstruct/pointFieldReconstructor.H
similarity index 96%
rename from applications/utilities/parallelProcessing/reconstructPar/pointFieldReconstructor.H
rename to src/parallel/reconstruct/pointFieldReconstructor.H
index 34b458913c43cb73e94c369c373ef71d80e9caf6..7ab04c3d41d69cafc49df1016a397cda2019e0cb 100644
--- a/applications/utilities/parallelProcessing/reconstructPar/pointFieldReconstructor.H
+++ b/src/parallel/reconstruct/pointFieldReconstructor.H
@@ -47,7 +47,7 @@ namespace Foam
 {
 
 /*---------------------------------------------------------------------------*\
-              Class pointFieldReconstructor Declaration
+                   Class pointFieldReconstructor Declaration
 \*---------------------------------------------------------------------------*/
 
 class pointFieldReconstructor
@@ -73,10 +73,7 @@ class pointFieldReconstructor
     // Private Member Functions
 
         //- Disallow default bitwise copy construct
-        pointFieldReconstructor
-        (
-            const pointFieldReconstructor&
-        );
+        pointFieldReconstructor(const pointFieldReconstructor&);
 
         //- Disallow default bitwise assignment
         void operator=(const pointFieldReconstructor&);
diff --git a/applications/utilities/parallelProcessing/reconstructPar/pointFieldReconstructorReconstructFields.C b/src/parallel/reconstruct/pointFieldReconstructorReconstructFields.C
similarity index 100%
rename from applications/utilities/parallelProcessing/reconstructPar/pointFieldReconstructorReconstructFields.C
rename to src/parallel/reconstruct/pointFieldReconstructorReconstructFields.C
diff --git a/applications/utilities/parallelProcessing/reconstructPar/processorMeshes.C b/src/parallel/reconstruct/processorMeshes.C
similarity index 91%
rename from applications/utilities/parallelProcessing/reconstructPar/processorMeshes.C
rename to src/parallel/reconstruct/processorMeshes.C
index 8c77b9f85562f15912fc72d340206ab92643834c..fb6ccbed5eb438f60ba2bd80e75527e3e18a5fa4 100644
--- a/applications/utilities/parallelProcessing/reconstructPar/processorMeshes.C
+++ b/src/parallel/reconstruct/processorMeshes.C
@@ -127,8 +127,8 @@ Foam::processorMeshes::processorMeshes
     const word& meshName
 )
 :
-    databases_(databases),
     meshName_(meshName),
+    databases_(databases),
     meshes_(databases.size()),
     pointProcAddressing_(databases.size()),
     faceProcAddressing_(databases.size()),
@@ -165,20 +165,17 @@ Foam::fvMesh::readUpdateState Foam::processorMeshes::readUpdate()
         {
             stat = procStat;
         }
-        else
+        else if (stat != procStat)
         {
-            if (stat != procStat)
-            {
-                FatalErrorIn("processorMeshes::readUpdate()")
-                    << "Processor " << procI
-                    << " has a different polyMesh at time "
-                    << databases_[procI].timeName()
-                    << " compared to any previous processors." << nl
-                    << "Please check time " << databases_[procI].timeName()
-                    << " directories on all processors for consistent"
-                    << " mesh files."
-                    << exit(FatalError);
-            }
+            FatalErrorIn("processorMeshes::readUpdate()")
+                << "Processor " << procI
+                << " has a different polyMesh at time "
+                << databases_[procI].timeName()
+                << " compared to any previous processors." << nl
+                << "Please check time " << databases_[procI].timeName()
+                << " directories on all processors for consistent"
+                << " mesh files."
+                << exit(FatalError);
         }
     }
 
diff --git a/applications/utilities/parallelProcessing/reconstructPar/processorMeshes.H b/src/parallel/reconstruct/processorMeshes.H
similarity index 96%
rename from applications/utilities/parallelProcessing/reconstructPar/processorMeshes.H
rename to src/parallel/reconstruct/processorMeshes.H
index d83c3d6216c1824a11da1d66ac330bf2649ce5e0..ab39bc7a3ce0b8e1df27713891b5b5688096143d 100644
--- a/applications/utilities/parallelProcessing/reconstructPar/processorMeshes.H
+++ b/src/parallel/reconstruct/processorMeshes.H
@@ -55,11 +55,11 @@ class processorMeshes
 {
     // Private data
 
+        const word meshName_;
+
         //- Processor databases
         PtrList<Time>& databases_;
 
-        const word meshName_;
-
         //- List of processor meshes
         PtrList<fvMesh> meshes_;
 
@@ -98,29 +98,32 @@ public:
 
     // Member Functions
 
-        //- Update the meshes based on the mesh files saved in
-        //  time directories
+        //- Update the meshes based on the mesh files saved in time directories
         fvMesh::readUpdateState readUpdate();
 
         //- Reconstruct point position after motion in parallel
-        void reconstructPoints(fvMesh& mesh);
+        void reconstructPoints(fvMesh&);
 
         PtrList<fvMesh>& meshes()
         {
             return meshes_;
         }
+
         const PtrList<labelIOList>& pointProcAddressing() const
         {
             return pointProcAddressing_;
         }
+
         PtrList<labelIOList>& faceProcAddressing()
         {
             return faceProcAddressing_;
         }
+
         const PtrList<labelIOList>& cellProcAddressing() const
         {
             return cellProcAddressing_;
         }
+
         const PtrList<labelIOList>& boundaryProcAddressing() const
         {
             return boundaryProcAddressing_;
diff --git a/applications/utilities/parallelProcessing/reconstructPar/reconstructLagrangian.H b/src/parallel/reconstruct/reconstructLagrangian.H
similarity index 100%
rename from applications/utilities/parallelProcessing/reconstructPar/reconstructLagrangian.H
rename to src/parallel/reconstruct/reconstructLagrangian.H
diff --git a/applications/utilities/parallelProcessing/reconstructPar/reconstructLagrangianFields.C b/src/parallel/reconstruct/reconstructLagrangianFields.C
similarity index 100%
rename from applications/utilities/parallelProcessing/reconstructPar/reconstructLagrangianFields.C
rename to src/parallel/reconstruct/reconstructLagrangianFields.C
diff --git a/applications/utilities/parallelProcessing/reconstructPar/reconstructLagrangianPositions.C b/src/parallel/reconstruct/reconstructLagrangianPositions.C
similarity index 100%
rename from applications/utilities/parallelProcessing/reconstructPar/reconstructLagrangianPositions.C
rename to src/parallel/reconstruct/reconstructLagrangianPositions.C
diff --git a/src/postProcessing/functionObjects/IO/writeRegisteredObject/writeRegisteredObjectFunctionObject.H b/src/postProcessing/functionObjects/IO/writeRegisteredObject/writeRegisteredObjectFunctionObject.H
index 284aa6c17a77ad26a05c9af0c06d6117f6520fe4..6581cc6e5bf0704dd6f7f8caee421478173a63c8 100644
--- a/src/postProcessing/functionObjects/IO/writeRegisteredObject/writeRegisteredObjectFunctionObject.H
+++ b/src/postProcessing/functionObjects/IO/writeRegisteredObject/writeRegisteredObjectFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around writeRegisteredObject to allow them to be
-    created via the functions list within controlDict.
+    created via the functions entry within controlDict.
 
 SourceFiles
     writeRegisteredObjectFunctionObject.C
diff --git a/src/postProcessing/functionObjects/field/fieldAverage/fieldAverageFunctionObject/fieldAverageFunctionObject.H b/src/postProcessing/functionObjects/field/fieldAverage/fieldAverageFunctionObject/fieldAverageFunctionObject.H
index 743768ffce8a2c485b4a55516216c2319bbac58f..61cff6515b76bd26bfaee0c53e93403857ad9d3b 100644
--- a/src/postProcessing/functionObjects/field/fieldAverage/fieldAverageFunctionObject/fieldAverageFunctionObject.H
+++ b/src/postProcessing/functionObjects/field/fieldAverage/fieldAverageFunctionObject/fieldAverageFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around fieldAverage to allow them to be created
-    via the functions list within controlDict.
+    via the functions entry within controlDict.
 
 SourceFiles
     fieldAverageFunctionObject.C
diff --git a/src/postProcessing/functionObjects/field/fieldMinMax/fieldMinMaxFunctionObject.H b/src/postProcessing/functionObjects/field/fieldMinMax/fieldMinMaxFunctionObject.H
index a5af27af513d1a0de44cd25052b0aae687ece873..a619fb94da6d6ded7e2524d467859d798f9f92de 100644
--- a/src/postProcessing/functionObjects/field/fieldMinMax/fieldMinMaxFunctionObject.H
+++ b/src/postProcessing/functionObjects/field/fieldMinMax/fieldMinMaxFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around fieldMinMax to allow them to be created via
-    the functions list within controlDict.
+    the functions entry within controlDict.
 
 SourceFiles
     fieldMinMaxFunctionObject.C
diff --git a/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSourceFunctionObject.H b/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSourceFunctionObject.H
index eca172a58d4e23b30ff4275835c2edabd4c7980f..e37938663b5fa7aad3dfaf60e349a9751f321d64 100644
--- a/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSourceFunctionObject.H
+++ b/src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSourceFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around cellSource to allow it to be
-    created via the functions list within controlDict.
+    created via the functions entry within controlDict.
 
 SourceFiles
     cellSourceFunctionObject.C
diff --git a/src/postProcessing/functionObjects/field/fieldValues/faceSource/faceSourceFunctionObject.H b/src/postProcessing/functionObjects/field/fieldValues/faceSource/faceSourceFunctionObject.H
index 54d717f870f1f6332e2f5e4ec0ab9ec09e916145..4810469b3c1ce011b7e55215de36aeea771c8100 100644
--- a/src/postProcessing/functionObjects/field/fieldValues/faceSource/faceSourceFunctionObject.H
+++ b/src/postProcessing/functionObjects/field/fieldValues/faceSource/faceSourceFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around faceSource to allow it to be
-    created via the functions list within controlDict.
+    created via the functions entry within controlDict.
 
 SourceFiles
     faceSourceFunctionObject.C
diff --git a/src/postProcessing/functionObjects/field/streamLine/streamLineFunctionObject.H b/src/postProcessing/functionObjects/field/streamLine/streamLineFunctionObject.H
index 051299d8755a55384f2b6e575d5172cee05e1002..6905aa0c570b3d61483820e1373f1f4440382abe 100644
--- a/src/postProcessing/functionObjects/field/streamLine/streamLineFunctionObject.H
+++ b/src/postProcessing/functionObjects/field/streamLine/streamLineFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around streamLines to allow them to be created via
-    the functions list within controlDict.
+    the functions entry within controlDict.
 
 SourceFiles
     streamLineFunctionObject.C
diff --git a/src/postProcessing/functionObjects/field/streamLine/streamLineParticle.C b/src/postProcessing/functionObjects/field/streamLine/streamLineParticle.C
index f344fa870f151adba1bf62357491b574815b3dc8..c39b6188871026ece1c9cf16b83da7a5d934210b 100644
--- a/src/postProcessing/functionObjects/field/streamLine/streamLineParticle.C
+++ b/src/postProcessing/functionObjects/field/streamLine/streamLineParticle.C
@@ -84,7 +84,7 @@ Foam::vector Foam::streamLineParticle::interpolateFields
 
     const DynamicList<vector>& U = sampledVectors_[td.UIndex_];
 
-    return U[U.size()-1];
+    return U.last();
 }
 
 
@@ -226,21 +226,21 @@ bool Foam::streamLineParticle::move(streamLineParticle::trackData& td)
         // Transfer particle data into trackData.
         //td.allPositions_.append(sampledPositions_);
         td.allPositions_.append(vectorList());
-        vectorList& top = td.allPositions_[td.allPositions_.size()-1];
+        vectorList& top = td.allPositions_.last();
         top.transfer(sampledPositions_);
 
         forAll(sampledScalars_, i)
         {
             //td.allScalars_[i].append(sampledScalars_[i]);
             td.allScalars_[i].append(scalarList());
-            scalarList& top = td.allScalars_[i][td.allScalars_[i].size()-1];
+            scalarList& top = td.allScalars_[i].last();
             top.transfer(sampledScalars_[i]);
         }
         forAll(sampledVectors_, i)
         {
             //td.allVectors_[i].append(sampledVectors_[i]);
             td.allVectors_[i].append(vectorList());
-            vectorList& top = td.allVectors_[i][td.allVectors_[i].size()-1];
+            vectorList& top = td.allVectors_[i].last();
             top.transfer(sampledVectors_[i]);
         }
     }
diff --git a/src/postProcessing/functionObjects/forces/forceCoeffs/forceCoeffsFunctionObject.H b/src/postProcessing/functionObjects/forces/forceCoeffs/forceCoeffsFunctionObject.H
index 155e1b4537031efd0087273e9e441b39423c1cd8..5d0370a09b6a387924500d051ed3e3f509fecade 100644
--- a/src/postProcessing/functionObjects/forces/forceCoeffs/forceCoeffsFunctionObject.H
+++ b/src/postProcessing/functionObjects/forces/forceCoeffs/forceCoeffsFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around forceCoeffs to allow them to be created via
-    the functions list within controlDict.
+    the functions entry within controlDict.
 
 SourceFiles
     forceCoeffsFunctionObject.C
diff --git a/src/postProcessing/functionObjects/forces/forces/forcesFunctionObject.H b/src/postProcessing/functionObjects/forces/forces/forcesFunctionObject.H
index 6cf8bb9a37222c9d009f3f0d05f8e80ba23056ab..5afaf46bed3014a1406d130258524d88d11856d9 100644
--- a/src/postProcessing/functionObjects/forces/forces/forcesFunctionObject.H
+++ b/src/postProcessing/functionObjects/forces/forces/forcesFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around forces to allow them to be created via the
-    functions list within controlDict.
+    functions entry within controlDict.
 
 SourceFiles
     forcesFunctionObject.C
diff --git a/src/postProcessing/functionObjects/systemCall/systemCallFunctionObject.H b/src/postProcessing/functionObjects/systemCall/systemCallFunctionObject.H
index ad4f429cabd8feb81cfca8de8748e99b04dd2fd6..2b8feb0f52af8b6e49d4f5c1cb12d332e9bfc824 100644
--- a/src/postProcessing/functionObjects/systemCall/systemCallFunctionObject.H
+++ b/src/postProcessing/functionObjects/systemCall/systemCallFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around systemCall to allow them to be created via
-    the functions list within controlDict.
+    the functions entry within controlDict.
 
 SourceFiles
     systemCallFunctionObject.C
diff --git a/src/postProcessing/functionObjects/utilities/Make/files b/src/postProcessing/functionObjects/utilities/Make/files
index a93fad2edadcb9a9b6f011ed423abff1d8ccb9e6..1812a0b448a534162e144935be7751103339c772 100644
--- a/src/postProcessing/functionObjects/utilities/Make/files
+++ b/src/postProcessing/functionObjects/utilities/Make/files
@@ -1,3 +1,6 @@
+abortCalculation/abortCalculation.C
+abortCalculation/abortCalculationFunctionObject.C
+
 staticPressure/staticPressure.C
 staticPressure/staticPressureFunctionObject.C
 
diff --git a/src/postProcessing/functionObjects/utilities/abortCalculation/IOabortCalculation.H b/src/postProcessing/functionObjects/utilities/abortCalculation/IOabortCalculation.H
new file mode 100644
index 0000000000000000000000000000000000000000..5e4fe444e734f8ed7a17a7734743a4c125ed725e
--- /dev/null
+++ b/src/postProcessing/functionObjects/utilities/abortCalculation/IOabortCalculation.H
@@ -0,0 +1,50 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2009-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
+
+Typedef
+    Foam::IOabortCalculation
+
+Description
+    Instance of the generic IOOutputFilter for abortCalculation.
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef IOabortCalculation_H
+#define IOabortCalculation_H
+
+#include "abortCalculation.H"
+#include "IOOutputFilter.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    typedef IOOutputFilter<abortCalculation> IOabortCalculation;
+}
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculation.C b/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculation.C
new file mode 100644
index 0000000000000000000000000000000000000000..980c41e02f34faa8505a3840ee947eb583ea6e8b
--- /dev/null
+++ b/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculation.C
@@ -0,0 +1,159 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2009-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
+
+\*---------------------------------------------------------------------------*/
+
+#include "abortCalculation.H"
+#include "dictionary.H"
+#include "error.H"
+#include "Time.H"
+#include "OSspecific.H"
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineTypeNameAndDebug(abortCalculation, 0);
+}
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+template<>
+const char* Foam::NamedEnum<Foam::abortCalculation::actionType, 3>::names[] =
+{
+    "noWriteNow",
+    "writeNow",
+    "nextWrite"
+};
+
+const Foam::NamedEnum<Foam::abortCalculation::actionType, 3>
+    Foam::abortCalculation::actionTypeNames_;
+
+
+// * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
+
+void Foam::abortCalculation::removeFile() const
+{
+    if (isFile(abortFile_))
+    {
+        rm(abortFile_);
+    }
+}
+
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::abortCalculation::abortCalculation
+(
+    const word& name,
+    const objectRegistry& obr,
+    const dictionary& dict,
+    const bool loadFromFiles
+)
+:
+    name_(name),
+    obr_(obr),
+    abortFile_("$FOAM_CASE/" + name),
+    action_(nextWrite)
+{
+    abortFile_.expand();
+    read(dict);
+
+    // remove any old files from previous runs
+    removeFile();
+}
+
+
+// * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
+
+Foam::abortCalculation::~abortCalculation()
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+void Foam::abortCalculation::read(const dictionary& dict)
+{
+    word actionName;
+
+    if (dict.found("action"))
+    {
+        action_ = actionTypeNames_.read
+        (
+            dict.lookup("action")
+        );
+    }
+    else
+    {
+        action_ = nextWrite;
+    }
+
+    if (dict.readIfPresent("fileName", abortFile_))
+    {
+        abortFile_.expand();
+    }
+}
+
+
+void Foam::abortCalculation::execute()
+{
+    if (isFile(abortFile_))
+    {
+        switch (action_)
+        {
+            case noWriteNow :
+                obr_.time().stopAt(Time::saNoWriteNow);
+                Info<< "user requested abort - "
+                       "stop immediately without writing data" << endl;
+                break;
+
+            case writeNow :
+                obr_.time().stopAt(Time::saWriteNow);
+                Info<< "user requested abort - "
+                       "stop immediately with writing data" << endl;
+                break;
+
+            case nextWrite :
+                obr_.time().stopAt(Time::saNextWrite);
+                Info<< "user requested abort - "
+                       "stop after next data write" << endl;
+                break;
+        }
+    }
+}
+
+
+void Foam::abortCalculation::end()
+{
+    removeFile();
+}
+
+
+void Foam::abortCalculation::write()
+{
+    execute();
+}
+
+
+// ************************************************************************* //
diff --git a/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculation.H b/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculation.H
new file mode 100644
index 0000000000000000000000000000000000000000..0bec3530d7343d1caad2226f6c0aa0ccf175d73e
--- /dev/null
+++ b/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculation.H
@@ -0,0 +1,168 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2009-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::abortCalculation
+
+Description
+    Watches for presence of the named file in the $FOAM_CASE directory
+    and aborts the calculation if it is present.
+
+    Currently the following action types are supported:
+    - noWriteNow
+    - writeNow
+    - nextWrite
+
+SourceFiles
+    abortCalculation.C
+    IOabortCalculation.H
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef abortCalculation_H
+#define abortCalculation_H
+
+#include "pointFieldFwd.H"
+#include "NamedEnum.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+// Forward declaration of classes
+class objectRegistry;
+class dictionary;
+class mapPolyMesh;
+
+/*---------------------------------------------------------------------------*\
+                      Class abortCalculation Declaration
+\*---------------------------------------------------------------------------*/
+
+class abortCalculation
+{
+public:
+
+    // Public data
+
+        //- Enumeration defining the type of action
+        enum actionType
+        {
+            noWriteNow,    /*!< stop immediately without writing data */
+            writeNow,      /*!< write data and stop immediately */
+            nextWrite      /*!< stop the next time data are written */
+        };
+
+private:
+
+    // Private data
+
+        //- Name of the abort file unless otherwise specified
+        word name_;
+
+        const objectRegistry& obr_;
+
+        //- The fully-qualified name of the abort file
+        fileName abortFile_;
+
+        //- Action type names
+        static const NamedEnum<actionType, 3> actionTypeNames_;
+
+        //- The type of action
+        actionType action_;
+
+
+    // Private Member Functions
+
+        //- Remove abort file.
+        void removeFile() const;
+
+        //- Disallow default bitwise copy construct
+        abortCalculation(const abortCalculation&);
+
+        //- Disallow default bitwise assignment
+        void operator=(const abortCalculation&);
+
+
+public:
+
+    //- Runtime type information
+    TypeName("abort");
+
+
+    // Constructors
+
+        //- Construct for given objectRegistry and dictionary.
+        abortCalculation
+        (
+            const word& name,
+            const objectRegistry&,
+            const dictionary&,
+            const bool loadFromFilesUnused = false
+        );
+
+
+    //- Destructor
+    virtual ~abortCalculation();
+
+
+    // Member Functions
+
+        //- Return name of the abort file
+        virtual const word& name() const
+        {
+            return name_;
+        }
+
+        //- Read the dictionary settings
+        virtual void read(const dictionary&);
+
+        //- Execute, check existence of abort file and take action
+        virtual void execute();
+
+        //- Execute at the final time-loop, used for cleanup
+        virtual void end();
+
+        //- Execute, check existence of abort file and take action
+        virtual void write();
+
+        //- Update for changes of mesh - does nothing
+        virtual void updateMesh(const mapPolyMesh&)
+        {}
+
+        //- Update for changes of mesh - does nothing
+        virtual void movePoints(const pointField&)
+        {}
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculationFunctionObject.C b/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculationFunctionObject.C
new file mode 100644
index 0000000000000000000000000000000000000000..e67d1f97fb8effd2dd4f4c75d9d7a1a50666ae6c
--- /dev/null
+++ b/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculationFunctionObject.C
@@ -0,0 +1,43 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2009-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
+
+\*---------------------------------------------------------------------------*/
+
+#include "abortCalculationFunctionObject.H"
+
+// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    defineNamedTemplateTypeNameAndDebug(abortCalculationFunctionObject, 0);
+
+    addToRunTimeSelectionTable
+    (
+        functionObject,
+        abortCalculationFunctionObject,
+        dictionary
+    );
+}
+
+// ************************************************************************* //
diff --git a/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculationFunctionObject.H b/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculationFunctionObject.H
new file mode 100644
index 0000000000000000000000000000000000000000..eadedcc29656c9f113445d75b10aafc3f3b8d480
--- /dev/null
+++ b/src/postProcessing/functionObjects/utilities/abortCalculation/abortCalculationFunctionObject.H
@@ -0,0 +1,55 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2009-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
+
+Typedef
+    Foam::abortCalculationFunctionObject
+
+Description
+    FunctionObject wrapper around abortCalculation to allow it to be created via
+    the functions entry within controlDict.
+
+SourceFiles
+    abortCalculationFunctionObject.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef abortCalculationFunctionObject_H
+#define abortCalculationFunctionObject_H
+
+#include "abortCalculation.H"
+#include "OutputFilterFunctionObject.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+    typedef OutputFilterFunctionObject<abortCalculation>
+        abortCalculationFunctionObject;
+}
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/postProcessing/functionObjects/utilities/dsmcFields/dsmcFieldsFunctionObject.H b/src/postProcessing/functionObjects/utilities/dsmcFields/dsmcFieldsFunctionObject.H
index 758626798c8563a706959d890368ba74f44e9dd3..a6b3db2e53078d4ebbd6b19c1ab36478b14dd304 100644
--- a/src/postProcessing/functionObjects/utilities/dsmcFields/dsmcFieldsFunctionObject.H
+++ b/src/postProcessing/functionObjects/utilities/dsmcFields/dsmcFieldsFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around dsmcFields to allow it to be created via
-    the functions list within controlDict.
+    the functions entry within controlDict.
 
 SourceFiles
     dsmcFieldsFunctionObject.C
diff --git a/src/postProcessing/functionObjects/utilities/staticPressure/staticPressureFunctionObject.H b/src/postProcessing/functionObjects/utilities/staticPressure/staticPressureFunctionObject.H
index 0ddb184d22edc949f28fb4cdcc79c02d1bfc3364..71c1049ef007b90e1fe7ede3e35406cdb181d265 100644
--- a/src/postProcessing/functionObjects/utilities/staticPressure/staticPressureFunctionObject.H
+++ b/src/postProcessing/functionObjects/utilities/staticPressure/staticPressureFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around staticPressure to allow it to be created via
-    the functions list within controlDict.
+    the functions entry within controlDict.
 
 SourceFiles
     staticPressureFunctionObject.C
diff --git a/src/sampling/include/mapPatch.H b/src/sampling/include/mapPatch.H
index aabec554a8d904fb599f71d3ca2e69acbf0ef540..371317a0ab2a5747a95817610ee5110e48de3556 100644
--- a/src/sampling/include/mapPatch.H
+++ b/src/sampling/include/mapPatch.H
@@ -1,8 +1,8 @@
-    if(planeMapping && targetPatchNamePresent && cut.cut())
+    if (planeMapping && targetPatchNamePresent && cut.cut())
     {
         //Map variables U, phi & k
-        //Info << typeInfo("isoLESmodel") << endl;
-        //Info << "SGS model" << sgsModel.type() << endl;
+        //Info<< typeInfo("isoLESmodel") << endl;
+        //Info<< "SGS model" << sgsModel.type() << endl;
 
         scalarField planek(cutCells.size());
         scalarField planeNuTilda(cutCells.size());
@@ -10,7 +10,7 @@
 
         forAll(cutCells, cCellsI)
         {
-            if(sgsModel.type() == "SpalartAllmaras")
+            if (sgsModel.type() == "SpalartAllmaras")
             {
                 planeNuTilda[cCellsI] = sgsModel.nuTilda()()[cutCells[cCellsI]];
             }
@@ -21,23 +21,23 @@
             planeU[cCellsI] = U[cutCells[cCellsI]];
         }
 
-        if(sgsModel.type() == "SpalartAllmaras")
+        if (sgsModel.type() == "SpalartAllmaras")
         {
-            Info << "Mapping NuTilda." << endl;
+            Info<< "Mapping NuTilda." << endl;
             sgsModel.nuTilda()().boundaryField()[targetPatchNumber] ==
             interPatch.faceInterpolate(planeNuTilda)();
         }
         else
         {
-            Info << "Mapping k." << endl;
+            Info<< "Mapping k." << endl;
             sgsModel.k()().boundaryField()[targetPatchNumber] ==
             interPatch.faceInterpolate(planek)();
         }
-        
+
         U.boundaryField()[targetPatchNumber] ==
             interPatch.faceInterpolate(planeU)();
 
-/*         sgsModel.k()().boundaryField()[targetPatchNumber] == 
+/*         sgsModel.k()().boundaryField()[targetPatchNumber] ==
          toPatchInter.pointToFaceInterpolate
          (
              interPatch.pointInterpolate
@@ -49,7 +49,7 @@
              )
          );
 
-         U.boundaryField()[targetPatchNumber] == 
+         U.boundaryField()[targetPatchNumber] ==
          toPatchInter.pointToFaceInterpolate
          (
              interPatch.pointInterpolate
@@ -62,7 +62,7 @@
          );
 
 */
-          
+
         scalar Q = sum
         (
             mesh.Sf().boundaryField()[targetPatchNumber]
@@ -74,11 +74,11 @@
             mesh.Sf().boundaryField()[targetPatchNumber] &
             Ubar.value()
         );
-                
+
         U.boundaryField()[targetPatchNumber] ==
             U.boundaryField()[targetPatchNumber] * (Qbar/Q);
-        
-        Info << "Mass flux correction factor: " << (Qbar/Q) << endl; 
+
+        Info<< "Mass flux correction factor: " << (Qbar/Q) << endl;
 
         phi.boundaryField()[targetPatchNumber] ==
         (
diff --git a/src/sampling/probes/probesFunctionObject.H b/src/sampling/probes/probesFunctionObject.H
index 63f52327c8a7d93e8c652c8d878311bae19930cb..9bedf137f21fd04c481bec0e795711faa07ae47d 100644
--- a/src/sampling/probes/probesFunctionObject.H
+++ b/src/sampling/probes/probesFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around probes to allow them to be created via the
-    functions list within controlDict.
+    functions entry within controlDict.
 
 SourceFiles
     probesFunctionObject.C
diff --git a/src/sampling/sampledSet/curve/curveSet.C b/src/sampling/sampledSet/curve/curveSet.C
index 7b0a0b8e0350641344626e3cf5692ec0c5155c74..b294ab360008372043b6c3482198d4919d226e51 100644
--- a/src/sampling/sampledSet/curve/curveSet.C
+++ b/src/sampling/sampledSet/curve/curveSet.C
@@ -60,7 +60,7 @@ bool Foam::curveSet::trackToBoundary
     // Alias
     const point& trackPt = singleParticle.position();
 
-    while(true)
+    while (true)
     {
         // Local geometry info
         const vector offset = sampleCoords_[sampleI+1] - sampleCoords_[sampleI];
@@ -145,7 +145,7 @@ void Foam::curveSet::calcSamples
             << sampleCoords_ << exit(FatalError);
     }
     point oldPoint = sampleCoords_[0];
-    for(label sampleI = 1; sampleI < sampleCoords_.size(); sampleI++)
+    for (label sampleI = 1; sampleI < sampleCoords_.size(); sampleI++)
     {
         if (mag(sampleCoords_[sampleI] - oldPoint) < SMALL)
         {
@@ -169,7 +169,7 @@ void Foam::curveSet::calcSamples
     label sampleI = 0;
 
     point lastSample(GREAT, GREAT, GREAT);
-    while(true)
+    while (true)
     {
         // Get boundary intersection
         point trackPt;
@@ -243,7 +243,7 @@ void Foam::curveSet::calcSamples
                 // No intersection found. Go to next point
                 sampleI++;
             }
-        } while((trackCellI == -1) && (sampleI < sampleCoords_.size() - 1));
+        } while ((trackCellI == -1) && (sampleI < sampleCoords_.size() - 1));
 
         if (sampleI == sampleCoords_.size() - 1)
         {
@@ -278,7 +278,7 @@ void Foam::curveSet::calcSamples
         );
 
         // fill sampleSegments
-        for(label i = samplingPts.size() - 1; i >= startSegmentI; --i)
+        for (label i = samplingPts.size() - 1; i >= startSegmentI; --i)
         {
             samplingSegments.append(segmentI);
         }
diff --git a/src/sampling/sampledSet/face/faceOnlySet.C b/src/sampling/sampledSet/face/faceOnlySet.C
index fba774f802159abdb6eb7f326b5981fa9284420f..e66d05884b5ddc59809d7a4d74536eb11505bd40 100644
--- a/src/sampling/sampledSet/face/faceOnlySet.C
+++ b/src/sampling/sampledSet/face/faceOnlySet.C
@@ -65,7 +65,7 @@ bool Foam::faceOnlySet::trackToBoundary
     // Alias
     const point& trackPt = singleParticle.position();
 
-    while(true)
+    while (true)
     {
         point oldPoint = trackPt;
 
@@ -199,7 +199,7 @@ void Foam::faceOnlySet::calcSamples
     // index in bHits; current boundary intersection
     label bHitI = 1;
 
-    while(true)
+    while (true)
     {
         if (trackFaceI != -1)
         {
@@ -230,7 +230,7 @@ void Foam::faceOnlySet::calcSamples
         );
 
         // fill sampleSegments
-        for(label i = samplingPts.size() - 1; i >= startSegmentI; --i)
+        for (label i = samplingPts.size() - 1; i >= startSegmentI; --i)
         {
             samplingSegments.append(segmentI);
         }
diff --git a/src/sampling/sampledSet/midPoint/midPointSet.C b/src/sampling/sampledSet/midPoint/midPointSet.C
index 0ec01f6571bc5e614b298d4c74f9408ad6b4c1a7..ffe75103426d13902535d360f17298e7c512b985 100644
--- a/src/sampling/sampledSet/midPoint/midPointSet.C
+++ b/src/sampling/sampledSet/midPoint/midPointSet.C
@@ -54,7 +54,7 @@ void Foam::midPointSet::genSamples()
 
     label sampleI = 0;
 
-    while(true)
+    while (true)
     {
         // calculate midpoint between sampleI and sampleI+1 (if in same segment)
         while
diff --git a/src/sampling/sampledSet/midPointAndFace/midPointAndFaceSet.C b/src/sampling/sampledSet/midPointAndFace/midPointAndFaceSet.C
index 7e110ef9018ea74f28d8eca539965cd0533c40ff..e5a2a9caea21fcaeff78013fb01c99a502f437ca 100644
--- a/src/sampling/sampledSet/midPointAndFace/midPointAndFaceSet.C
+++ b/src/sampling/sampledSet/midPointAndFace/midPointAndFaceSet.C
@@ -56,7 +56,7 @@ void Foam::midPointAndFaceSet::genSamples()
 
     label sampleI = 0;
 
-    while(true)
+    while (true)
     {
         // sampleI is start of segment
 
diff --git a/src/sampling/sampledSet/sampledSetsFunctionObject/sampledSetsFunctionObject.H b/src/sampling/sampledSet/sampledSetsFunctionObject/sampledSetsFunctionObject.H
index b2111ceb6154bc74077d2aca0992e2175f6291a6..c021bce3f68336217669413e10c053a19cad03ed 100644
--- a/src/sampling/sampledSet/sampledSetsFunctionObject/sampledSetsFunctionObject.H
+++ b/src/sampling/sampledSet/sampledSetsFunctionObject/sampledSetsFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around sets to allow them to be created via the
-    functions list within controlDict.
+    functions entry within controlDict.
 
 SourceFiles
     sampledSetsFunctionObject.C
diff --git a/src/sampling/sampledSet/uniform/uniformSet.C b/src/sampling/sampledSet/uniform/uniformSet.C
index 9b25ba42345fec8675b38487d194cf3d82286c00..ee293d6588ec8690993459ba0e4084bd5388973d 100644
--- a/src/sampling/sampledSet/uniform/uniformSet.C
+++ b/src/sampling/sampledSet/uniform/uniformSet.C
@@ -65,7 +65,7 @@ bool Foam::uniformSet::nextSample
     samplePt += offset;
     sampleI++;
 
-    for(; sampleI < nPoints_; sampleI++)
+    for (; sampleI < nPoints_; sampleI++)
     {
         scalar s = (samplePt - currentPt) & normOffset;
 
@@ -103,7 +103,7 @@ bool Foam::uniformSet::trackToBoundary
     // Alias
     const point& trackPt = singleParticle.position();
 
-    while(true)
+    while (true)
     {
         // Find next samplePt on/after trackPt. Update samplePt, sampleI
         if (!nextSample(trackPt, offset, smallDist, samplePt, sampleI))
@@ -305,7 +305,7 @@ void Foam::uniformSet::calcSamples
     // index in bHits; current boundary intersection
     label bHitI = 1;
 
-    while(true)
+    while (true)
     {
         // Initialize tracking starting from trackPt
         Cloud<passiveParticle> particles(mesh(), IDLList<passiveParticle>());
@@ -329,7 +329,7 @@ void Foam::uniformSet::calcSamples
         );
 
         // fill sampleSegments
-        for(label i = samplingPts.size() - 1; i >= startSegmentI; --i)
+        for (label i = samplingPts.size() - 1; i >= startSegmentI; --i)
         {
             samplingSegments.append(segmentI);
         }
diff --git a/src/sampling/sampledSurface/sampledSurfacesFunctionObject/sampledSurfacesFunctionObject.H b/src/sampling/sampledSurface/sampledSurfacesFunctionObject/sampledSurfacesFunctionObject.H
index 44229e414f1d7b8e33c73ae50bf9a34ebcf83618..8e318a6e9536991f28c4c16648762ba6e2709ec9 100644
--- a/src/sampling/sampledSurface/sampledSurfacesFunctionObject/sampledSurfacesFunctionObject.H
+++ b/src/sampling/sampledSurface/sampledSurfacesFunctionObject/sampledSurfacesFunctionObject.H
@@ -27,7 +27,7 @@ Typedef
 
 Description
     FunctionObject wrapper around surfaces to allow them to be created via the
-    functions list within controlDict.
+    functions entry within controlDict.
 
 SourceFiles
     sampledSurfacesFunctionObject.C
diff --git a/src/sampling/sampledSurface/writers/raw/rawSurfaceWriter.C b/src/sampling/sampledSurface/writers/raw/rawSurfaceWriter.C
index c916fe16c3c11d1892b805a9886be0840d0a4fe3..4ebdbb976b01bd122055e83671444190b666eede 100644
--- a/src/sampling/sampledSurface/writers/raw/rawSurfaceWriter.C
+++ b/src/sampling/sampledSurface/writers/raw/rawSurfaceWriter.C
@@ -192,7 +192,7 @@ void Foam::rawSurfaceWriter<Type>::writeData
 {
     // header
     os  << "#  xx  xy  xz  yy  yz ";
-    for(int i=0; i<6; i++)
+    for (int i=0; i<6; i++)
     {
         os << fieldName << "_" << i << "  ";
     }
diff --git a/src/surfMesh/MeshedSurface/MeshedSurface.H b/src/surfMesh/MeshedSurface/MeshedSurface.H
index ea7125fa833b780b6634b4ecd3b56854fccf26ff..459329bed3b87d3bb4c8eef4298943f5edddf78c 100644
--- a/src/surfMesh/MeshedSurface/MeshedSurface.H
+++ b/src/surfMesh/MeshedSurface/MeshedSurface.H
@@ -396,10 +396,10 @@ public:
             const labelHashSet& include
         ) const;
 
-        //- Transfer the contents of the argument and annull the argument
+        //- Transfer the contents of the argument and annul the argument
         void transfer(MeshedSurface<Face>&);
 
-        //- Transfer the contents of the argument and annull the argument
+        //- Transfer the contents of the argument and annul the argument
         void transfer(UnsortedMeshedSurface<Face>&);
 
         //- Transfer contents to the Xfer container
diff --git a/src/surfMesh/MeshedSurface/MeshedSurfaceZones.C b/src/surfMesh/MeshedSurface/MeshedSurfaceZones.C
index a31e8d6314ee75d921e8a340a04a0836b8596fc8..8e837e6f8572bffd61b4082b5abf012fe425b9d4 100644
--- a/src/surfMesh/MeshedSurface/MeshedSurfaceZones.C
+++ b/src/surfMesh/MeshedSurface/MeshedSurfaceZones.C
@@ -53,7 +53,7 @@ void Foam::MeshedSurface<Face>::checkZones()
                 << " ... extending final zone"
                 << endl;
 
-            zones[zones.size()-1].size() += count - this->size();
+            zones.last().size() += count - this->size();
         }
         else if (count > this->size())
         {
diff --git a/src/surfMesh/UnsortedMeshedSurface/UnsortedMeshedSurface.H b/src/surfMesh/UnsortedMeshedSurface/UnsortedMeshedSurface.H
index bb4fa01b379a3080bb8a75459a7eb569073ce6bc..7e16cc909dbd675735184554d4d2948cf0f25f17 100644
--- a/src/surfMesh/UnsortedMeshedSurface/UnsortedMeshedSurface.H
+++ b/src/surfMesh/UnsortedMeshedSurface/UnsortedMeshedSurface.H
@@ -334,10 +334,10 @@ public:
                 const Xfer< List<label> >& zoneIds
             );
 
-            //- Transfer the contents of the argument and annull the argument
+            //- Transfer the contents of the argument and annul the argument
             void transfer(UnsortedMeshedSurface<Face>&);
 
-            //- Transfer the contents of the argument and annull the argument
+            //- Transfer the contents of the argument and annul the argument
             void transfer(MeshedSurface<Face>&);
 
             //- Transfer contents to the Xfer container
diff --git a/src/surfMesh/surfMesh/surfMesh.C b/src/surfMesh/surfMesh/surfMesh.C
index 71f6fd82c463d81f3b92f72afd200d015fbeab10..686271da9af8bf43c34efd1d08a3e40738976147 100644
--- a/src/surfMesh/surfMesh/surfMesh.C
+++ b/src/surfMesh/surfMesh/surfMesh.C
@@ -377,7 +377,7 @@ void Foam::surfMesh::checkZones()
                 << " ... extending final zone"
                 << endl;
 
-            zones[zones.size()-1].size() += count - nFaces();
+            zones.last().size() += count - nFaces();
         }
         else if (count > size())
         {
diff --git a/src/surfMesh/surfMesh/surfMesh.H b/src/surfMesh/surfMesh/surfMesh.H
index 3215bfd345ae767a0a81d96a8128972f1bd40e98..48879918a0dca4dec76dcba5705d3c1e753dcfbd 100644
--- a/src/surfMesh/surfMesh/surfMesh.H
+++ b/src/surfMesh/surfMesh/surfMesh.H
@@ -257,7 +257,7 @@ public:
             );
 
 
-            //- Transfer the contents of the argument and annull the argument
+            //- Transfer the contents of the argument and annul the argument
             void transfer(MeshedSurface<face>&);
 
 
diff --git a/src/surfMesh/surfMesh/surfMeshIO.C b/src/surfMesh/surfMesh/surfMeshIO.C
index c74b1c693eb5ae9fae13f00ca9948801da540707..ca2d840d072bba27dded473d547622421ca08116 100644
--- a/src/surfMesh/surfMesh/surfMeshIO.C
+++ b/src/surfMesh/surfMesh/surfMeshIO.C
@@ -75,7 +75,7 @@ Foam::surfMesh::readUpdateState Foam::surfMesh::readUpdate()
         // Topological change
         if (debug)
         {
-            Info << "Topological change" << endl;
+            Info<< "Topological change" << endl;
         }
 
         clearOut();
@@ -169,7 +169,7 @@ Foam::surfMesh::readUpdateState Foam::surfMesh::readUpdate()
         // Points moved
         if (debug)
         {
-            Info << "Point motion" << endl;
+            Info<< "Point motion" << endl;
         }
 
         clearGeom();
@@ -195,7 +195,7 @@ Foam::surfMesh::readUpdateState Foam::surfMesh::readUpdate()
     {
         if (debug)
         {
-            Info << "No change" << endl;
+            Info<< "No change" << endl;
         }
     }
 
diff --git a/src/thermophysicalModels/chemistryModel/chemistryModel/ODEChemistryModel/ODEChemistryModel.C b/src/thermophysicalModels/chemistryModel/chemistryModel/ODEChemistryModel/ODEChemistryModel.C
index 7153826609d66271404f693e633450c9cc2ca06c..3e204e65b1dea330e3840ebc99c12d172c9e1ddb 100644
--- a/src/thermophysicalModels/chemistryModel/chemistryModel/ODEChemistryModel/ODEChemistryModel.C
+++ b/src/thermophysicalModels/chemistryModel/chemistryModel/ODEChemistryModel/ODEChemistryModel.C
@@ -707,7 +707,7 @@ Foam::scalar Foam::ODEChemistryModel<CompType, ThermoType>::solve
         // calculate the chemical source terms
         scalar cTot = 0.0;
 
-        while(timeLeft > SMALL)
+        while (timeLeft > SMALL)
         {
             tauC = solver().solve(c, Ti, pi, t, dt);
             t += dt;
diff --git a/src/thermophysicalModels/pdfs/RosinRammler/RosinRammler.C b/src/thermophysicalModels/pdfs/RosinRammler/RosinRammler.C
index f157c2645f6cda4aea9f2901e255ac3c9193078b..becfd94db21e0b202d4a937617f0457641dc2d11 100644
--- a/src/thermophysicalModels/pdfs/RosinRammler/RosinRammler.C
+++ b/src/thermophysicalModels/pdfs/RosinRammler/RosinRammler.C
@@ -118,7 +118,7 @@ Foam::scalar Foam::RosinRammler::sample() const
             scalar xx = pow(x/d_[i], n_[i]);
             p += ls_[i]*xx*exp(-xx);
         }
-    } while(y>p);
+    } while (y>p);
 
     return x;
 }
diff --git a/src/thermophysicalModels/pdfs/exponential/exponential.C b/src/thermophysicalModels/pdfs/exponential/exponential.C
index 6ebe918fe892ea464091365e82ee57bc57618952..8498c2c9e2a234475ffbdb318d98f12f79443818 100644
--- a/src/thermophysicalModels/pdfs/exponential/exponential.C
+++ b/src/thermophysicalModels/pdfs/exponential/exponential.C
@@ -105,7 +105,7 @@ Foam::scalar Foam::exponential::sample() const
         {
             p += ls_[i]*exp(-lambda_[i]*x);
         }
-    } while(p>y);
+    } while (p>y);
 
     return x;
 }
diff --git a/src/thermophysicalModels/pdfs/general/general.C b/src/thermophysicalModels/pdfs/general/general.C
index 59b1a75953f14b344856ea8ec2b27ae4ec931e34..33d3e3f57d4cd5a7708ecb8e9a8a397a08882c89 100644
--- a/src/thermophysicalModels/pdfs/general/general.C
+++ b/src/thermophysicalModels/pdfs/general/general.C
@@ -96,7 +96,7 @@ Foam::scalar Foam::general::sample() const
           + (x - xy_[i][0])
            *(xy_[i+1][1] - xy_[i][1])
            /(xy_[i+1][0] - xy_[i][0]);
-    } while(p>y);
+    } while (p>y);
 
     return x;
 }
diff --git a/src/thermophysicalModels/radiation/radiationModel/fvDOM/fvDOM/fvDOM.C b/src/thermophysicalModels/radiation/radiationModel/fvDOM/fvDOM/fvDOM.C
index d57b13866abe422a195317116896fe86512b86a6..7821fb7d58034eaa6869694f05c72fe673600759 100644
--- a/src/thermophysicalModels/radiation/radiationModel/fvDOM/fvDOM/fvDOM.C
+++ b/src/thermophysicalModels/radiation/radiationModel/fvDOM/fvDOM/fvDOM.C
@@ -307,9 +307,9 @@ void Foam::radiation::fvDOM::calculate()
             maxResidual = max(maxBandResidual, maxResidual);
         }
 
-        Info << "Radiation solver iter: " << radIter << endl;
+        Info<< "Radiation solver iter: " << radIter << endl;
 
-    } while(maxResidual > convergence_ && radIter < maxIter_);
+    } while (maxResidual > convergence_ && radIter < maxIter_);
 
     updateG();
 }
diff --git a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C
index a6841241225ab9ced70ca0466d3c6fcb0d34347a..9302e1665947a3e8147f9649839e70232d671b49 100644
--- a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C
+++ b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C
@@ -813,7 +813,7 @@ void Foam::chemkinReader::read
         yy_buffer_state* bufferPtr(yy_create_buffer(&thermoStream, yyBufSize));
         yy_switch_to_buffer(bufferPtr);
 
-        while(lex() != 0)
+        while (lex() != 0)
         {}
 
         yy_delete_buffer(bufferPtr);
@@ -838,7 +838,7 @@ void Foam::chemkinReader::read
 
     initReactionKeywordTable();
 
-    while(lex() != 0)
+    while (lex() != 0)
     {}
 
     yy_delete_buffer(bufferPtr);
diff --git a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.H b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.H
index de679103806b55e96a6a8a9faad1edd41bca973a..0afbc9a457d7fed92793fe1cd4d88db35c87b664 100644
--- a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.H
+++ b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.H
@@ -234,7 +234,7 @@ private:
             {
                 elementName[1] = tolower(elementName[1]);
             }
-            else if(elementName[0] == 'E')
+            else if (elementName[0] == 'E')
             {
                 elementName = 'e';
             }
diff --git a/src/topoChangerFvMesh/linearValveFvMesh/linearValveFvMesh.C b/src/topoChangerFvMesh/linearValveFvMesh/linearValveFvMesh.C
index 3953db92fea4257197488e55fde383070acb4aa8..d90a7ad0a43fd729e5e18416d21fc35f5c1124bc 100644
--- a/src/topoChangerFvMesh/linearValveFvMesh/linearValveFvMesh.C
+++ b/src/topoChangerFvMesh/linearValveFvMesh/linearValveFvMesh.C
@@ -137,11 +137,11 @@ void Foam::linearValveFvMesh::addZonesAndModifiers()
 
     List<cellZone*> cz(0);
 
-    Info << "Adding point, face and cell zones" << endl;
+    Info<< "Adding point, face and cell zones" << endl;
     addZones(pz, fz, cz);
 
     // Add a topology modifier
-    Info << "Adding topology modifiers" << endl;
+    Info<< "Adding topology modifiers" << endl;
     topoChanger_.setSize(1);
     topoChanger_.set
     (
@@ -249,11 +249,11 @@ bool Foam::linearValveFvMesh::attached() const
 
     if (result)
     {
-        Info << "linearValveFvMesh: attached!" << endl;
+        Info<< "linearValveFvMesh: attached!" << endl;
     }
     else
     {
-        Info << "linearValveFvMesh: detached!" << endl;
+        Info<< "linearValveFvMesh: detached!" << endl;
     }
 
     return result;
@@ -299,7 +299,7 @@ void Foam::linearValveFvMesh::update()
     // Detaching the interface
     if (attached())
     {
-        Info << "Decoupling sliding interfaces" << endl;
+        Info<< "Decoupling sliding interfaces" << endl;
         makeSlidersLive();
 
         // Changing topology by hand
@@ -311,7 +311,7 @@ void Foam::linearValveFvMesh::update()
     }
     else
     {
-        Info << "Sliding interfaces decoupled" << endl;
+        Info<< "Sliding interfaces decoupled" << endl;
     }
 
     // Perform mesh motion
@@ -328,7 +328,7 @@ void Foam::linearValveFvMesh::update()
     {
         if (topoChangeMap().hasMotionPoints())
         {
-            Info << "Topology change; executing pre-motion" << endl;
+            Info<< "Topology change; executing pre-motion" << endl;
             movePoints(topoChangeMap().preMotionPoints());
         }
     }
@@ -339,17 +339,17 @@ void Foam::linearValveFvMesh::update()
     movePoints(msPtr_->curPoints());
 
     // Attach the interface
-    Info << "Coupling sliding interfaces" << endl;
+    Info<< "Coupling sliding interfaces" << endl;
     makeSlidersLive();
     resetMorph();
     setMorphTimeIndex(3*time().timeIndex() + 2);
     updateMesh();
 
-    Info << "Moving points post slider attach" << endl;
+    Info<< "Moving points post slider attach" << endl;
 
     msPtr_->updateMesh();
 
-    Info << "Sliding interfaces coupled: " << attached() << endl;
+    Info<< "Sliding interfaces coupled: " << attached() << endl;
 }
 
 
diff --git a/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C b/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C
index 8b5ca8a90d2e3b069c3a31d85e06b03c978b4cde..46119de94487c1389d56f7c1957a90ce88f171e8 100644
--- a/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C
+++ b/src/topoChangerFvMesh/linearValveLayersFvMesh/linearValveLayersFvMesh.C
@@ -164,7 +164,7 @@ void Foam::linearValveLayersFvMesh::addZonesAndModifiers()
     );
 
 
-    Info << "Adding point and face zones" << endl;
+    Info<< "Adding point and face zones" << endl;
     addZones(pz, fz, cz);
 
     // Add a topology modifier
@@ -204,7 +204,7 @@ void Foam::linearValveLayersFvMesh::addZonesAndModifiers()
         );
 
 
-    Info << "Adding topology modifiers" << endl;
+    Info<< "Adding topology modifiers" << endl;
     addTopologyModifiers(tm);
 
     // Write mesh
@@ -375,7 +375,7 @@ void Foam::linearValveLayersFvMesh::update()
     // Detaching the interface
     if (attached())
     {
-        Info << "Decoupling sliding interfaces" << endl;
+        Info<< "Decoupling sliding interfaces" << endl;
         makeSlidersLive();
 
         // Changing topology
@@ -385,7 +385,7 @@ void Foam::linearValveLayersFvMesh::update()
     }
     else
     {
-        Info << "Sliding interfaces decoupled" << endl;
+        Info<< "Sliding interfaces decoupled" << endl;
     }
 
     // Perform layer action and mesh motion
@@ -400,7 +400,7 @@ void Foam::linearValveLayersFvMesh::update()
     {
         if (topoChangeMap().hasMotionPoints())
         {
-            Info << "Topology change; executing pre-motion" << endl;
+            Info<< "Topology change; executing pre-motion" << endl;
             movePoints(topoChangeMap().preMotionPoints());
         }
     }
@@ -409,7 +409,7 @@ void Foam::linearValveLayersFvMesh::update()
     movePoints(newPoints());
 
     // Attach the interface
-    Info << "Coupling sliding interfaces" << endl;
+    Info<< "Coupling sliding interfaces" << endl;
     makeSlidersLive();
 
     // Changing topology
@@ -417,11 +417,11 @@ void Foam::linearValveLayersFvMesh::update()
     setMorphTimeIndex(3*time().timeIndex() + 2);
     updateMesh();
 
-    Info << "Moving points post slider attach" << endl;
+    Info<< "Moving points post slider attach" << endl;
 //     const pointField p = allPoints();
 //     movePoints(p);
 
-    Info << "Sliding interfaces coupled: " << attached() << endl;
+    Info<< "Sliding interfaces coupled: " << attached() << endl;
 }
 
 
diff --git a/src/topoChangerFvMesh/mixerFvMesh/mixerFvMesh.C b/src/topoChangerFvMesh/mixerFvMesh/mixerFvMesh.C
index a080a156a53c481a68068e50a9fc8cba61ce861d..33d8cffd8d7e75fe36d8162fe62464d4264d3b17 100644
--- a/src/topoChangerFvMesh/mixerFvMesh/mixerFvMesh.C
+++ b/src/topoChangerFvMesh/mixerFvMesh/mixerFvMesh.C
@@ -156,7 +156,7 @@ void Foam::mixerFvMesh::addZonesAndModifiers()
     }
 
     movingCells.setSize(nMovingCells);
-    Info << "Number of cells in the moving region: " << nMovingCells << endl;
+    Info<< "Number of cells in the moving region: " << nMovingCells << endl;
 
     cz[0] = new cellZone
     (
@@ -166,11 +166,11 @@ void Foam::mixerFvMesh::addZonesAndModifiers()
         cellZones()
     );
 
-    Info << "Adding point, face and cell zones" << endl;
+    Info<< "Adding point, face and cell zones" << endl;
     addZones(pz, fz, cz);
 
     // Add a topology modifier
-    Info << "Adding topology modifiers" << endl;
+    Info<< "Adding topology modifiers" << endl;
     topoChanger_.setSize(1);
     topoChanger_.set
     (
@@ -361,7 +361,7 @@ bool Foam::mixerFvMesh::update()
     {
         if (debug)
         {
-            Info << "Mesh topology is changing" << endl;
+            Info<< "Mesh topology is changing" << endl;
         }
 
         deleteDemandDrivenData(movingPointsMaskPtr_);
diff --git a/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C b/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C
index 959c4540a56fa64eb039bee701b72701343ac570..5e4a1bbde241d8f3fd86af8d183e18dfca07a30f 100644
--- a/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C
+++ b/src/topoChangerFvMesh/movingConeTopoFvMesh/movingConeTopoFvMesh.C
@@ -146,7 +146,7 @@ void Foam::movingConeTopoFvMesh::addZonesAndModifiers()
                 flipZone2[nZoneFaces2] = true;
             }
 
-            Info << "face " << faceI << " for zone 2.  Flip: "
+            Info<< "face " << faceI << " for zone 2.  Flip: "
                 << flipZone2[nZoneFaces2] << endl;
             nZoneFaces2++;
         }
@@ -158,8 +158,8 @@ void Foam::movingConeTopoFvMesh::addZonesAndModifiers()
     zone2.setSize(nZoneFaces2);
     flipZone2.setSize(nZoneFaces2);
 
-    Info << "zone: " << zone1 << endl;
-    Info << "zone: " << zone2 << endl;
+    Info<< "zone: " << zone1 << endl;
+    Info<< "zone: " << zone2 << endl;
 
     List<pointZone*> pz(0);
     List<faceZone*> fz(2);
@@ -191,7 +191,7 @@ void Foam::movingConeTopoFvMesh::addZonesAndModifiers()
 
     fz.setSize(nFz);
 
-    Info << "Adding mesh zones." << endl;
+    Info<< "Adding mesh zones." << endl;
     addZones(pz, fz, cz);
 
 
@@ -236,7 +236,7 @@ void Foam::movingConeTopoFvMesh::addZonesAndModifiers()
     nMods++;
     tm.setSize(nMods);
 
-    Info << "Adding " << nMods << " mesh modifiers" << endl;
+    Info<< "Adding " << nMods << " mesh modifiers" << endl;
     topoChanger_.addTopologyModifiers(tm);
 
     write();
@@ -334,11 +334,11 @@ bool Foam::movingConeTopoFvMesh::update()
 
     if (topoChangeMap.valid())
     {
-        Info << "Topology change. Calculating motion points" << endl;
+        Info<< "Topology change. Calculating motion points" << endl;
 
         if (topoChangeMap().hasMotionPoints())
         {
-            Info << "Topology change. Has premotion points" << endl;
+            Info<< "Topology change. Has premotion points" << endl;
             //Info<< "preMotionPoints:" << topoChangeMap().preMotionPoints()
             //    << endl;
 
@@ -390,7 +390,7 @@ bool Foam::movingConeTopoFvMesh::update()
         }
         else
         {
-            Info << "Topology change. Already set mesh points" << endl;
+            Info<< "Topology change. Already set mesh points" << endl;
 
             motionMask_ =
                 vertexMarkup
@@ -424,7 +424,7 @@ bool Foam::movingConeTopoFvMesh::update()
     }
     else
     {
-        Info << "No topology change" << endl;
+        Info<< "No topology change" << endl;
         // Set the mesh motion
         newPoints =
             points()
@@ -466,7 +466,7 @@ bool Foam::movingConeTopoFvMesh::update()
 
     // The mesh now contains the cells with zero volume
 
-    Info << "Executing mesh motion" << endl;
+    Info<< "Executing mesh motion" << endl;
     movePoints(newPoints);
 
     //  The mesh now has got non-zero volume cells
diff --git a/src/triSurface/triSurface/interfaces/OBJ/readOBJ.C b/src/triSurface/triSurface/interfaces/OBJ/readOBJ.C
index 20c3d9cc65d4ebda88b31578e000283efac832c0..d98a504bc4c2bd8e3ae3f467fb2c6946408a7bdb 100644
--- a/src/triSurface/triSurface/interfaces/OBJ/readOBJ.C
+++ b/src/triSurface/triSurface/interfaces/OBJ/readOBJ.C
@@ -107,7 +107,7 @@ bool triSurface::readOBJ(const fileName& OBJfileName)
             // Assume 'f' is followed by space.
             string::size_type endNum = 1;
 
-            while(true)
+            while (true)
             {
                 string::size_type startNum =
                     line.find_first_not_of(' ', endNum);
diff --git a/src/triSurface/triSurface/interfaces/STL/readSTLASCII.L b/src/triSurface/triSurface/interfaces/STL/readSTLASCII.L
index 208aa13d1619dc85175233845aa14dbd46a85eed..2d04d3640757359bd2514d7c93a6f475323ce17a 100644
--- a/src/triSurface/triSurface/interfaces/STL/readSTLASCII.L
+++ b/src/triSurface/triSurface/interfaces/STL/readSTLASCII.L
@@ -399,7 +399,7 @@ bool triSurface::readSTLASCII(const fileName& STLfileName)
     // Create the lexer obtaining the approximate number of vertices in the STL
     // from the file size
     STLLexer lexer(&STLstream.stdStream(), Foam::fileSize(STLfileName)/400);
-    while(lexer.lex() != 0)
+    while (lexer.lex() != 0)
     {}
 
     DynamicList<STLpoint>& STLpoints = lexer.STLpoints();
diff --git a/src/triSurface/triSurface/interfaces/TRI/readTRI.C b/src/triSurface/triSurface/interfaces/TRI/readTRI.C
index c0452e46aafe3e058e0f30f8dede8a28c3e1170f..d0dc0b3c314db2fab3277dee08bf46a15dd89d80 100644
--- a/src/triSurface/triSurface/interfaces/TRI/readTRI.C
+++ b/src/triSurface/triSurface/interfaces/TRI/readTRI.C
@@ -63,7 +63,7 @@ bool triSurface::readTRI(const fileName& TRIfileName)
     // Max region number so far
     label maxRegion = 0;
 
-    while(TRIfile)
+    while (TRIfile)
     {
         string line = getLineNoComment(TRIfile);
 
diff --git a/src/triSurface/triSurface/triSurface.C b/src/triSurface/triSurface/triSurface.C
index 83674b6b90bde4aeeafd3eb48f0af4550e6b5861..96ca3d78a363a59d1e18cc5aa600e9c929f17317 100644
--- a/src/triSurface/triSurface/triSurface.C
+++ b/src/triSurface/triSurface/triSurface.C
@@ -838,7 +838,7 @@ void Foam::triSurface::markZone
     // List of faces whose faceZone has been set.
     labelList changedFaces(1, faceI);
 
-    while(true)
+    while (true)
     {
         // Pick up neighbours of changedFaces
         DynamicList<label> newChangedFaces(2*changedFaces.size());
diff --git a/src/triSurface/triSurface/triSurfaceAddressing.C b/src/triSurface/triSurface/triSurfaceAddressing.C
index ce2e5608f47e413b4af1d82968af72769767b839..14a383c9fc3507d5226e6cb4b7dc728908667f3e 100644
--- a/src/triSurface/triSurface/triSurfaceAddressing.C
+++ b/src/triSurface/triSurface/triSurfaceAddressing.C
@@ -91,7 +91,7 @@ void triSurface::calcSortedEdgeFaces() const
             // e0 is reference so angle is 0
             faceAngles[0] = 0;
 
-            for(label nbI = 1; nbI < myFaceNbs.size(); nbI++)
+            for (label nbI = 1; nbI < myFaceNbs.size(); nbI++)
             {
                 // Get opposite vertex
                 const labelledTri& f = localFaces()[myFaceNbs[nbI]];
diff --git a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutURoughWallFunction/nutURoughWallFunctionFvPatchScalarField.C b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutURoughWallFunction/nutURoughWallFunctionFvPatchScalarField.C
index c202ac479c8e3c71f3a9d2fb744cd853e6e4975e..a857b587e30ddcd462560efc8fa1bc9774e8ae41 100644
--- a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutURoughWallFunction/nutURoughWallFunctionFvPatchScalarField.C
+++ b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutURoughWallFunction/nutURoughWallFunctionFvPatchScalarField.C
@@ -186,7 +186,7 @@ tmp<scalarField> nutURoughWallFunctionFvPatchScalarField::calcYPlus
                 yPlusLast = yp;
                 yp = (kappaRe + yp)/(1.0 + log(E_*yp));
 
-            } while(mag(ryPlusLam*(yp - yPlusLast)) > 0.0001 && ++iter < 10);
+            } while (mag(ryPlusLam*(yp - yPlusLast)) > 0.0001 && ++iter < 10);
 
             yPlus[facei] = max(0.0, yp);
         }
diff --git a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUWallFunction/nutUWallFunctionFvPatchScalarField.C b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUWallFunction/nutUWallFunctionFvPatchScalarField.C
index bccc07672ff826a4f6d5a84e5748d2133e5a7e23..ba5f0e79c5a473e4b976ca5da1e6689afb848166 100644
--- a/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUWallFunction/nutUWallFunctionFvPatchScalarField.C
+++ b/src/turbulenceModels/incompressible/RAS/derivedFvPatchFields/wallFunctions/nutWallFunctions/nutUWallFunction/nutUWallFunctionFvPatchScalarField.C
@@ -98,7 +98,7 @@ tmp<scalarField> nutUWallFunctionFvPatchScalarField::calcYPlus
             yPlusLast = yp;
             yp = (kappaRe + yp)/(1.0 + log(E_*yp));
 
-        } while(mag(ryPlusLam*(yp - yPlusLast)) > 0.01 && ++iter < 10 );
+        } while (mag(ryPlusLam*(yp - yPlusLast)) > 0.01 && ++iter < 10 );
 
         yPlus[facei] = max(0.0, yp);
     }
diff --git a/tutorials/basic/potentialFoam/cylinder/analyticalCylinder/analyticalCylinder.C b/tutorials/basic/potentialFoam/cylinder/analyticalCylinder/analyticalCylinder.C
index 5c3b671271f41f36e8c0091c32a7a2e8d88efc3c..044a9fb6096699e6758bf35e6ee9b8179d7068b5 100644
--- a/tutorials/basic/potentialFoam/cylinder/analyticalCylinder/analyticalCylinder.C
+++ b/tutorials/basic/potentialFoam/cylinder/analyticalCylinder/analyticalCylinder.C
@@ -26,7 +26,7 @@ Application
     analyticalCylinder
 
 Description
-    Generates an analytical solution for potential flow around a cylinder.  
+    Generates an analytical solution for potential flow around a cylinder.
     Can be compared with the solution from the potentialFlow/cylinder example.
 
 \*---------------------------------------------------------------------------*/
@@ -47,19 +47,19 @@ int main(int argc, char *argv[])
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-    Info << "\nEvaluating analytical solution" << endl;
+    Info<< "\nEvaluating analytical solution" << endl;
 
     volVectorField centres = UA.mesh().C();
     volScalarField magCentres = mag(centres);
     volScalarField theta = acos((centres & vector(1,0,0))/magCentres);
 
     volVectorField cs2theta =
-        cos(2*theta)*vector(1,0,0) 
+        cos(2*theta)*vector(1,0,0)
       + sin(2*theta)*vector(0,1,0);
 
     UA = uInfX*(dimensionedVector(vector(1,0,0))
       - pow((radius/magCentres),2)*cs2theta);
-    
+
     runTime.write();
 
     Info<< "end" << endl;
diff --git a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/datToFoam/datToFoam.C b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/datToFoam/datToFoam.C
index 09c2a247f316e18bd37a76dd1b0507eaba1a66eb..c4f266376a9ce43f16b78d600347191223a0873b 100644
--- a/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/datToFoam/datToFoam.C
+++ b/tutorials/compressible/rhoCentralFoam/biconic25-55Run35/datToFoam/datToFoam.C
@@ -106,7 +106,7 @@ int main(int argc, char *argv[])
                 plot3dFile >> coord;
 
                 // if statement ignores the first layer in i and j
-                if(i>0 && j>0)
+                if (i>0 && j>0)
                 {
                     points[p++][comp] = coord;
                 }
@@ -117,7 +117,7 @@ int main(int argc, char *argv[])
     // correct error in biconic meshes
     forAll(points, i)
     {
-        if(points[i][1] < 1e-07)
+        if (points[i][1] < 1e-07)
         {
             points[i][1] = 0.0;
         }
@@ -143,11 +143,11 @@ int main(int argc, char *argv[])
         pointsWedge[i+nPointsij] = cmptMultiply(vector(1.0, 1.0, -1.0), pointsWedge[i]);
     }
 
-    Info << "Writing points to: " << nl
+    Info<< "Writing points to: " << nl
          << "    " << pointsFile << endl;
     pFile << pointsWedge;
 
-    Info << "End" << endl;
+    Info<< "End" << endl;
 
     return 0;
 }
diff --git a/tutorials/incompressible/MRFSimpleFoam/MRFSimpleFoam/createFields.H b/tutorials/incompressible/MRFSimpleFoam/MRFSimpleFoam/createFields.H
index 43242a6e377c03d6c71f0ee37612f82a3fa42435..869a5899ccb89c9cdb961916c95be4d2953b9bae 100644
--- a/tutorials/incompressible/MRFSimpleFoam/MRFSimpleFoam/createFields.H
+++ b/tutorials/incompressible/MRFSimpleFoam/MRFSimpleFoam/createFields.H
@@ -1,4 +1,4 @@
-    Info << "Reading field p\n" << endl;
+    Info<< "Reading field p\n" << endl;
     volScalarField p
     (
         IOobject
@@ -12,7 +12,7 @@
         mesh
     );
 
-    Info << "Reading field U\n" << endl;
+    Info<< "Reading field U\n" << endl;
     volVectorField U
     (
         IOobject
diff --git a/tutorials/incompressible/simpleSRFFoam/simpleSRFFoam/createFields.H b/tutorials/incompressible/simpleSRFFoam/simpleSRFFoam/createFields.H
index 3e4e11ae301c2acc68e501410d870b8e1bf1b989..a5d68368ea58b18ffa8498337c4dd1b58f508aef 100644
--- a/tutorials/incompressible/simpleSRFFoam/simpleSRFFoam/createFields.H
+++ b/tutorials/incompressible/simpleSRFFoam/simpleSRFFoam/createFields.H
@@ -1,4 +1,4 @@
-    Info << "Reading field p\n" << endl;
+    Info<< "Reading field p\n" << endl;
     volScalarField p
     (
         IOobject
diff --git a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/gen6DoF/gen6DoF.C b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/gen6DoF/gen6DoF.C
index a90c715389afce5e50786885c3d39af2c7d8ec8c..e46d0fd053aac9bdda300f8943048119373e0e71 100644
--- a/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/gen6DoF/gen6DoF.C
+++ b/tutorials/multiphase/interDyMFoam/ras/sloshingTank3D6DoF/gen6DoF/gen6DoF.C
@@ -88,7 +88,7 @@ int main(int argc, char *argv[])
         dataFile << timeValues << endl;
     }
 
-    Info << "End\n" << endl;
+    Info<< "End\n" << endl;
 
     return 0;
 }
diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/MRFInterFoam/pEqn.H b/tutorials/multiphase/interFoam/MRFInterFoam/MRFInterFoam/pEqn.H
index 5a67dd0497b150c4a46f62f306afdf814cfe17aa..cab105511b203935eea4c905ecb1f175e8730e39 100644
--- a/tutorials/multiphase/interFoam/MRFInterFoam/MRFInterFoam/pEqn.H
+++ b/tutorials/multiphase/interFoam/MRFInterFoam/MRFInterFoam/pEqn.H
@@ -19,7 +19,7 @@
         )*rUAf;
     adjustPhi(phi, U, p);
 
-    for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
+    for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
     {
         fvScalarMatrix pEqn
         (