From 1a806fa28d9ad99eb5ea55edae5a13d3340913cb Mon Sep 17 00:00:00 2001
From: Henry <Henry>
Date: Wed, 4 Feb 2015 22:08:27 +0000
Subject: [PATCH] Add support for reading and updating the debug switches of
 templated classes in the DebugSwitches sub-dictionary of system/controlDict

---
 src/OpenFOAM/db/typeInfo/debugName.H          |  48 +++++-
 .../thermalBaffle1DFvPatchScalarFields.C      |  42 +++---
 .../makeTurbulenceModel.H                     |   6 +-
 .../turbulenceModels/makeTurbulenceModel.H    |   7 +-
 src/combustionModels/FSD/FSDs.C               | 138 ++++++++---------
 src/combustionModels/PaSR/PaSRs.C             |  12 +-
 .../combustionModel/makeCombustionTypes.H     |  90 ++++++-----
 src/combustionModels/diffusion/diffusions.C   | 140 +++++++++--------
 .../infinitelyFastChemistrys.C                | 142 +++++++++---------
 src/combustionModels/laminar/laminars.C       |  12 +-
 .../noCombustion/noCombustions.C              |  34 ++---
 .../boundedConvectionSchemes.C                |  10 +-
 .../convectionScheme/convectionScheme.H       |  30 ++--
 .../gaussConvectionSchemes.C                  |  20 +--
 .../multivariateGaussConvectionSchemes.C      |  10 +-
 .../EulerD2dt2Scheme/EulerD2dt2Schemes.C      |  10 +-
 .../d2dt2Schemes/d2dt2Scheme/d2dt2Scheme.H    |  16 +-
 .../steadyStateD2dt2Schemes.C                 |  10 +-
 .../CoEulerDdtScheme/CoEulerDdtSchemes.C      |  10 +-
 .../CrankNicolsonDdtSchemes.C                 |  10 +-
 .../EulerDdtScheme/EulerDdtSchemes.C          |  10 +-
 .../ddtSchemes/SLTSDdtScheme/SLTSDdtSchemes.C |  10 +-
 .../backwardDdtScheme/backwardDdtSchemes.C    |  10 +-
 .../boundedDdtScheme/boundedDdtSchemes.C      |  10 +-
 .../ddtSchemes/ddtScheme/ddtScheme.H          |  24 ++-
 .../localEulerDdtSchemes.C                    |  10 +-
 .../steadyStateDdtSchemes.C                   |  10 +-
 .../divSchemes/divScheme/divScheme.H          |  16 +-
 .../gaussDivScheme/gaussDivSchemes.C          |  10 +-
 .../LeastSquaresGrad/LeastSquaresGrad.H       |  49 +++---
 .../LeastSquaresGrad/LeastSquaresGrads.C      |  42 +++---
 .../gradSchemes/fourthGrad/fourthGrads.C      |  12 +-
 .../gradSchemes/gaussGrad/gaussGrads.C        |  10 +-
 .../gradSchemes/gradScheme/gradScheme.H       |  15 +-
 .../leastSquaresGrad/leastSquaresGrads.C      |  10 +-
 .../cellLimitedGrad/cellLimitedGrads.C        |  10 +-
 .../cellMDLimitedGrad/cellMDLimitedGrads.C    |  11 +-
 .../faceLimitedGrad/faceLimitedGrads.C        |  11 +-
 .../faceMDLimitedGrad/faceMDLimitedGrads.C    |  10 +-
 .../gaussLaplacianSchemes.C                   |  10 +-
 .../laplacianScheme/laplacianScheme.H         |  19 ++-
 .../CentredFitSnGrad/CentredFitSnGradScheme.H |  45 +++---
 .../correctedSnGrad/correctedSnGrads.C        |  11 +-
 .../faceCorrectedSnGrads.C                    |  10 +-
 .../limitedSnGrad/limitedSnGrads.C            |  10 +-
 .../linearFitSnGrad/linearFitSnGrads.C        |  19 +--
 .../orthogonalSnGrad/orthogonalSnGrads.C      |  10 +-
 .../quadraticFitSnGrad/quadraticFitSnGrads.C  |  20 ++-
 .../snGradSchemes/snGradScheme/snGradScheme.H |  15 +-
 .../uncorrectedSnGrad/uncorrectedSnGrads.C    |  10 +-
 .../explicitSetValue/explicitSetValue.C       |  18 +--
 src/fvOptions/fvOptions/makeFvOption.H        |   7 +-
 .../sources/general/codedSource/codedSource.C |  18 +--
 .../semiImplicitSource/semiImplicitSource.C   |  18 +--
 .../makeParcelTurbulenceDispersionModels.H    |   4 +-
 ...keBasicKinematicCollidingParcelSubmodels.C |  25 ++-
 .../makeBasicKinematicMPPICParcelSubmodels.C  |  32 ++--
 .../makeBasicKinematicParcelSubmodels.C       |  23 ++-
 ...keBasicReactingMultiphaseParcelSubmodels.C |  69 ++++-----
 .../makeBasicReactingParcelSubmodels.C        |  37 +++--
 .../makeBasicThermoParcelSubmodels.C          |  29 ++--
 .../include/makeMPPICParcelDampingModels.H    |  10 +-
 .../include/makeMPPICParcelIsotropyModels.H   |   9 +-
 .../include/makeMPPICParcelPackingModels.H    |  11 +-
 .../makeParcelStochasticCollisionModels.H     |   4 +-
 .../CloudFunctionObject/CloudFunctionObject.H |  49 +++---
 .../CollisionModel/CollisionModel.H           |  27 ++--
 .../PairModel/PairModel/PairModel.H           |  22 +--
 .../WallModel/WallModel/WallModel.H           |  24 +--
 .../DispersionModel/DispersionModel.H         |  30 ++--
 .../InjectionModel/InjectionModel.H           |  30 ++--
 .../ParticleForce/ParticleForce.H             |  45 +++---
 .../PatchInteractionModel.H                   |  28 ++--
 .../StochasticCollisionModel.H                |  39 ++---
 .../SurfaceFilmModel/SurfaceFilmModel.H       |  45 +++---
 .../AveragingMethods/makeAveragingMethods.C   | 113 ++++++++------
 .../DampingModels/DampingModel/DampingModel.H |  30 ++--
 .../IsotropyModel/IsotropyModel.H             |  52 ++++---
 .../PackingModels/PackingModel/PackingModel.H |  52 ++++---
 .../CompositionModel/CompositionModel.H       |  27 ++--
 .../PhaseChangeModel/PhaseChangeModel.H       |  27 ++--
 .../DevolatilisationModel.H                   |  29 ++--
 .../SurfaceReactionModel.H                    |  29 ++--
 .../HeatTransferModel/HeatTransferModel.H     |  27 ++--
 .../makeBasicSprayParcelSubmodels.C           |  49 +++---
 .../AtomizationModel/AtomizationModel.H       |  26 ++--
 .../BreakupModel/BreakupModel/BreakupModel.H  |  26 ++--
 .../makeParcelTurbulenceDispersionModels.H    |   4 +-
 .../mixtureFractionSoots.C                    |  11 --
 .../sootModel/sootModel/makeSootTypes.H       |  24 ++-
 .../basicSolidChemistryModels.C               |  54 ++++---
 .../makeSolidChemistryModel.H                 |  27 ++--
 wmake/rules/linux64Clang/c++                  |   4 +-
 wmake/rules/linuxClang/c++                    |   4 +-
 94 files changed, 1248 insertions(+), 1286 deletions(-)

diff --git a/src/OpenFOAM/db/typeInfo/debugName.H b/src/OpenFOAM/db/typeInfo/debugName.H
index 2277945ed4d..86c3d669353 100644
--- a/src/OpenFOAM/db/typeInfo/debugName.H
+++ b/src/OpenFOAM/db/typeInfo/debugName.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2012 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2012-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -40,6 +40,46 @@ Description
 // definitions (debug information only)
 // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
+namespace Foam
+{
+
+//- Define the debug information, lookup as \a Name
+template<class Type>
+class AddToDebug
+:
+    public ::Foam::simpleRegIOobject
+{
+public:
+
+    //- The unique AddToDebug object
+    static const AddToDebug addToDebug;
+
+    AddToDebug(const char* name)
+    :
+        ::Foam::simpleRegIOobject(Foam::debug::addDebugObject, name)
+    {}
+
+    virtual ~AddToDebug()
+    {}
+
+    virtual void readData(Foam::Istream& is)
+    {
+        Type::debug = readLabel(is);
+    }
+
+    virtual void writeData(Foam::Ostream& os) const
+    {
+        os << Type::debug;
+    }
+};
+
+} // End namespace Foam
+
+#define registerTemplateDebugSwitchWithName(Type,Name)                        \
+    template<>                                                                \
+    const Foam::AddToDebug<Type> Foam::AddToDebug<Type>::addToDebug(Name)
+
+
 //- Define the debug information, lookup as \a Name
 #define registerDebugSwitchWithName(Type,Tag,Name)                            \
     class add##Tag##ToDebug                                                   \
@@ -135,11 +175,13 @@ Description
 //- Define the debug information for templates, lookup as \a Name
 # define defineTemplateDebugSwitchWithName(Type, Name, DebugSwitch)           \
     template<>                                                                \
-    defineDebugSwitchWithName(Type, Name, DebugSwitch)
+    defineDebugSwitchWithName(Type, Name, DebugSwitch);                       \
+    registerTemplateDebugSwitchWithName(Type, Name)
 //- Define the debug information for templates sub-classes, lookup as \a Name
 # define defineTemplate2DebugSwitchWithName(Type, Name, DebugSwitch)          \
     template<>                                                                \
-    defineDebugSwitchWithName(Type, Name, DebugSwitch)
+    defineDebugSwitchWithName(Type, Name, DebugSwitch);                       \
+    registerTemplateDebugSwitchWithName(Type, Name)
 #endif
 
 //- Define the debug information for templates
diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarFields.C b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarFields.C
index 8eab8013249..d84522096f3 100644
--- a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarFields.C
+++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarFields.C
@@ -27,43 +27,39 @@ License
 #include "addToRunTimeSelectionTable.H"
 
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-namespace compressible
-{
-
 // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
 
 defineTemplateTypeNameAndDebugWithName
 (
-    constSolid_thermalBaffle1DFvPatchScalarField,
+    Foam::compressible::constSolid_thermalBaffle1DFvPatchScalarField,
     "compressible::thermalBaffle1D<hConstSolidThermoPhysics>",
     0
 );
 
-addToPatchFieldRunTimeSelection
-(
-    fvPatchScalarField,
-    constSolid_thermalBaffle1DFvPatchScalarField
-);
-
 defineTemplateTypeNameAndDebugWithName
 (
-    expoSolid_thermalBaffle1DFvPatchScalarField,
+    Foam::compressible::expoSolid_thermalBaffle1DFvPatchScalarField,
     "compressible::thermalBaffle1D<hExponentialSolidThermoPhysics>",
     0
 );
 
-addToPatchFieldRunTimeSelection
-(
-    fvPatchScalarField,
-    expoSolid_thermalBaffle1DFvPatchScalarField
-);
+namespace Foam
+{
+namespace compressible
+{
+    addToPatchFieldRunTimeSelection
+    (
+        fvPatchScalarField,
+        constSolid_thermalBaffle1DFvPatchScalarField
+    );
+
+    addToPatchFieldRunTimeSelection
+    (
+        fvPatchScalarField,
+        expoSolid_thermalBaffle1DFvPatchScalarField
+    );
+}
+}
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-} // End namespace compressible
-} // End namespace Foam
 // ************************************************************************* //
diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H
index ae0b0cb5977..12839d7c6bc 100644
--- a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H
+++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H
@@ -90,14 +90,16 @@ License
 
 
 #define makeTemplatedTurbulenceModel(BaseModel, SType, Type)                   \
+    typedef Foam::SType##Models::Type<Foam::eddyDiffusivity<Foam::BaseModel> > \
+        Type##SType##BaseModel;                                                \
+    defineNamedTemplateTypeNameAndDebug(Type##SType##BaseModel, 0);            \
+                                                                               \
     namespace Foam                                                             \
     {                                                                          \
         namespace SType##Models                                                \
         {                                                                      \
             typedef Type<eddyDiffusivity<BaseModel> > Type##SType##BaseModel;  \
                                                                                \
-            defineNamedTemplateTypeNameAndDebug(Type##SType##BaseModel, 0);    \
-                                                                               \
             addToRunTimeSelectionTable                                         \
             (                                                                  \
                 SType##BaseModel,                                              \
diff --git a/src/TurbulenceModels/turbulenceModels/makeTurbulenceModel.H b/src/TurbulenceModels/turbulenceModels/makeTurbulenceModel.H
index cea2079b454..6088a71aff0 100644
--- a/src/TurbulenceModels/turbulenceModels/makeTurbulenceModel.H
+++ b/src/TurbulenceModels/turbulenceModels/makeTurbulenceModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -88,14 +88,15 @@ License
 
 
 #define makeTemplatedTurbulenceModel(BaseModel, SType, Type)                   \
+    defineNamedTemplateTypeNameAndDebug                                        \
+        (Foam::SType##Models::Type<Foam::BaseModel>, 0);                       \
+                                                                               \
     namespace Foam                                                             \
     {                                                                          \
         namespace SType##Models                                                \
         {                                                                      \
             typedef Type<BaseModel> Type##SType##BaseModel;                    \
                                                                                \
-            defineNamedTemplateTypeNameAndDebug(Type##SType##BaseModel, 0);    \
-                                                                               \
             addToRunTimeSelectionTable                                         \
             (                                                                  \
                 SType##BaseModel,                                              \
diff --git a/src/combustionModels/FSD/FSDs.C b/src/combustionModels/FSD/FSDs.C
index 8b36ce8f89f..1fff6a86e5d 100644
--- a/src/combustionModels/FSD/FSDs.C
+++ b/src/combustionModels/FSD/FSDs.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -34,77 +34,71 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace combustionModels
-{
-    // Combustion models based on sensibleEnthalpy
-    makeCombustionTypesThermo
-    (
-        FSD,
-        psiThermoCombustion,
-        gasHThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        FSD,
-        psiThermoCombustion,
-        constGasHThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        FSD,
-        rhoThermoCombustion,
-        gasHThermoPhysics,
-        rhoCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        FSD,
-        rhoThermoCombustion,
-        constGasHThermoPhysics,
-        rhoCombustionModel
-    );
-
-    // Combustion models based on sensibleInternalEnergy
-    makeCombustionTypesThermo
-    (
-        FSD,
-        psiThermoCombustion,
-        gasEThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        FSD,
-        psiThermoCombustion,
-        constGasEThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        FSD,
-        rhoThermoCombustion,
-        gasEThermoPhysics,
-        rhoCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        FSD,
-        rhoThermoCombustion,
-        constGasEThermoPhysics,
-        rhoCombustionModel
-    );
-}
-}
+// Combustion models based on sensibleEnthalpy
+makeCombustionTypesThermo
+(
+    FSD,
+    psiThermoCombustion,
+    gasHThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    FSD,
+    psiThermoCombustion,
+    constGasHThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    FSD,
+    rhoThermoCombustion,
+    gasHThermoPhysics,
+    rhoCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    FSD,
+    rhoThermoCombustion,
+    constGasHThermoPhysics,
+    rhoCombustionModel
+);
+
+// Combustion models based on sensibleInternalEnergy
+makeCombustionTypesThermo
+(
+    FSD,
+    psiThermoCombustion,
+    gasEThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    FSD,
+    psiThermoCombustion,
+    constGasEThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    FSD,
+    rhoThermoCombustion,
+    gasEThermoPhysics,
+    rhoCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    FSD,
+    rhoThermoCombustion,
+    constGasEThermoPhysics,
+    rhoCombustionModel
+);
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/combustionModels/PaSR/PaSRs.C b/src/combustionModels/PaSR/PaSRs.C
index 24978b55c4b..0e52c3f0aaa 100644
--- a/src/combustionModels/PaSR/PaSRs.C
+++ b/src/combustionModels/PaSR/PaSRs.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2012 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -31,14 +31,8 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace combustionModels
-{
-    makeCombustionTypes(PaSR, psiChemistryCombustion, psiCombustionModel);
-    makeCombustionTypes(PaSR, rhoChemistryCombustion, rhoCombustionModel);
-}
-}
+makeCombustionTypes(PaSR, psiChemistryCombustion, psiCombustionModel);
+makeCombustionTypes(PaSR, rhoChemistryCombustion, rhoCombustionModel);
 
 
 // ************************************************************************* //
diff --git a/src/combustionModels/combustionModel/makeCombustionTypes.H b/src/combustionModels/combustionModel/makeCombustionTypes.H
index 31f2e840068..4bf871d3b2e 100644
--- a/src/combustionModels/combustionModel/makeCombustionTypes.H
+++ b/src/combustionModels/combustionModel/makeCombustionTypes.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2012 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -30,43 +30,61 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-#define makeCombustionTypesThermo(CombModel, CombType, Thermo, Table)         \
-                                                                              \
-    typedef CombModel<CombType, Thermo> CombModel##CombType##Thermo;          \
-                                                                              \
-    defineTemplateTypeNameAndDebugWithName                                    \
-    (                                                                         \
-        CombModel##CombType##Thermo,                                          \
-        #CombModel"<"#CombType","#Thermo">",                                  \
-        0                                                                     \
-    );                                                                        \
-                                                                              \
-    addToRunTimeSelectionTable                                                \
-    (                                                                         \
-        Table,                                                                \
-        CombModel##CombType##Thermo,                                          \
-        dictionary                                                            \
-    );
+#define makeCombustionTypesThermo(CombModel, CombType, Thermo, Table)          \
+                                                                               \
+    typedef Foam::combustionModels::CombModel                                  \
+        <Foam::combustionModels::CombType, Foam::Thermo>                       \
+        CombModel##CombType##Thermo;                                           \
+                                                                               \
+    defineTemplateTypeNameAndDebugWithName                                     \
+    (                                                                          \
+        CombModel##CombType##Thermo,                                           \
+        #CombModel"<"#CombType","#Thermo">",                                   \
+        0                                                                      \
+    );                                                                         \
+                                                                               \
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace combustionModels                                             \
+        {                                                                      \
+            typedef CombModel<CombType, Thermo> CombModel##CombType##Thermo;   \
+            addToRunTimeSelectionTable                                         \
+            (                                                                  \
+                Table,                                                         \
+                CombModel##CombType##Thermo,                                   \
+                dictionary                                                     \
+            );                                                                 \
+        }                                                                      \
+    }
 
 
-#define makeCombustionTypes(CombModel, CombType, Table)                       \
-                                                                              \
-    typedef CombModel<CombType> CombModel##CombType;                          \
-                                                                              \
-    defineTemplateTypeNameAndDebugWithName                                    \
-    (                                                                         \
-        CombModel##CombType,                                                  \
-        #CombModel"<"#CombType">",                                            \
-        0                                                                     \
-    );                                                                        \
-                                                                              \
-    addToRunTimeSelectionTable                                                \
-    (                                                                         \
-        Table,                                                                \
-        CombModel##CombType,                                                  \
-        dictionary                                                            \
-    );
-
+#define makeCombustionTypes(CombModel, CombType, Table)                        \
+                                                                               \
+    typedef Foam::combustionModels::CombModel                                  \
+        <Foam::combustionModels::CombType>                                     \
+        CombModel##CombType;                                                   \
+                                                                               \
+    defineTemplateTypeNameAndDebugWithName                                     \
+    (                                                                          \
+        CombModel##CombType,                                                   \
+        #CombModel"<"#CombType">",                                             \
+        0                                                                      \
+    );                                                                         \
+                                                                               \
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace combustionModels                                             \
+        {                                                                      \
+            typedef CombModel<CombType> CombModel##CombType;                   \
+                                                                               \
+            addToRunTimeSelectionTable                                         \
+            (                                                                  \
+                Table,                                                         \
+                CombModel##CombType,                                           \
+                dictionary                                                     \
+            );                                                                 \
+        }                                                                      \
+    }
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/src/combustionModels/diffusion/diffusions.C b/src/combustionModels/diffusion/diffusions.C
index 1e08d210ee0..e358c96d34d 100644
--- a/src/combustionModels/diffusion/diffusions.C
+++ b/src/combustionModels/diffusion/diffusions.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2012-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2012-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -32,78 +32,72 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace combustionModels
-{
-    // Combustion models based on sensibleEnthalpy
-    makeCombustionTypesThermo
-    (
-        diffusion,
-        psiThermoCombustion,
-        gasHThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        diffusion,
-        psiThermoCombustion,
-        constGasHThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        diffusion,
-        rhoThermoCombustion,
-        gasHThermoPhysics,
-        rhoCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        diffusion,
-        rhoThermoCombustion,
-        constGasHThermoPhysics,
-        rhoCombustionModel
-    );
-
-     // Combustion models based on sensibleInternalEnergy
-
-    makeCombustionTypesThermo
-    (
-        diffusion,
-        psiThermoCombustion,
-        gasEThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        diffusion,
-        psiThermoCombustion,
-        constGasEThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        diffusion,
-        rhoThermoCombustion,
-        gasEThermoPhysics,
-        rhoCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        diffusion,
-        rhoThermoCombustion,
-        constGasEThermoPhysics,
-        rhoCombustionModel
-    );
-}
-}
+// Combustion models based on sensibleEnthalpy
+makeCombustionTypesThermo
+(
+    diffusion,
+    psiThermoCombustion,
+    gasHThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    diffusion,
+    psiThermoCombustion,
+    constGasHThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    diffusion,
+    rhoThermoCombustion,
+    gasHThermoPhysics,
+    rhoCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    diffusion,
+    rhoThermoCombustion,
+    constGasHThermoPhysics,
+    rhoCombustionModel
+);
+
+ // Combustion models based on sensibleInternalEnergy
+
+makeCombustionTypesThermo
+(
+    diffusion,
+    psiThermoCombustion,
+    gasEThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    diffusion,
+    psiThermoCombustion,
+    constGasEThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    diffusion,
+    rhoThermoCombustion,
+    gasEThermoPhysics,
+    rhoCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    diffusion,
+    rhoThermoCombustion,
+    constGasEThermoPhysics,
+    rhoCombustionModel
+);
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/combustionModels/infinitelyFastChemistry/infinitelyFastChemistrys.C b/src/combustionModels/infinitelyFastChemistry/infinitelyFastChemistrys.C
index c2c8b63e677..95e5a79d4f4 100644
--- a/src/combustionModels/infinitelyFastChemistry/infinitelyFastChemistrys.C
+++ b/src/combustionModels/infinitelyFastChemistry/infinitelyFastChemistrys.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -32,79 +32,73 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace combustionModels
-{
-    // Combustion models based on sensibleEnthalpy
-
-    makeCombustionTypesThermo
-    (
-        infinitelyFastChemistry,
-        psiThermoCombustion,
-        gasHThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        infinitelyFastChemistry,
-        psiThermoCombustion,
-        constGasHThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        infinitelyFastChemistry,
-        rhoThermoCombustion,
-        gasHThermoPhysics,
-        rhoCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        infinitelyFastChemistry,
-        rhoThermoCombustion,
-        constGasHThermoPhysics,
-        rhoCombustionModel
-    );
-
-    // Combustion models based on sensibleInternalEnergy
-
-    makeCombustionTypesThermo
-    (
-        infinitelyFastChemistry,
-        psiThermoCombustion,
-        gasEThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        infinitelyFastChemistry,
-        psiThermoCombustion,
-        constGasEThermoPhysics,
-        psiCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        infinitelyFastChemistry,
-        rhoThermoCombustion,
-        gasEThermoPhysics,
-        rhoCombustionModel
-    );
-
-    makeCombustionTypesThermo
-    (
-        infinitelyFastChemistry,
-        rhoThermoCombustion,
-        constGasEThermoPhysics,
-        rhoCombustionModel
-    );
-}
-}
+// Combustion models based on sensibleEnthalpy
+
+makeCombustionTypesThermo
+(
+    infinitelyFastChemistry,
+    psiThermoCombustion,
+    gasHThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    infinitelyFastChemistry,
+    psiThermoCombustion,
+    constGasHThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    infinitelyFastChemistry,
+    rhoThermoCombustion,
+    gasHThermoPhysics,
+    rhoCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    infinitelyFastChemistry,
+    rhoThermoCombustion,
+    constGasHThermoPhysics,
+    rhoCombustionModel
+);
+
+// Combustion models based on sensibleInternalEnergy
+
+makeCombustionTypesThermo
+(
+    infinitelyFastChemistry,
+    psiThermoCombustion,
+    gasEThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    infinitelyFastChemistry,
+    psiThermoCombustion,
+    constGasEThermoPhysics,
+    psiCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    infinitelyFastChemistry,
+    rhoThermoCombustion,
+    gasEThermoPhysics,
+    rhoCombustionModel
+);
+
+makeCombustionTypesThermo
+(
+    infinitelyFastChemistry,
+    rhoThermoCombustion,
+    constGasEThermoPhysics,
+    rhoCombustionModel
+);
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/combustionModels/laminar/laminars.C b/src/combustionModels/laminar/laminars.C
index 1c7d5526c9e..73d400c0958 100644
--- a/src/combustionModels/laminar/laminars.C
+++ b/src/combustionModels/laminar/laminars.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -31,14 +31,8 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace combustionModels
-{
-    makeCombustionTypes(laminar, psiChemistryCombustion, psiCombustionModel);
-    makeCombustionTypes(laminar, rhoChemistryCombustion, rhoCombustionModel);
-}
-}
+makeCombustionTypes(laminar, psiChemistryCombustion, psiCombustionModel);
+makeCombustionTypes(laminar, rhoChemistryCombustion, rhoCombustionModel);
 
 
 // ************************************************************************* //
diff --git a/src/combustionModels/noCombustion/noCombustions.C b/src/combustionModels/noCombustion/noCombustions.C
index b5a986b9ed5..516e5af8230 100644
--- a/src/combustionModels/noCombustion/noCombustions.C
+++ b/src/combustionModels/noCombustion/noCombustions.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2012 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2012-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -34,25 +34,19 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace combustionModels
-{
-    makeCombustionTypes
-    (
-        noCombustion,
-        psiThermoCombustion,
-        psiCombustionModel
-    );
-
-    makeCombustionTypes
-    (
-        noCombustion,
-        rhoThermoCombustion,
-        rhoCombustionModel
-    );
-}
-}
+makeCombustionTypes
+(
+    noCombustion,
+    psiThermoCombustion,
+    psiCombustionModel
+);
+
+makeCombustionTypes
+(
+    noCombustion,
+    rhoThermoCombustion,
+    rhoCombustionModel
+);
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/finiteVolume/finiteVolume/convectionSchemes/boundedConvectionScheme/boundedConvectionSchemes.C b/src/finiteVolume/finiteVolume/convectionSchemes/boundedConvectionScheme/boundedConvectionSchemes.C
index 33385d4ecfa..c011a40e2d4 100644
--- a/src/finiteVolume/finiteVolume/convectionSchemes/boundedConvectionScheme/boundedConvectionSchemes.C
+++ b/src/finiteVolume/finiteVolume/convectionSchemes/boundedConvectionScheme/boundedConvectionSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2012 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2012-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvConvectionScheme(boundedConvectionScheme)
-}
-}
+makeFvConvectionScheme(boundedConvectionScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/convectionSchemes/convectionScheme/convectionScheme.H b/src/finiteVolume/finiteVolume/convectionSchemes/convectionScheme/convectionScheme.H
index e871aec19a3..491ed484960 100644
--- a/src/finiteVolume/finiteVolume/convectionSchemes/convectionScheme/convectionScheme.H
+++ b/src/finiteVolume/finiteVolume/convectionSchemes/convectionScheme/convectionScheme.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -204,12 +204,16 @@ public:
 // Add the patch constructor functions to the hash tables
 
 #define makeFvConvectionTypeScheme(SS, Type)                                   \
+    defineNamedTemplateTypeNameAndDebug(Foam::fv::SS<Foam::Type>, 0);          \
                                                                                \
-defineNamedTemplateTypeNameAndDebug(SS<Type>, 0);                              \
-                                                                               \
-convectionScheme<Type>::addIstreamConstructorToTable<SS<Type> >                \
-    add##SS##Type##IstreamConstructorToTable_;
-
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace fv                                                           \
+        {                                                                      \
+            convectionScheme<Type>::addIstreamConstructorToTable<SS<Type> >    \
+                add##SS##Type##IstreamConstructorToTable_;                     \
+        }                                                                      \
+    }
 
 #define makeFvConvectionScheme(SS)                                             \
                                                                                \
@@ -221,11 +225,17 @@ makeFvConvectionTypeScheme(SS, tensor)
 
 
 #define makeMultivariateFvConvectionTypeScheme(SS, Type)                       \
+    defineNamedTemplateTypeNameAndDebug(Foam::fv::SS<Foam::Type>, 0);          \
                                                                                \
-defineNamedTemplateTypeNameAndDebug(SS<Type>, 0);                              \
-                                                                               \
-convectionScheme<Type>::addMultivariateConstructorToTable<SS<Type> >           \
-    add##SS##Type##MultivariateConstructorToTable_;
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace fv                                                           \
+        {                                                                      \
+            convectionScheme<Type>::                                           \
+                addMultivariateConstructorToTable<SS<Type> >                   \
+                add##SS##Type##MultivariateConstructorToTable_;                \
+        }                                                                      \
+    }
 
 
 #define makeMultivariateFvConvectionScheme(SS)                                 \
diff --git a/src/finiteVolume/finiteVolume/convectionSchemes/gaussConvectionScheme/gaussConvectionSchemes.C b/src/finiteVolume/finiteVolume/convectionSchemes/gaussConvectionScheme/gaussConvectionSchemes.C
index c5ea8dbac7c..65386824bc1 100644
--- a/src/finiteVolume/finiteVolume/convectionSchemes/gaussConvectionScheme/gaussConvectionSchemes.C
+++ b/src/finiteVolume/finiteVolume/convectionSchemes/gaussConvectionScheme/gaussConvectionSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2012 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,17 +28,11 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    int warnUnboundedGauss
-    (
-        Foam::debug::debugSwitch("warnUnboundedGauss", true)
-    );
-
-    makeFvConvectionScheme(gaussConvectionScheme)
-}
-}
+int Foam::fv::warnUnboundedGauss
+(
+    Foam::debug::debugSwitch("warnUnboundedGauss", true)
+);
+
+makeFvConvectionScheme(gaussConvectionScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/convectionSchemes/multivariateGaussConvectionScheme/multivariateGaussConvectionSchemes.C b/src/finiteVolume/finiteVolume/convectionSchemes/multivariateGaussConvectionScheme/multivariateGaussConvectionSchemes.C
index 6bc1ce34d4c..cfa0d039ffe 100644
--- a/src/finiteVolume/finiteVolume/convectionSchemes/multivariateGaussConvectionScheme/multivariateGaussConvectionSchemes.C
+++ b/src/finiteVolume/finiteVolume/convectionSchemes/multivariateGaussConvectionScheme/multivariateGaussConvectionSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeMultivariateFvConvectionScheme(multivariateGaussConvectionScheme)
-}
-}
+makeMultivariateFvConvectionScheme(multivariateGaussConvectionScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/d2dt2Schemes/EulerD2dt2Scheme/EulerD2dt2Schemes.C b/src/finiteVolume/finiteVolume/d2dt2Schemes/EulerD2dt2Scheme/EulerD2dt2Schemes.C
index 8711c43244f..5b08cebdf59 100644
--- a/src/finiteVolume/finiteVolume/d2dt2Schemes/EulerD2dt2Scheme/EulerD2dt2Schemes.C
+++ b/src/finiteVolume/finiteVolume/d2dt2Schemes/EulerD2dt2Scheme/EulerD2dt2Schemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvD2dt2Scheme(EulerD2dt2Scheme)
-}
-}
+makeFvD2dt2Scheme(EulerD2dt2Scheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/d2dt2Schemes/d2dt2Scheme/d2dt2Scheme.H b/src/finiteVolume/finiteVolume/d2dt2Schemes/d2dt2Scheme/d2dt2Scheme.H
index d7878191ffd..55e2fd21e21 100644
--- a/src/finiteVolume/finiteVolume/d2dt2Schemes/d2dt2Scheme/d2dt2Scheme.H
+++ b/src/finiteVolume/finiteVolume/d2dt2Schemes/d2dt2Scheme/d2dt2Scheme.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -181,12 +181,16 @@ public:
 // Add the patch constructor functions to the hash tables
 
 #define makeFvD2dt2TypeScheme(SS, Type)                                        \
+    defineNamedTemplateTypeNameAndDebug(Foam::fv::SS<Foam::Type>, 0);          \
                                                                                \
-defineNamedTemplateTypeNameAndDebug(SS<Type>, 0);                              \
-                                                                               \
-d2dt2Scheme<Type>::addIstreamConstructorToTable<SS<Type> >                     \
-    add##SS##Type##IstreamConstructorToTable_;
-
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace fv                                                           \
+        {                                                                      \
+            d2dt2Scheme<Type>::addIstreamConstructorToTable<SS<Type> >         \
+                add##SS##Type##IstreamConstructorToTable_;                     \
+        }                                                                      \
+    }
 
 #define makeFvD2dt2Scheme(SS)                                                  \
                                                                                \
diff --git a/src/finiteVolume/finiteVolume/d2dt2Schemes/steadyStateD2dt2Scheme/steadyStateD2dt2Schemes.C b/src/finiteVolume/finiteVolume/d2dt2Schemes/steadyStateD2dt2Scheme/steadyStateD2dt2Schemes.C
index 7ef9837d027..418f5d59f8a 100644
--- a/src/finiteVolume/finiteVolume/d2dt2Schemes/steadyStateD2dt2Scheme/steadyStateD2dt2Schemes.C
+++ b/src/finiteVolume/finiteVolume/d2dt2Schemes/steadyStateD2dt2Scheme/steadyStateD2dt2Schemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvD2dt2Scheme(steadyStateD2dt2Scheme)
-}
-}
+makeFvD2dt2Scheme(steadyStateD2dt2Scheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/CoEulerDdtScheme/CoEulerDdtSchemes.C b/src/finiteVolume/finiteVolume/ddtSchemes/CoEulerDdtScheme/CoEulerDdtSchemes.C
index 64a369e6ef6..3e7866eccd6 100644
--- a/src/finiteVolume/finiteVolume/ddtSchemes/CoEulerDdtScheme/CoEulerDdtSchemes.C
+++ b/src/finiteVolume/finiteVolume/ddtSchemes/CoEulerDdtScheme/CoEulerDdtSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvDdtScheme(CoEulerDdtScheme)
-}
-}
+makeFvDdtScheme(CoEulerDdtScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtSchemes.C b/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtSchemes.C
index 3166243a9cc..e2ecc849aed 100644
--- a/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtSchemes.C
+++ b/src/finiteVolume/finiteVolume/ddtSchemes/CrankNicolsonDdtScheme/CrankNicolsonDdtSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvDdtScheme(CrankNicolsonDdtScheme)
-}
-}
+makeFvDdtScheme(CrankNicolsonDdtScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/EulerDdtScheme/EulerDdtSchemes.C b/src/finiteVolume/finiteVolume/ddtSchemes/EulerDdtScheme/EulerDdtSchemes.C
index 6207a2b45a1..aa189acecc3 100644
--- a/src/finiteVolume/finiteVolume/ddtSchemes/EulerDdtScheme/EulerDdtSchemes.C
+++ b/src/finiteVolume/finiteVolume/ddtSchemes/EulerDdtScheme/EulerDdtSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvDdtScheme(EulerDdtScheme)
-}
-}
+makeFvDdtScheme(EulerDdtScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/SLTSDdtScheme/SLTSDdtSchemes.C b/src/finiteVolume/finiteVolume/ddtSchemes/SLTSDdtScheme/SLTSDdtSchemes.C
index 22c7b9a64fd..eb00cc4399a 100644
--- a/src/finiteVolume/finiteVolume/ddtSchemes/SLTSDdtScheme/SLTSDdtSchemes.C
+++ b/src/finiteVolume/finiteVolume/ddtSchemes/SLTSDdtScheme/SLTSDdtSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvDdtScheme(SLTSDdtScheme)
-}
-}
+makeFvDdtScheme(SLTSDdtScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/backwardDdtScheme/backwardDdtSchemes.C b/src/finiteVolume/finiteVolume/ddtSchemes/backwardDdtScheme/backwardDdtSchemes.C
index 97b2d39a5c6..e6f2a56dd72 100644
--- a/src/finiteVolume/finiteVolume/ddtSchemes/backwardDdtScheme/backwardDdtSchemes.C
+++ b/src/finiteVolume/finiteVolume/ddtSchemes/backwardDdtScheme/backwardDdtSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvDdtScheme(backwardDdtScheme)
-}
-}
+makeFvDdtScheme(backwardDdtScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/boundedDdtScheme/boundedDdtSchemes.C b/src/finiteVolume/finiteVolume/ddtSchemes/boundedDdtScheme/boundedDdtSchemes.C
index 8971a237e58..f600cd36a7c 100644
--- a/src/finiteVolume/finiteVolume/ddtSchemes/boundedDdtScheme/boundedDdtSchemes.C
+++ b/src/finiteVolume/finiteVolume/ddtSchemes/boundedDdtScheme/boundedDdtSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2012 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvDdtScheme(boundedDdtScheme)
-}
-}
+makeFvDdtScheme(boundedDdtScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/ddtScheme/ddtScheme.H b/src/finiteVolume/finiteVolume/ddtSchemes/ddtScheme/ddtScheme.H
index dccf7f9619d..a8d4301c576 100644
--- a/src/finiteVolume/finiteVolume/ddtSchemes/ddtScheme/ddtScheme.H
+++ b/src/finiteVolume/finiteVolume/ddtSchemes/ddtScheme/ddtScheme.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2014 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -257,12 +257,16 @@ public:
 // Add the patch constructor functions to the hash tables
 
 #define makeFvDdtTypeScheme(SS, Type)                                          \
+    defineNamedTemplateTypeNameAndDebug(Foam::fv::SS<Foam::Type>, 0);          \
                                                                                \
-defineNamedTemplateTypeNameAndDebug(SS<Type>, 0);                              \
-                                                                               \
-ddtScheme<Type>::addIstreamConstructorToTable<SS<Type> >                       \
-    add##SS##Type##IstreamConstructorToTable_;
-
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace fv                                                           \
+        {                                                                      \
+            ddtScheme<Type>::addIstreamConstructorToTable<SS<Type> >           \
+                add##SS##Type##IstreamConstructorToTable_;                     \
+        }                                                                      \
+    }
 
 #define makeFvDdtScheme(SS)                                                    \
                                                                                \
@@ -272,6 +276,11 @@ makeFvDdtTypeScheme(SS, sphericalTensor)                                       \
 makeFvDdtTypeScheme(SS, symmTensor)                                            \
 makeFvDdtTypeScheme(SS, tensor)                                                \
                                                                                \
+namespace Foam                                                                 \
+{                                                                              \
+namespace fv                                                                   \
+{                                                                              \
+                                                                               \
 template<>                                                                     \
 tmp<surfaceScalarField> SS<scalar>::fvcDdtUfCorr                               \
 (                                                                              \
@@ -316,6 +325,9 @@ tmp<surfaceScalarField> SS<scalar>::fvcDdtPhiCorr                              \
 {                                                                              \
     notImplemented(#SS"<scalar>::fvcDdtPhiCorr");                              \
     return surfaceScalarField::null();                                         \
+}                                                                              \
+                                                                               \
+}                                                                              \
 }
 
 
diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/localEulerDdtScheme/localEulerDdtSchemes.C b/src/finiteVolume/finiteVolume/ddtSchemes/localEulerDdtScheme/localEulerDdtSchemes.C
index 8fed9dfa57c..45099e1a652 100644
--- a/src/finiteVolume/finiteVolume/ddtSchemes/localEulerDdtScheme/localEulerDdtSchemes.C
+++ b/src/finiteVolume/finiteVolume/ddtSchemes/localEulerDdtScheme/localEulerDdtSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvDdtScheme(localEulerDdtScheme)
-}
-}
+makeFvDdtScheme(localEulerDdtScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/ddtSchemes/steadyStateDdtScheme/steadyStateDdtSchemes.C b/src/finiteVolume/finiteVolume/ddtSchemes/steadyStateDdtScheme/steadyStateDdtSchemes.C
index 814b51bfa08..80afc3a9a3b 100644
--- a/src/finiteVolume/finiteVolume/ddtSchemes/steadyStateDdtScheme/steadyStateDdtSchemes.C
+++ b/src/finiteVolume/finiteVolume/ddtSchemes/steadyStateDdtScheme/steadyStateDdtSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvDdtScheme(steadyStateDdtScheme)
-}
-}
+makeFvDdtScheme(steadyStateDdtScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/divSchemes/divScheme/divScheme.H b/src/finiteVolume/finiteVolume/divSchemes/divScheme/divScheme.H
index b3379204803..4032e2d5cf0 100644
--- a/src/finiteVolume/finiteVolume/divSchemes/divScheme/divScheme.H
+++ b/src/finiteVolume/finiteVolume/divSchemes/divScheme/divScheme.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -165,12 +165,16 @@ public:
 // Add the patch constructor functions to the hash tables
 
 #define makeFvDivTypeScheme(SS, Type)                                          \
+    defineNamedTemplateTypeNameAndDebug(Foam::fv::SS<Foam::Type>, 0);          \
                                                                                \
-defineNamedTemplateTypeNameAndDebug(SS<Type>, 0);                              \
-                                                                               \
-divScheme<Type>::addIstreamConstructorToTable<SS<Type> >                       \
-    add##SS##Type##IstreamConstructorToTable_;
-
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace fv                                                           \
+        {                                                                      \
+            divScheme<Type>::addIstreamConstructorToTable<SS<Type> >           \
+                add##SS##Type##IstreamConstructorToTable_;                     \
+        }                                                                      \
+    }
 
 #define makeFvDivScheme(SS)                                                    \
                                                                                \
diff --git a/src/finiteVolume/finiteVolume/divSchemes/gaussDivScheme/gaussDivSchemes.C b/src/finiteVolume/finiteVolume/divSchemes/gaussDivScheme/gaussDivSchemes.C
index bde36e2c663..2d25bb6b88c 100644
--- a/src/finiteVolume/finiteVolume/divSchemes/gaussDivScheme/gaussDivSchemes.C
+++ b/src/finiteVolume/finiteVolume/divSchemes/gaussDivScheme/gaussDivSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvDivScheme(gaussDivScheme)
-}
-}
+makeFvDivScheme(gaussDivScheme)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresGrad.H b/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresGrad.H
index edc94184650..a71d0e87abd 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresGrad.H
+++ b/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresGrad.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -142,24 +142,35 @@ public:
 
 // Add the patch constructor functions to the hash tables
 
-#define makeLeastSquaresGradTypeScheme(SS, STENCIL, TYPE)                     \
-                                                                              \
-typedef LeastSquaresGrad<TYPE, STENCIL> LeastSquaresGrad##TYPE##STENCIL##_;   \
-defineTemplateTypeNameAndDebugWithName                                        \
-    (LeastSquaresGrad##TYPE##STENCIL##_, #SS, 0);                             \
-                                                                              \
-gradScheme<TYPE>::addIstreamConstructorToTable                                \
-<LeastSquaresGrad<TYPE, STENCIL> >                                            \
-    add##SS##STENCIL##TYPE##IstreamConstructorToTable_;
-
-#define makeLeastSquaresGradScheme(SS, STENCIL)                               \
-                                                                              \
-typedef LeastSquaresVectors<STENCIL> LeastSquaresVectors##STENCIL##_;         \
-defineTemplateTypeNameAndDebugWithName                                        \
-    (LeastSquaresVectors##STENCIL##_, #SS, 0);                                \
-                                                                              \
-makeLeastSquaresGradTypeScheme(SS,STENCIL,scalar)                             \
-makeLeastSquaresGradTypeScheme(SS,STENCIL,vector)
+#define makeLeastSquaresGradTypeScheme(SS, STENCIL, TYPE)                      \
+    typedef Foam::fv::LeastSquaresGrad<Foam::TYPE, Foam::STENCIL>              \
+        LeastSquaresGrad##TYPE##STENCIL##_;                                    \
+                                                                               \
+    defineTemplateTypeNameAndDebugWithName                                     \
+        (LeastSquaresGrad##TYPE##STENCIL##_, #SS, 0);                          \
+                                                                               \
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace fv                                                           \
+        {                                                                      \
+            typedef LeastSquaresGrad<Foam::TYPE, Foam::STENCIL>                \
+                LeastSquaresGrad##TYPE##STENCIL##_;                            \
+                                                                               \
+            gradScheme<Foam::TYPE>::addIstreamConstructorToTable               \
+                <LeastSquaresGrad<Foam::TYPE, Foam::STENCIL> >                 \
+                add##SS##STENCIL##TYPE##IstreamConstructorToTable_;            \
+        }                                                                      \
+    }
+
+#define makeLeastSquaresGradScheme(SS, STENCIL)                                \
+    typedef Foam::fv::LeastSquaresVectors<Foam::STENCIL>                       \
+        LeastSquaresVectors##STENCIL##_;                                       \
+                                                                               \
+    defineTemplateTypeNameAndDebugWithName                                     \
+        (LeastSquaresVectors##STENCIL##_, #SS, 0);                             \
+                                                                               \
+    makeLeastSquaresGradTypeScheme(SS,STENCIL,scalar)                          \
+    makeLeastSquaresGradTypeScheme(SS,STENCIL,vector)
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresGrads.C b/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresGrads.C
index 021e2da28ef..3b48f3fd594 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresGrads.C
+++ b/src/finiteVolume/finiteVolume/gradSchemes/LeastSquaresGrad/LeastSquaresGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -30,28 +30,22 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    // makeLeastSquaresGradScheme
-    // (
-    //     faceCellsLeastSquares,
-    //     centredCFCCellToCellStencilObject
-    // )
-
-    makeLeastSquaresGradScheme
-    (
-        pointCellsLeastSquares,
-        centredCPCCellToCellStencilObject
-    )
-
-    makeLeastSquaresGradScheme
-    (
-        edgeCellsLeastSquares,
-        centredCECCellToCellStencilObject
-    )
-}
-}
+// makeLeastSquaresGradScheme
+// (
+//     faceCellsLeastSquares,
+//     centredCFCCellToCellStencilObject
+// )
+
+makeLeastSquaresGradScheme
+(
+    pointCellsLeastSquares,
+    centredCPCCellToCellStencilObject
+)
+
+makeLeastSquaresGradScheme
+(
+    edgeCellsLeastSquares,
+    centredCECCellToCellStencilObject
+)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/fourthGrad/fourthGrads.C b/src/finiteVolume/finiteVolume/gradSchemes/fourthGrad/fourthGrads.C
index 2f385c71507..70440597466 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/fourthGrad/fourthGrads.C
+++ b/src/finiteVolume/finiteVolume/gradSchemes/fourthGrad/fourthGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,14 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-
-    makeFvGradScheme(fourthGrad)
-
-} // End namespace fv
-} // End namespace Foam
+makeFvGradScheme(fourthGrad)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/gaussGrad/gaussGrads.C b/src/finiteVolume/finiteVolume/gradSchemes/gaussGrad/gaussGrads.C
index 9a6d1e81cb5..f395adaa93d 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/gaussGrad/gaussGrads.C
+++ b/src/finiteVolume/finiteVolume/gradSchemes/gaussGrad/gaussGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvGradScheme(gaussGrad)
-}
-}
+makeFvGradScheme(gaussGrad)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/gradScheme/gradScheme.H b/src/finiteVolume/finiteVolume/gradSchemes/gradScheme/gradScheme.H
index ce1e90d3432..aa508ab8b61 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/gradScheme/gradScheme.H
+++ b/src/finiteVolume/finiteVolume/gradSchemes/gradScheme/gradScheme.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -189,11 +189,16 @@ public:
 // Add the patch constructor functions to the hash tables
 
 #define makeFvGradTypeScheme(SS, Type)                                         \
+    defineNamedTemplateTypeNameAndDebug(Foam::fv::SS<Foam::Type>, 0);          \
                                                                                \
-defineNamedTemplateTypeNameAndDebug(SS<Type>, 0);                              \
-                                                                               \
-gradScheme<Type>::addIstreamConstructorToTable<SS<Type> >                      \
-    add##SS##Type##IstreamConstructorToTable_;
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace fv                                                           \
+        {                                                                      \
+            gradScheme<Type>::addIstreamConstructorToTable<SS<Type> >          \
+                add##SS##Type##IstreamConstructorToTable_;                     \
+        }                                                                      \
+    }
 
 
 #define makeFvGradScheme(SS)                                                   \
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresGrads.C b/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresGrads.C
index 8c1cfe08ec7..2f44144d0bd 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresGrads.C
+++ b/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad/leastSquaresGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,12 +28,6 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvGradScheme(leastSquaresGrad)
-}
-}
+makeFvGradScheme(leastSquaresGrad)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellLimitedGrad/cellLimitedGrads.C b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellLimitedGrad/cellLimitedGrads.C
index 566b81304eb..14064aa9e22 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellLimitedGrad/cellLimitedGrads.C
+++ b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellLimitedGrad/cellLimitedGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -33,13 +33,7 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvGradScheme(cellLimitedGrad)
-}
-}
+makeFvGradScheme(cellLimitedGrad)
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellMDLimitedGrad/cellMDLimitedGrads.C b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellMDLimitedGrad/cellMDLimitedGrads.C
index 75649ec0d75..594ad63dd9e 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellMDLimitedGrad/cellMDLimitedGrads.C
+++ b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/cellMDLimitedGrad/cellMDLimitedGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -33,14 +33,7 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvGradScheme(cellMDLimitedGrad)
-}
-}
-
+makeFvGradScheme(cellMDLimitedGrad)
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/faceLimitedGrad/faceLimitedGrads.C b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/faceLimitedGrad/faceLimitedGrads.C
index 5b25f582040..c37b14a298f 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/faceLimitedGrad/faceLimitedGrads.C
+++ b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/faceLimitedGrad/faceLimitedGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -33,14 +33,7 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvGradScheme(faceLimitedGrad)
-}
-}
-
+makeFvGradScheme(faceLimitedGrad)
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/faceMDLimitedGrad/faceMDLimitedGrads.C b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/faceMDLimitedGrad/faceMDLimitedGrads.C
index 4006fd5e706..9a43689fd48 100644
--- a/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/faceMDLimitedGrad/faceMDLimitedGrads.C
+++ b/src/finiteVolume/finiteVolume/gradSchemes/limitedGradSchemes/faceMDLimitedGrad/faceMDLimitedGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -34,13 +34,7 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvGradScheme(faceMDLimitedGrad)
-}
-}
+makeFvGradScheme(faceMDLimitedGrad)
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianSchemes.C b/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianSchemes.C
index fd983f3751e..b7c2e25b8ab 100644
--- a/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianSchemes.C
+++ b/src/finiteVolume/finiteVolume/laplacianSchemes/gaussLaplacianScheme/gaussLaplacianSchemes.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2012 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,13 +28,7 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvLaplacianScheme(gaussLaplacianScheme)
-}
-}
+makeFvLaplacianScheme(gaussLaplacianScheme)
 
 #define declareFvmLaplacianScalarGamma(Type)                                 \
                                                                              \
diff --git a/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.H b/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.H
index 529e55bdbe9..781d2044d5b 100644
--- a/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.H
+++ b/src/finiteVolume/finiteVolume/laplacianSchemes/laplacianScheme/laplacianScheme.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -212,13 +212,20 @@ public:
 // Add the patch constructor functions to the hash tables
 
 #define makeFvLaplacianTypeScheme(SS, GType, Type)                             \
-                                                                               \
-    typedef SS<Type, GType> SS##Type##GType;                                   \
+    typedef Foam::fv::SS<Foam::Type, Foam::GType> SS##Type##GType;             \
     defineNamedTemplateTypeNameAndDebug(SS##Type##GType, 0);                   \
                                                                                \
-    laplacianScheme<Type, GType>::                                             \
-        addIstreamConstructorToTable<SS<Type, GType> >                         \
-    add##SS##Type##GType##IstreamConstructorToTable_;
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace fv                                                           \
+        {                                                                      \
+            typedef SS<Type, GType> SS##Type##GType;                           \
+                                                                               \
+            laplacianScheme<Type, GType>::                                     \
+                addIstreamConstructorToTable<SS<Type, GType> >                 \
+                add##SS##Type##GType##IstreamConstructorToTable_;              \
+        }                                                                      \
+    }
 
 
 #define makeFvLaplacianScheme(SS)                                              \
diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/CentredFitSnGrad/CentredFitSnGradScheme.H b/src/finiteVolume/finiteVolume/snGradSchemes/CentredFitSnGrad/CentredFitSnGradScheme.H
index d92478c3174..4cebfa3e7b3 100644
--- a/src/finiteVolume/finiteVolume/snGradSchemes/CentredFitSnGrad/CentredFitSnGradScheme.H
+++ b/src/finiteVolume/finiteVolume/snGradSchemes/CentredFitSnGrad/CentredFitSnGradScheme.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -156,24 +156,31 @@ public:
 
 // Add the patch constructor functions to the hash tables
 
-#define makeCentredFitSnGradTypeScheme(SS, POLYNOMIAL, STENCIL, TYPE) \
-                                                                      \
-typedef CentredFitSnGradScheme<TYPE, POLYNOMIAL, STENCIL>             \
-    CentredFitSnGradScheme##TYPE##POLYNOMIAL##STENCIL##_;             \
-defineTemplateTypeNameAndDebugWithName                                \
-    (CentredFitSnGradScheme##TYPE##POLYNOMIAL##STENCIL##_, #SS, 0);   \
-                                                                      \
-snGradScheme<TYPE>::addMeshConstructorToTable                         \
-<CentredFitSnGradScheme<TYPE, POLYNOMIAL, STENCIL> >                  \
-    add##SS##STENCIL##TYPE##MeshConstructorToTable_;
-
-#define makeCentredFitSnGradScheme(SS, POLYNOMIAL, STENCIL)           \
-                                                                      \
-makeCentredFitSnGradTypeScheme(SS,POLYNOMIAL,STENCIL,scalar)          \
-makeCentredFitSnGradTypeScheme(SS,POLYNOMIAL,STENCIL,vector)          \
-makeCentredFitSnGradTypeScheme(SS,POLYNOMIAL,STENCIL,sphericalTensor) \
-makeCentredFitSnGradTypeScheme(SS,POLYNOMIAL,STENCIL,symmTensor)      \
-makeCentredFitSnGradTypeScheme(SS,POLYNOMIAL,STENCIL,tensor)
+#define makeCentredFitSnGradTypeScheme(SS, POLYNOMIAL, STENCIL, TYPE)          \
+    typedef Foam::fv::CentredFitSnGradScheme                                   \
+        <Foam::TYPE, Foam::POLYNOMIAL, Foam::STENCIL>                          \
+        CentredFitSnGradScheme##TYPE##POLYNOMIAL##STENCIL##_;                  \
+                                                                               \
+    defineTemplateTypeNameAndDebugWithName                                     \
+        (CentredFitSnGradScheme##TYPE##POLYNOMIAL##STENCIL##_, #SS, 0);        \
+                                                                               \
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace fv                                                           \
+        {                                                                      \
+            snGradScheme<TYPE>::addMeshConstructorToTable                      \
+                <CentredFitSnGradScheme<TYPE, POLYNOMIAL, STENCIL> >           \
+                add##SS##STENCIL##TYPE##MeshConstructorToTable_;               \
+        }                                                                      \
+    }
+
+#define makeCentredFitSnGradScheme(SS, POLYNOMIAL, STENCIL)                    \
+                                                                               \
+    makeCentredFitSnGradTypeScheme(SS,POLYNOMIAL,STENCIL,scalar)               \
+    makeCentredFitSnGradTypeScheme(SS,POLYNOMIAL,STENCIL,vector)               \
+    makeCentredFitSnGradTypeScheme(SS,POLYNOMIAL,STENCIL,sphericalTensor)      \
+    makeCentredFitSnGradTypeScheme(SS,POLYNOMIAL,STENCIL,symmTensor)           \
+    makeCentredFitSnGradTypeScheme(SS,POLYNOMIAL,STENCIL,tensor)
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/correctedSnGrad/correctedSnGrads.C b/src/finiteVolume/finiteVolume/snGradSchemes/correctedSnGrad/correctedSnGrads.C
index fee7bfca24a..08906fd487b 100644
--- a/src/finiteVolume/finiteVolume/snGradSchemes/correctedSnGrad/correctedSnGrads.C
+++ b/src/finiteVolume/finiteVolume/snGradSchemes/correctedSnGrad/correctedSnGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,14 +28,7 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeSnGradScheme(correctedSnGrad)
-}
-}
-
+makeSnGradScheme(correctedSnGrad)
 
 template<>
 Foam::tmp<Foam::surfaceScalarField>
diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/faceCorrectedSnGrad/faceCorrectedSnGrads.C b/src/finiteVolume/finiteVolume/snGradSchemes/faceCorrectedSnGrad/faceCorrectedSnGrads.C
index ba6d83542eb..73ba877fdb9 100644
--- a/src/finiteVolume/finiteVolume/snGradSchemes/faceCorrectedSnGrad/faceCorrectedSnGrads.C
+++ b/src/finiteVolume/finiteVolume/snGradSchemes/faceCorrectedSnGrad/faceCorrectedSnGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2012 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,13 +28,7 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeSnGradScheme(faceCorrectedSnGrad)
-}
-}
+makeSnGradScheme(faceCorrectedSnGrad)
 
 
 template<>
diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/limitedSnGrad/limitedSnGrads.C b/src/finiteVolume/finiteVolume/snGradSchemes/limitedSnGrad/limitedSnGrads.C
index 1ed8ebe5fa1..177762a11c2 100644
--- a/src/finiteVolume/finiteVolume/snGradSchemes/limitedSnGrad/limitedSnGrads.C
+++ b/src/finiteVolume/finiteVolume/snGradSchemes/limitedSnGrad/limitedSnGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -35,12 +35,6 @@ Description
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeSnGradScheme(limitedSnGrad)
-}
-}
+makeSnGradScheme(limitedSnGrad)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/linearFitSnGrad/linearFitSnGrads.C b/src/finiteVolume/finiteVolume/snGradSchemes/linearFitSnGrad/linearFitSnGrads.C
index 4335cc8e69f..1354c582bbc 100644
--- a/src/finiteVolume/finiteVolume/snGradSchemes/linearFitSnGrad/linearFitSnGrads.C
+++ b/src/finiteVolume/finiteVolume/snGradSchemes/linearFitSnGrad/linearFitSnGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -36,16 +36,13 @@ namespace Foam
         CentredFitSnGradData<linearFitPolynomial>,
         0
     );
-
-    namespace fv
-    {
-        makeCentredFitSnGradScheme
-        (
-            linearFit,
-            linearFitPolynomial,
-            centredFECCellToFaceStencilObject
-        );
-    }
 }
 
+makeCentredFitSnGradScheme
+(
+    linearFit,
+    linearFitPolynomial,
+    centredFECCellToFaceStencilObject
+);
+
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/orthogonalSnGrad/orthogonalSnGrads.C b/src/finiteVolume/finiteVolume/snGradSchemes/orthogonalSnGrad/orthogonalSnGrads.C
index 4597bb43ffe..dda3b6bd615 100644
--- a/src/finiteVolume/finiteVolume/snGradSchemes/orthogonalSnGrad/orthogonalSnGrads.C
+++ b/src/finiteVolume/finiteVolume/snGradSchemes/orthogonalSnGrad/orthogonalSnGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -31,12 +31,6 @@ Description
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeSnGradScheme(orthogonalSnGrad)
-}
-}
+makeSnGradScheme(orthogonalSnGrad)
 
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGrads.C b/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGrads.C
index 63e4ea98fac..40cf5ae5444 100644
--- a/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGrads.C
+++ b/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -36,16 +36,14 @@ namespace Foam
         CentredFitSnGradData<quadraticFitPolynomial>,
         0
     );
-
-    namespace fv
-    {
-        makeCentredFitSnGradScheme
-        (
-            quadraticFit,
-            quadraticFitPolynomial,
-            centredCFCCellToFaceStencilObject
-        );
-    }
 }
 
+makeCentredFitSnGradScheme
+(
+    quadraticFit,
+    quadraticFitPolynomial,
+    centredCFCCellToFaceStencilObject
+);
+
+
 // ************************************************************************* //
diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/snGradScheme/snGradScheme.H b/src/finiteVolume/finiteVolume/snGradSchemes/snGradScheme/snGradScheme.H
index 8452a907ace..e507cc837f9 100644
--- a/src/finiteVolume/finiteVolume/snGradSchemes/snGradScheme/snGradScheme.H
+++ b/src/finiteVolume/finiteVolume/snGradSchemes/snGradScheme/snGradScheme.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2012 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -189,11 +189,16 @@ public:
 // Add the patch constructor functions to the hash tables
 
 #define makeSnGradTypeScheme(SS, Type)                                         \
+    defineNamedTemplateTypeNameAndDebug(Foam::fv::SS<Foam::Type>, 0);          \
                                                                                \
-defineNamedTemplateTypeNameAndDebug(SS<Type>, 0);                              \
-                                                                               \
-snGradScheme<Type>::addMeshConstructorToTable<SS<Type> >                       \
-    add##SS##Type##MeshConstructorToTable_;
+    namespace Foam                                                             \
+    {                                                                          \
+        namespace fv                                                           \
+        {                                                                      \
+            snGradScheme<Type>::addMeshConstructorToTable<SS<Type> >           \
+                add##SS##Type##MeshConstructorToTable_;                        \
+        }                                                                      \
+    }
 
 #define makeSnGradScheme(SS)                                                   \
                                                                                \
diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/uncorrectedSnGrad/uncorrectedSnGrads.C b/src/finiteVolume/finiteVolume/snGradSchemes/uncorrectedSnGrad/uncorrectedSnGrads.C
index 161244a4ca7..458fe101186 100644
--- a/src/finiteVolume/finiteVolume/snGradSchemes/uncorrectedSnGrad/uncorrectedSnGrads.C
+++ b/src/finiteVolume/finiteVolume/snGradSchemes/uncorrectedSnGrad/uncorrectedSnGrads.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -31,12 +31,6 @@ Description
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeSnGradScheme(uncorrectedSnGrad)
-}
-}
+makeSnGradScheme(uncorrectedSnGrad)
 
 // ************************************************************************* //
diff --git a/src/fvOptions/constraints/general/explicitSetValue/explicitSetValue.C b/src/fvOptions/constraints/general/explicitSetValue/explicitSetValue.C
index d3420bef8dc..2e4dea145fa 100644
--- a/src/fvOptions/constraints/general/explicitSetValue/explicitSetValue.C
+++ b/src/fvOptions/constraints/general/explicitSetValue/explicitSetValue.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,17 +28,11 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvOption(ExplicitSetValue, scalar);
-    makeFvOption(ExplicitSetValue, vector);
-    makeFvOption(ExplicitSetValue, sphericalTensor);
-    makeFvOption(ExplicitSetValue, symmTensor);
-    makeFvOption(ExplicitSetValue, tensor);
-}
-}
+makeFvOption(ExplicitSetValue, scalar);
+makeFvOption(ExplicitSetValue, vector);
+makeFvOption(ExplicitSetValue, sphericalTensor);
+makeFvOption(ExplicitSetValue, symmTensor);
+makeFvOption(ExplicitSetValue, tensor);
 
 
 // ************************************************************************* //
diff --git a/src/fvOptions/fvOptions/makeFvOption.H b/src/fvOptions/fvOptions/makeFvOption.H
index 8900f4d3460..bb4c686a4c5 100644
--- a/src/fvOptions/fvOptions/makeFvOption.H
+++ b/src/fvOptions/fvOptions/makeFvOption.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -35,12 +35,13 @@ License
                                                                               \
     defineTemplateTypeNameAndDebugWithName                                    \
     (                                                                         \
-        Option<Type>,                                                         \
+        Foam::fv::Option<Foam::Type>,                                         \
         #Type#Option,                                                         \
         0                                                                     \
     );                                                                        \
                                                                               \
-    option::adddictionaryConstructorToTable<Option<Type> >                    \
+    Foam::fv::option::adddictionaryConstructorToTable                         \
+        <Foam::fv::Option<Foam::Type> >                                       \
         add##Option##Type##dictionary##ConstructorTooptionTable_
 
 
diff --git a/src/fvOptions/sources/general/codedSource/codedSource.C b/src/fvOptions/sources/general/codedSource/codedSource.C
index 654caa7c20c..05ec6d2405c 100644
--- a/src/fvOptions/sources/general/codedSource/codedSource.C
+++ b/src/fvOptions/sources/general/codedSource/codedSource.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2012-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2012-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,17 +28,11 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvOption(CodedSource, scalar);
-    makeFvOption(CodedSource, vector);
-    makeFvOption(CodedSource, sphericalTensor);
-    makeFvOption(CodedSource, symmTensor);
-    makeFvOption(CodedSource, tensor);
-}
-}
+makeFvOption(CodedSource, scalar);
+makeFvOption(CodedSource, vector);
+makeFvOption(CodedSource, sphericalTensor);
+makeFvOption(CodedSource, symmTensor);
+makeFvOption(CodedSource, tensor);
 
 
 // ************************************************************************* //
diff --git a/src/fvOptions/sources/general/semiImplicitSource/semiImplicitSource.C b/src/fvOptions/sources/general/semiImplicitSource/semiImplicitSource.C
index 0fb667ff06c..b8ae8007692 100644
--- a/src/fvOptions/sources/general/semiImplicitSource/semiImplicitSource.C
+++ b/src/fvOptions/sources/general/semiImplicitSource/semiImplicitSource.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -28,17 +28,11 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-namespace fv
-{
-    makeFvOption(SemiImplicitSource, scalar);
-    makeFvOption(SemiImplicitSource, vector);
-    makeFvOption(SemiImplicitSource, sphericalTensor);
-    makeFvOption(SemiImplicitSource, symmTensor);
-    makeFvOption(SemiImplicitSource, tensor);
-}
-}
+makeFvOption(SemiImplicitSource, scalar);
+makeFvOption(SemiImplicitSource, vector);
+makeFvOption(SemiImplicitSource, sphericalTensor);
+makeFvOption(SemiImplicitSource, symmTensor);
+makeFvOption(SemiImplicitSource, tensor);
 
 
 // ************************************************************************* //
diff --git a/src/lagrangian/Turbulence/parcels/include/makeParcelTurbulenceDispersionModels.H b/src/lagrangian/Turbulence/parcels/include/makeParcelTurbulenceDispersionModels.H
index d2428ba4b23..2ca6ac93bac 100644
--- a/src/lagrangian/Turbulence/parcels/include/makeParcelTurbulenceDispersionModels.H
+++ b/src/lagrangian/Turbulence/parcels/include/makeParcelTurbulenceDispersionModels.H
@@ -35,10 +35,10 @@ License
 
 #define makeParcelTurbulenceDispersionModels(CloudType)                       \
                                                                               \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;           \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        DispersionRASModel<kinematicCloudType>,                               \
+        Foam::DispersionRASModel<kinematicCloudType>,                         \
         0                                                                     \
     );                                                                        \
                                                                               \
diff --git a/src/lagrangian/intermediate/parcels/derived/basicKinematicCollidingParcel/makeBasicKinematicCollidingParcelSubmodels.C b/src/lagrangian/intermediate/parcels/derived/basicKinematicCollidingParcel/makeBasicKinematicCollidingParcelSubmodels.C
index b07c64638e7..8012c20e320 100644
--- a/src/lagrangian/intermediate/parcels/derived/basicKinematicCollidingParcel/makeBasicKinematicCollidingParcelSubmodels.C
+++ b/src/lagrangian/intermediate/parcels/derived/basicKinematicCollidingParcel/makeBasicKinematicCollidingParcelSubmodels.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -38,19 +38,16 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-    makeParcelCloudFunctionObjects(basicKinematicCollidingCloud);
-
-    // Kinematic sub-models
-    makeParcelForces(basicKinematicCollidingCloud);
-    makeParcelDispersionModels(basicKinematicCollidingCloud);
-    makeParcelInjectionModels(basicKinematicCollidingCloud);
-    makeParcelCollisionModels(basicKinematicCollidingCloud);
-    makeParcelPatchInteractionModels(basicKinematicCollidingCloud);
-    makeParcelStochasticCollisionModels(basicKinematicCollidingCloud);
-    makeParcelSurfaceFilmModels(basicKinematicCollidingCloud);
-}
+makeParcelCloudFunctionObjects(basicKinematicCollidingCloud);
+
+// Kinematic sub-models
+makeParcelForces(basicKinematicCollidingCloud);
+makeParcelDispersionModels(basicKinematicCollidingCloud);
+makeParcelInjectionModels(basicKinematicCollidingCloud);
+makeParcelCollisionModels(basicKinematicCollidingCloud);
+makeParcelPatchInteractionModels(basicKinematicCollidingCloud);
+makeParcelStochasticCollisionModels(basicKinematicCollidingCloud);
+makeParcelSurfaceFilmModels(basicKinematicCollidingCloud);
 
 
 // ************************************************************************* //
diff --git a/src/lagrangian/intermediate/parcels/derived/basicKinematicMPPICParcel/makeBasicKinematicMPPICParcelSubmodels.C b/src/lagrangian/intermediate/parcels/derived/basicKinematicMPPICParcel/makeBasicKinematicMPPICParcelSubmodels.C
index 735c21f3efc..b15bc07b422 100644
--- a/src/lagrangian/intermediate/parcels/derived/basicKinematicMPPICParcel/makeBasicKinematicMPPICParcelSubmodels.C
+++ b/src/lagrangian/intermediate/parcels/derived/basicKinematicMPPICParcel/makeBasicKinematicMPPICParcelSubmodels.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -27,7 +27,7 @@ License
 
 #include "makeParcelCloudFunctionObjects.H"
 
-// kinematic sub-models
+// Kinematic sub-models
 #include "makeParcelForces.H"
 #include "makeParcelDispersionModels.H"
 #include "makeParcelInjectionModels.H"
@@ -42,23 +42,21 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-    makeParcelCloudFunctionObjects(basicKinematicMPPICCloud);
+makeParcelCloudFunctionObjects(basicKinematicMPPICCloud);
 
-    // kinematic sub-models
-    makeParcelForces(basicKinematicMPPICCloud);
-    makeParcelDispersionModels(basicKinematicMPPICCloud);
-    makeParcelInjectionModels(basicKinematicMPPICCloud);
-    makeParcelPatchInteractionModels(basicKinematicMPPICCloud);
-    makeParcelStochasticCollisionModels(basicKinematicMPPICCloud);
-    makeParcelSurfaceFilmModels(basicKinematicMPPICCloud);
+// Kinematic sub-models
+makeParcelForces(basicKinematicMPPICCloud);
 
-    // MPPIC sub-models
-    makeMPPICParcelDampingModels(basicKinematicMPPICCloud);
-    makeMPPICParcelIsotropyModels(basicKinematicMPPICCloud);
-    makeMPPICParcelPackingModels(basicKinematicMPPICCloud);
-}
+makeParcelDispersionModels(basicKinematicMPPICCloud);
+makeParcelInjectionModels(basicKinematicMPPICCloud);
+makeParcelPatchInteractionModels(basicKinematicMPPICCloud);
+makeParcelStochasticCollisionModels(basicKinematicMPPICCloud);
+makeParcelSurfaceFilmModels(basicKinematicMPPICCloud);
+
+// MPPIC sub-models
+makeMPPICParcelDampingModels(basicKinematicMPPICCloud);
+makeMPPICParcelIsotropyModels(basicKinematicMPPICCloud);
+makeMPPICParcelPackingModels(basicKinematicMPPICCloud);
 
 
 // ************************************************************************* //
diff --git a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelSubmodels.C b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelSubmodels.C
index 1aaa9590fc3..5969a45f0fa 100644
--- a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelSubmodels.C
+++ b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelSubmodels.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -37,18 +37,15 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-    makeParcelCloudFunctionObjects(basicKinematicCloud);
-
-    // Kinematic sub-models
-    makeParcelForces(basicKinematicCloud);
-    makeParcelDispersionModels(basicKinematicCloud);
-    makeParcelInjectionModels(basicKinematicCloud);
-    makeParcelPatchInteractionModels(basicKinematicCloud);
-    makeParcelStochasticCollisionModels(basicKinematicCloud);
-    makeParcelSurfaceFilmModels(basicKinematicCloud);
-}
+makeParcelCloudFunctionObjects(basicKinematicCloud);
+
+// Kinematic sub-models
+makeParcelForces(basicKinematicCloud);
+makeParcelDispersionModels(basicKinematicCloud);
+makeParcelInjectionModels(basicKinematicCloud);
+makeParcelPatchInteractionModels(basicKinematicCloud);
+makeParcelStochasticCollisionModels(basicKinematicCloud);
+makeParcelSurfaceFilmModels(basicKinematicCloud);
 
 
 // ************************************************************************* //
diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSubmodels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSubmodels.C
index bafe2cdd26a..e5688944dfc 100644
--- a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSubmodels.C
+++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSubmodels.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -48,41 +48,38 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-    makeParcelCloudFunctionObjects(basicReactingMultiphaseCloud);
-
-    // Kinematic sub-models
-    makeThermoParcelForces(basicReactingMultiphaseCloud);
-    makeParcelDispersionModels(basicReactingMultiphaseCloud);
-    makeReactingMultiphaseParcelInjectionModels(basicReactingMultiphaseCloud);
-    makeParcelPatchInteractionModels(basicReactingMultiphaseCloud);
-    makeReactingMultiphaseParcelStochasticCollisionModels
-    (
-        basicReactingMultiphaseCloud
-    );
-    makeReactingParcelSurfaceFilmModels(basicReactingMultiphaseCloud);
-
-    // Thermo sub-models
-    makeParcelHeatTransferModels(basicReactingMultiphaseCloud);
-
-    // Reacting sub-models
-    makeReactingMultiphaseParcelCompositionModels
-    (
-        basicReactingMultiphaseCloud
-    );
-    makeReactingParcelPhaseChangeModels(basicReactingMultiphaseCloud);
-
-    // Reacting multiphase sub-models
-    makeReactingMultiphaseParcelDevolatilisationModels
-    (
-        basicReactingMultiphaseCloud
-    );
-    makeReactingMultiphaseParcelSurfaceReactionModels
-    (
-        basicReactingMultiphaseCloud
-    );
-}
+makeParcelCloudFunctionObjects(basicReactingMultiphaseCloud);
+
+// Kinematic sub-models
+makeThermoParcelForces(basicReactingMultiphaseCloud);
+makeParcelDispersionModels(basicReactingMultiphaseCloud);
+makeReactingMultiphaseParcelInjectionModels(basicReactingMultiphaseCloud);
+makeParcelPatchInteractionModels(basicReactingMultiphaseCloud);
+makeReactingMultiphaseParcelStochasticCollisionModels
+(
+    basicReactingMultiphaseCloud
+);
+makeReactingParcelSurfaceFilmModels(basicReactingMultiphaseCloud);
+
+// Thermo sub-models
+makeParcelHeatTransferModels(basicReactingMultiphaseCloud);
+
+// Reacting sub-models
+makeReactingMultiphaseParcelCompositionModels
+(
+    basicReactingMultiphaseCloud
+);
+makeReactingParcelPhaseChangeModels(basicReactingMultiphaseCloud);
+
+// Reacting multiphase sub-models
+makeReactingMultiphaseParcelDevolatilisationModels
+(
+    basicReactingMultiphaseCloud
+);
+makeReactingMultiphaseParcelSurfaceReactionModels
+(
+    basicReactingMultiphaseCloud
+);
 
 
 // ************************************************************************* //
diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelSubmodels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelSubmodels.C
index e9eb87a2cd0..97e58ffe3a0 100644
--- a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelSubmodels.C
+++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelSubmodels.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -44,25 +44,22 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-    makeParcelCloudFunctionObjects(basicReactingCloud);
-
-    // Kinematic sub-models
-    makeThermoParcelForces(basicReactingCloud);
-    makeParcelDispersionModels(basicReactingCloud);
-    makeReactingParcelInjectionModels(basicReactingCloud);
-    makeParcelPatchInteractionModels(basicReactingCloud);
-    makeParcelStochasticCollisionModels(basicReactingCloud);
-    makeReactingParcelSurfaceFilmModels(basicReactingCloud);
-
-    // Thermo sub-models
-    makeParcelHeatTransferModels(basicReactingCloud);
-
-    // Reacting sub-models
-    makeReactingParcelCompositionModels(basicReactingCloud);
-    makeReactingParcelPhaseChangeModels(basicReactingCloud);
-}
+makeParcelCloudFunctionObjects(basicReactingCloud);
+
+// Kinematic sub-models
+makeThermoParcelForces(basicReactingCloud);
+makeParcelDispersionModels(basicReactingCloud);
+makeReactingParcelInjectionModels(basicReactingCloud);
+makeParcelPatchInteractionModels(basicReactingCloud);
+makeParcelStochasticCollisionModels(basicReactingCloud);
+makeReactingParcelSurfaceFilmModels(basicReactingCloud);
+
+// Thermo sub-models
+makeParcelHeatTransferModels(basicReactingCloud);
+
+// Reacting sub-models
+makeReactingParcelCompositionModels(basicReactingCloud);
+makeReactingParcelPhaseChangeModels(basicReactingCloud);
 
 
 // ************************************************************************* //
diff --git a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelSubmodels.C b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelSubmodels.C
index ba6d30bb91c..71f2c085bc5 100644
--- a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelSubmodels.C
+++ b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelSubmodels.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -40,21 +40,18 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-    makeParcelCloudFunctionObjects(basicThermoCloud);
-
-    // Kinematic sub-models
-    makeThermoParcelForces(basicThermoCloud);
-    makeParcelDispersionModels(basicThermoCloud);
-    makeParcelInjectionModels(basicThermoCloud);
-    makeParcelPatchInteractionModels(basicThermoCloud);
-    makeParcelStochasticCollisionModels(basicThermoCloud);
-    makeParcelSurfaceFilmModels(basicThermoCloud);
-
-    // Thermo sub-models
-    makeParcelHeatTransferModels(basicThermoCloud);
-}
+makeParcelCloudFunctionObjects(basicThermoCloud);
+
+// Kinematic sub-models
+makeThermoParcelForces(basicThermoCloud);
+makeParcelDispersionModels(basicThermoCloud);
+makeParcelInjectionModels(basicThermoCloud);
+makeParcelPatchInteractionModels(basicThermoCloud);
+makeParcelStochasticCollisionModels(basicThermoCloud);
+makeParcelSurfaceFilmModels(basicThermoCloud);
+
+// Thermo sub-models
+makeParcelHeatTransferModels(basicThermoCloud);
 
 
 // ************************************************************************* //
diff --git a/src/lagrangian/intermediate/parcels/include/makeMPPICParcelDampingModels.H b/src/lagrangian/intermediate/parcels/include/makeMPPICParcelDampingModels.H
index 9513a59cc37..61011a66a6b 100644
--- a/src/lagrangian/intermediate/parcels/include/makeMPPICParcelDampingModels.H
+++ b/src/lagrangian/intermediate/parcels/include/makeMPPICParcelDampingModels.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -38,11 +38,9 @@ License
                                                                               \
     makeDampingModel(CloudType);                                              \
                                                                               \
-    namespace DampingModels                                                   \
-    {                                                                         \
-        makeDampingModelType(NoDamping, CloudType);                           \
-        makeDampingModelType(Relaxation, CloudType);                          \
-    }
+    makeDampingModelType(NoDamping, CloudType);                               \
+    makeDampingModelType(Relaxation, CloudType);
+
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/src/lagrangian/intermediate/parcels/include/makeMPPICParcelIsotropyModels.H b/src/lagrangian/intermediate/parcels/include/makeMPPICParcelIsotropyModels.H
index eebab863ea6..0780a03d6bd 100644
--- a/src/lagrangian/intermediate/parcels/include/makeMPPICParcelIsotropyModels.H
+++ b/src/lagrangian/intermediate/parcels/include/makeMPPICParcelIsotropyModels.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -37,11 +37,8 @@ License
                                                                               \
     makeIsotropyModel(CloudType);                                             \
                                                                               \
-    namespace IsotropyModels                                                  \
-    {                                                                         \
-        makeIsotropyModelType(NoIsotropy, CloudType);                         \
-        makeIsotropyModelType(Stochastic, CloudType);                         \
-    }
+    makeIsotropyModelType(NoIsotropy, CloudType);                             \
+    makeIsotropyModelType(Stochastic, CloudType);
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/lagrangian/intermediate/parcels/include/makeMPPICParcelPackingModels.H b/src/lagrangian/intermediate/parcels/include/makeMPPICParcelPackingModels.H
index 2a57875b492..cdcbf17aa87 100644
--- a/src/lagrangian/intermediate/parcels/include/makeMPPICParcelPackingModels.H
+++ b/src/lagrangian/intermediate/parcels/include/makeMPPICParcelPackingModels.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -38,12 +38,9 @@ License
                                                                               \
     makePackingModel(CloudType);                                              \
                                                                               \
-    namespace PackingModels                                                   \
-    {                                                                         \
-        makePackingModelType(NoPacking, CloudType);                           \
-        makePackingModelType(Explicit, CloudType);                            \
-        makePackingModelType(Implicit, CloudType);                            \
-    }
+    makePackingModelType(NoPacking, CloudType);                               \
+    makePackingModelType(Explicit, CloudType);                                \
+    makePackingModelType(Implicit, CloudType);
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
diff --git a/src/lagrangian/intermediate/parcels/include/makeParcelStochasticCollisionModels.H b/src/lagrangian/intermediate/parcels/include/makeParcelStochasticCollisionModels.H
index e949d6e0ad5..d661155657f 100644
--- a/src/lagrangian/intermediate/parcels/include/makeParcelStochasticCollisionModels.H
+++ b/src/lagrangian/intermediate/parcels/include/makeParcelStochasticCollisionModels.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -32,7 +32,7 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-#define makeParcelStochasticCollisionModels(CloudType)                             \
+#define makeParcelStochasticCollisionModels(CloudType)                        \
                                                                               \
     makeStochasticCollisionModel(CloudType);                                  \
     makeStochasticCollisionModelType(NoStochasticCollision, CloudType);
diff --git a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/CloudFunctionObject/CloudFunctionObject.H b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/CloudFunctionObject/CloudFunctionObject.H
index d5b9369df77..616e6314be7 100644
--- a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/CloudFunctionObject/CloudFunctionObject.H
+++ b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/CloudFunctionObject/CloudFunctionObject.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2014 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -186,28 +186,31 @@ public:
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-#define makeCloudFunctionObject(CloudType)                                    \
-                                                                              \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug                                       \
-    (                                                                         \
-        CloudFunctionObject<kinematicCloudType>,                              \
-        0                                                                     \
-    );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        CloudFunctionObject<kinematicCloudType>,                              \
-        dictionary                                                            \
-    );
-
-
-#define makeCloudFunctionObjectType(SS, CloudType)                            \
-                                                                              \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0);           \
-                                                                              \
-    CloudFunctionObject<kinematicCloudType>::                                 \
-        adddictionaryConstructorToTable<SS<kinematicCloudType> >              \
+#define makeCloudFunctionObject(CloudType)                                     \
+                                                                               \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;            \
+    defineNamedTemplateTypeNameAndDebug                                        \
+    (                                                                          \
+        Foam::CloudFunctionObject<kinematicCloudType>,                         \
+        0                                                                      \
+    );                                                                         \
+    namespace Foam                                                             \
+    {                                                                          \
+        defineTemplateRunTimeSelectionTable                                    \
+        (                                                                      \
+            CloudFunctionObject<kinematicCloudType>,                           \
+            dictionary                                                         \
+        );                                                                     \
+    }
+
+
+#define makeCloudFunctionObjectType(SS, CloudType)                             \
+                                                                               \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;            \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<kinematicCloudType>, 0);      \
+                                                                               \
+    Foam::CloudFunctionObject<kinematicCloudType>::                            \
+        adddictionaryConstructorToTable<Foam::SS<kinematicCloudType> >         \
             add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/CollisionModel/CollisionModel.H b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/CollisionModel/CollisionModel.H
index dfaf223a8d8..ff92ce44c87 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/CollisionModel/CollisionModel.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/CollisionModel/CollisionModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -141,26 +141,29 @@ public:
 
 #define makeCollisionModel(CloudType)                                         \
                                                                               \
-    typedef CloudType::collidingCloudType collidingCloudType;                 \
+    typedef Foam::CloudType::collidingCloudType collidingCloudType;           \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        CollisionModel<collidingCloudType>,                                   \
+        Foam::CollisionModel<collidingCloudType>,                             \
         0                                                                     \
     );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        CollisionModel<collidingCloudType>,                                   \
-        dictionary                                                            \
-    );
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            CollisionModel<collidingCloudType>,                               \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makeCollisionModelType(SS, CloudType)                                 \
                                                                               \
-    typedef CloudType::collidingCloudType collidingCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug(SS<collidingCloudType>, 0);           \
+    typedef Foam::CloudType::collidingCloudType collidingCloudType;           \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<collidingCloudType>, 0);     \
                                                                               \
-    CollisionModel<collidingCloudType>::                                      \
-        adddictionaryConstructorToTable<SS<collidingCloudType> >              \
+    Foam::CollisionModel<collidingCloudType>::                                \
+        adddictionaryConstructorToTable<Foam::SS<collidingCloudType> >        \
             add##SS##CloudType##collidingCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairModel/PairModel.H b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairModel/PairModel.H
index cd44be846bb..1be43b5080c 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairModel/PairModel.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/PairModel/PairModel/PairModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -146,20 +146,24 @@ public:
 
 #define makePairModel(CloudType)                                              \
                                                                               \
-    defineNamedTemplateTypeNameAndDebug(PairModel<CloudType>, 0);             \
+    defineNamedTemplateTypeNameAndDebug(Foam::PairModel<Foam::CloudType>, 0); \
                                                                               \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        PairModel<CloudType>,                                                 \
-        dictionary                                                            \
-    );
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            PairModel<Foam::CloudType>,                                       \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makePairModelType(SS, CloudType)                                      \
                                                                               \
-    defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0);                    \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<Foam::CloudType>, 0);        \
                                                                               \
-    PairModel<CloudType>::adddictionaryConstructorToTable<SS<CloudType> >     \
+    Foam::PairModel<Foam::CloudType>::                                        \
+        adddictionaryConstructorToTable<Foam::SS<Foam::CloudType> >           \
         add##SS##CloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.H b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.H
index f2b954b8d95..93ff310ba2a 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/PairCollision/WallModel/WallModel/WallModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -156,21 +156,25 @@ public:
 
 #define makeWallModel(CloudType)                                              \
                                                                               \
-    defineNamedTemplateTypeNameAndDebug(WallModel<CloudType>, 0);             \
+    defineNamedTemplateTypeNameAndDebug(Foam::WallModel<Foam::CloudType>, 0); \
                                                                               \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        WallModel<CloudType>,                                                 \
-        dictionary                                                            \
-    );
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            WallModel<Foam::CloudType>,                                       \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makeWallModelType(SS, CloudType)                                      \
                                                                               \
-    defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0);                    \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<Foam::CloudType>, 0);        \
                                                                               \
-    WallModel<CloudType>::adddictionaryConstructorToTable<SS<CloudType> >     \
-        add##SS##CloudType##ConstructorToTable_;
+    Foam::WallModel<Foam::CloudType>::                                        \
+        adddictionaryConstructorToTable<Foam::SS<Foam::CloudType> >           \
+            add##SS##CloudType##ConstructorToTable_;
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionModel/DispersionModel.H b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionModel/DispersionModel.H
index 323b853907b..7e85e0eb26e 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionModel/DispersionModel.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionModel/DispersionModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -132,22 +132,26 @@ public:
 
 #define makeDispersionModel(CloudType)                                        \
                                                                               \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineTemplateTypeNameAndDebug(DispersionModel<kinematicCloudType>, 0);   \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        DispersionModel<kinematicCloudType>,                                  \
-        dictionary                                                            \
-    );
-
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;           \
+    defineTemplateTypeNameAndDebug                                            \
+        (Foam::DispersionModel<kinematicCloudType>, 0);                       \
+                                                                              \
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            DispersionModel<kinematicCloudType>,                              \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 #define makeDispersionModelType(SS, CloudType)                                \
                                                                               \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0);           \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;           \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<kinematicCloudType>, 0);     \
                                                                               \
-    DispersionModel<kinematicCloudType>::                                     \
-        adddictionaryConstructorToTable<SS<kinematicCloudType> >              \
+    Foam::DispersionModel<kinematicCloudType>::                               \
+        adddictionaryConstructorToTable<Foam::SS<kinematicCloudType> >        \
             add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H
index d9b8505bb55..b44039633c5 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -357,27 +357,31 @@ public:
 
 #define makeInjectionModel(CloudType)                                         \
                                                                               \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;           \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        InjectionModel<kinematicCloudType>,                                   \
+        Foam::InjectionModel<kinematicCloudType>,                             \
         0                                                                     \
     );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        InjectionModel<kinematicCloudType>,                                   \
-        dictionary                                                            \
-    );
+                                                                              \
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            InjectionModel<kinematicCloudType>,                               \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makeInjectionModelType(SS, CloudType)                                 \
                                                                               \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0);           \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;           \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<kinematicCloudType>, 0);     \
                                                                               \
-    InjectionModel<kinematicCloudType>::                                      \
-        adddictionaryConstructorToTable<SS<kinematicCloudType> >              \
-        add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
+    Foam::InjectionModel<kinematicCloudType>::                                \
+        adddictionaryConstructorToTable<Foam::SS<kinematicCloudType> >        \
+            add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/ParticleForce/ParticleForce.H b/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/ParticleForce/ParticleForce.H
index a72abc32174..c2ef62d5361 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/ParticleForce/ParticleForce.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/ParticleForces/ParticleForce/ParticleForce.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2012 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -193,25 +193,30 @@ public:
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-#define makeParticleForceModel(CloudType)                                     \
-                                                                              \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug(ParticleForce<kinematicCloudType>, 0);\
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        ParticleForce<kinematicCloudType>,                                    \
-        dictionary                                                            \
-    );
-
-
-#define makeParticleForceModelType(SS, CloudType)                             \
-                                                                              \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0);           \
-                                                                              \
-    ParticleForce<kinematicCloudType>::                                       \
-        adddictionaryConstructorToTable<SS<kinematicCloudType> >              \
-        add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
+#define makeParticleForceModel(CloudType)                                      \
+                                                                               \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;            \
+    defineNamedTemplateTypeNameAndDebug                                        \
+        (Foam::ParticleForce<kinematicCloudType>, 0);                          \
+                                                                               \
+    namespace Foam                                                             \
+    {                                                                          \
+        defineTemplateRunTimeSelectionTable                                    \
+        (                                                                      \
+            ParticleForce<kinematicCloudType>,                                 \
+            dictionary                                                         \
+        );                                                                     \
+    }
+
+
+#define makeParticleForceModelType(SS, CloudType)                              \
+                                                                               \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;            \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<kinematicCloudType>, 0);      \
+                                                                               \
+    Foam::ParticleForce<kinematicCloudType>::                                  \
+        adddictionaryConstructorToTable<Foam::SS<kinematicCloudType> >         \
+            add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/PatchInteractionModel/PatchInteractionModel.H b/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/PatchInteractionModel/PatchInteractionModel.H
index cd94e369d43..bfc4ae277b1 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/PatchInteractionModel/PatchInteractionModel.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/PatchInteractionModel/PatchInteractionModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -174,26 +174,30 @@ public:
 
 #define makePatchInteractionModel(CloudType)                                  \
                                                                               \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;           \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        PatchInteractionModel<kinematicCloudType>,                            \
+        Foam::PatchInteractionModel<kinematicCloudType>,                      \
         0                                                                     \
     );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        PatchInteractionModel<kinematicCloudType>,                            \
-        dictionary                                                            \
-    );
+                                                                              \
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            PatchInteractionModel<kinematicCloudType>,                        \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makePatchInteractionModelType(SS, CloudType)                          \
                                                                               \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0);           \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;           \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<kinematicCloudType>, 0);     \
                                                                               \
-    PatchInteractionModel<kinematicCloudType>::                               \
-        adddictionaryConstructorToTable<SS<kinematicCloudType> >              \
+    Foam::PatchInteractionModel<kinematicCloudType>::                         \
+        adddictionaryConstructorToTable<Foam::SS<kinematicCloudType> >        \
             add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/StochasticCollision/StochasticCollisionModel/StochasticCollisionModel.H b/src/lagrangian/intermediate/submodels/Kinematic/StochasticCollision/StochasticCollisionModel/StochasticCollisionModel.H
index b7f86419412..823a458aee7 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/StochasticCollision/StochasticCollisionModel/StochasticCollisionModel.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/StochasticCollision/StochasticCollisionModel/StochasticCollisionModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -131,28 +131,31 @@ public:
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-#define makeStochasticCollisionModel(CloudType)                                         \
-                                                                              \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug                                       \
-    (                                                                         \
-        StochasticCollisionModel<kinematicCloudType>,                         \
-        0                                                                     \
-    );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        StochasticCollisionModel<kinematicCloudType>,                         \
-        dictionary                                                            \
-    );
+#define makeStochasticCollisionModel(CloudType)                                \
+                                                                               \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;            \
+    defineNamedTemplateTypeNameAndDebug                                        \
+    (                                                                          \
+        Foam::StochasticCollisionModel<kinematicCloudType>,                    \
+        0                                                                      \
+    );                                                                         \
+    namespace Foam                                                             \
+    {                                                                          \
+        defineTemplateRunTimeSelectionTable                                    \
+        (                                                                      \
+            StochasticCollisionModel<kinematicCloudType>,                      \
+            dictionary                                                         \
+        );                                                                     \
+    }
 
 
 #define makeStochasticCollisionModelType(SS, CloudType)                       \
                                                                               \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0);           \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;           \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<kinematicCloudType>, 0);     \
                                                                               \
-    StochasticCollisionModel<kinematicCloudType>::                            \
-        adddictionaryConstructorToTable<SS<kinematicCloudType> >              \
+    Foam::StochasticCollisionModel<kinematicCloudType>::                      \
+        adddictionaryConstructorToTable<Foam::SS<kinematicCloudType> >        \
             add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/Kinematic/SurfaceFilmModel/SurfaceFilmModel/SurfaceFilmModel.H b/src/lagrangian/intermediate/submodels/Kinematic/SurfaceFilmModel/SurfaceFilmModel/SurfaceFilmModel.H
index 9098782204e..65a25069284 100644
--- a/src/lagrangian/intermediate/submodels/Kinematic/SurfaceFilmModel/SurfaceFilmModel/SurfaceFilmModel.H
+++ b/src/lagrangian/intermediate/submodels/Kinematic/SurfaceFilmModel/SurfaceFilmModel/SurfaceFilmModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -235,28 +235,31 @@ public:
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-#define makeSurfaceFilmModel(CloudType)                                       \
-                                                                              \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug                                       \
-    (                                                                         \
-        SurfaceFilmModel<kinematicCloudType>,                                 \
-        0                                                                     \
-    );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        SurfaceFilmModel<kinematicCloudType>,                                 \
-        dictionary                                                            \
-    );
+#define makeSurfaceFilmModel(CloudType)                                        \
+                                                                               \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;            \
+    defineNamedTemplateTypeNameAndDebug                                        \
+    (                                                                          \
+        Foam::SurfaceFilmModel<kinematicCloudType>,                            \
+        0                                                                      \
+    );                                                                         \
+    namespace Foam                                                             \
+    {                                                                          \
+        defineTemplateRunTimeSelectionTable                                    \
+        (                                                                      \
+            SurfaceFilmModel<kinematicCloudType>,                              \
+            dictionary                                                         \
+        );                                                                     \
+    }
 
 
-#define makeSurfaceFilmModelType(SS, CloudType)                               \
-                                                                              \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
-    defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0);           \
-                                                                              \
-    SurfaceFilmModel<kinematicCloudType>::                                    \
-        adddictionaryConstructorToTable<SS<kinematicCloudType> >              \
+#define makeSurfaceFilmModelType(SS, CloudType)                                \
+                                                                               \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;            \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<kinematicCloudType>, 0);      \
+                                                                               \
+    Foam::SurfaceFilmModel<kinematicCloudType>::                               \
+        adddictionaryConstructorToTable<Foam::SS<kinematicCloudType> >         \
             add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/makeAveragingMethods.C b/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/makeAveragingMethods.C
index 2c36126d8fa..dac7edc27aa 100644
--- a/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/makeAveragingMethods.C
+++ b/src/lagrangian/intermediate/submodels/MPPIC/AveragingMethods/makeAveragingMethods.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013-2014 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -31,60 +31,87 @@ License
 #include "Dual.H"
 #include "Moment.H"
 
+// Scalar interpolation
+defineNamedTemplateTypeNameAndDebug(Foam::AveragingMethod<Foam::scalar>, 0);
 namespace Foam
 {
-    // Scalar interpolation
-    defineNamedTemplateTypeNameAndDebug(AveragingMethod<scalar>, 0);
     defineTemplateRunTimeSelectionTable
     (
-        AveragingMethod<scalar>,
+        AveragingMethod<Foam::scalar>,
         dictionary
     );
+}
 
-    // Vector interpolation
-    defineNamedTemplateTypeNameAndDebug(AveragingMethod<vector>, 0);
+// Vector interpolation
+defineNamedTemplateTypeNameAndDebug(Foam::AveragingMethod<Foam::vector>, 0);
+namespace Foam
+{
     defineTemplateRunTimeSelectionTable
     (
-        AveragingMethod<vector>,
+        Foam::AveragingMethod<Foam::vector>,
         dictionary
     );
-
-    namespace AveragingMethods
-    {
-        // Basic interpolation
-        defineNamedTemplateTypeNameAndDebug(Basic<scalar>, 0);
-        AveragingMethod<scalar>::
-            adddictionaryConstructorToTable<Basic<scalar> >
-            addBasicscalarConstructorToTable_;
-
-        defineNamedTemplateTypeNameAndDebug(Basic<vector>, 0);
-        AveragingMethod<vector>::
-            adddictionaryConstructorToTable<Basic<vector> >
-            addBasicvectorConstructorToTable_;
-
-        // Dual interpolation
-        defineNamedTemplateTypeNameAndDebug(Dual<scalar>, 0);
-        AveragingMethod<scalar>::
-            adddictionaryConstructorToTable<Dual<scalar> >
-            addDualscalarConstructorToTable_;
-
-        defineNamedTemplateTypeNameAndDebug(Dual<vector>, 0);
-        AveragingMethod<vector>::
-            adddictionaryConstructorToTable<Dual<vector> >
-            addDualvectorConstructorToTable_;
-
-        // Moment interpolation
-        defineNamedTemplateTypeNameAndDebug(Moment<scalar>, 0);
-        AveragingMethod<scalar>::
-            adddictionaryConstructorToTable<Moment<scalar> >
-            addMomentscalarConstructorToTable_;
-
-        defineNamedTemplateTypeNameAndDebug(Moment<vector>, 0);
-        AveragingMethod<vector>::
-            adddictionaryConstructorToTable<Moment<vector> >
-            addMomentvectorConstructorToTable_;
-    }
 }
 
 
+// Basic interpolation
+defineNamedTemplateTypeNameAndDebug
+(
+    Foam::AveragingMethods::Basic<Foam::scalar>,
+    0
+);
+Foam::AveragingMethod<Foam::scalar>::
+adddictionaryConstructorToTable<Foam::AveragingMethods::Basic<Foam::scalar> >
+    addBasicscalarConstructorToTable_;
+
+defineNamedTemplateTypeNameAndDebug
+(
+    Foam::AveragingMethods::Basic<Foam::vector>,
+    0
+);
+Foam::AveragingMethod<Foam::vector>::
+adddictionaryConstructorToTable<Foam::AveragingMethods::Basic<Foam::vector> >
+    addBasicvectorConstructorToTable_;
+
+
+// Dual interpolation
+defineNamedTemplateTypeNameAndDebug
+(
+    Foam::AveragingMethods::Dual<Foam::scalar>,
+    0
+);
+Foam::AveragingMethod<Foam::scalar>::
+adddictionaryConstructorToTable<Foam::AveragingMethods::Dual<Foam::scalar> >
+    addDualscalarConstructorToTable_;
+
+defineNamedTemplateTypeNameAndDebug
+(
+    Foam::AveragingMethods::Dual<Foam::vector>,
+    0
+);
+Foam::AveragingMethod<Foam::vector>::
+adddictionaryConstructorToTable<Foam::AveragingMethods::Dual<Foam::vector> >
+    addDualvectorConstructorToTable_;
+
+
+// Moment interpolation
+defineNamedTemplateTypeNameAndDebug
+(
+    Foam::AveragingMethods::Moment<Foam::scalar>,
+    0
+);
+Foam::AveragingMethod<Foam::scalar>::
+adddictionaryConstructorToTable<Foam::AveragingMethods::Moment<Foam::scalar> >
+    addMomentscalarConstructorToTable_;
+
+defineNamedTemplateTypeNameAndDebug
+(
+    Foam::AveragingMethods::Moment<Foam::vector>,
+    0
+);
+Foam::AveragingMethod<Foam::vector>::
+adddictionaryConstructorToTable<Foam::AveragingMethods::Moment<Foam::vector> >
+    addMomentvectorConstructorToTable_;
+
+
 // ************************************************************************* //
diff --git a/src/lagrangian/intermediate/submodels/MPPIC/DampingModels/DampingModel/DampingModel.H b/src/lagrangian/intermediate/submodels/MPPIC/DampingModels/DampingModel/DampingModel.H
index 79edceeb9c6..9c8e1429381 100644
--- a/src/lagrangian/intermediate/submodels/MPPIC/DampingModels/DampingModel/DampingModel.H
+++ b/src/lagrangian/intermediate/submodels/MPPIC/DampingModels/DampingModel/DampingModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -137,26 +137,32 @@ public:
 
 #define makeDampingModel(CloudType)                                            \
                                                                                \
-    typedef CloudType::MPPICCloudType MPPICCloudType;                          \
+    typedef Foam::CloudType::MPPICCloudType MPPICCloudType;                    \
     defineNamedTemplateTypeNameAndDebug                                        \
     (                                                                          \
-        DampingModel<MPPICCloudType>,                                          \
+        Foam::DampingModel<MPPICCloudType>,                                    \
         0                                                                      \
     );                                                                         \
-    defineTemplateRunTimeSelectionTable                                        \
-    (                                                                          \
-        DampingModel<MPPICCloudType>,                                          \
-        dictionary                                                             \
-    );
+                                                                               \
+    namespace Foam                                                             \
+    {                                                                          \
+        defineTemplateRunTimeSelectionTable                                    \
+        (                                                                      \
+            DampingModel<MPPICCloudType>,                                      \
+            dictionary                                                         \
+        );                                                                     \
+    }
 
 
 #define makeDampingModelType(SS, CloudType)                                    \
                                                                                \
-    typedef CloudType::MPPICCloudType MPPICCloudType;                          \
-    defineNamedTemplateTypeNameAndDebug(SS<MPPICCloudType>, 0);                \
+    typedef Foam::CloudType::MPPICCloudType MPPICCloudType;                    \
+    defineNamedTemplateTypeNameAndDebug                                        \
+        (Foam::DampingModels::SS<MPPICCloudType>, 0);                          \
                                                                                \
-    DampingModel<MPPICCloudType>::                                             \
-        adddictionaryConstructorToTable<SS<MPPICCloudType> >                   \
+    Foam::DampingModel<MPPICCloudType>::                                       \
+        adddictionaryConstructorToTable                                        \
+        <Foam::DampingModels::SS<MPPICCloudType> >                             \
             add##SS##CloudType##MPPICCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/MPPIC/IsotropyModels/IsotropyModel/IsotropyModel.H b/src/lagrangian/intermediate/submodels/MPPIC/IsotropyModels/IsotropyModel/IsotropyModel.H
index 103b748dc98..3523effa8f8 100644
--- a/src/lagrangian/intermediate/submodels/MPPIC/IsotropyModels/IsotropyModel/IsotropyModel.H
+++ b/src/lagrangian/intermediate/submodels/MPPIC/IsotropyModels/IsotropyModel/IsotropyModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013-2014 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -129,28 +129,34 @@ public:
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-#define makeIsotropyModel(CloudType)                                          \
-                                                                              \
-    typedef CloudType::MPPICCloudType MPPICCloudType;                         \
-    defineNamedTemplateTypeNameAndDebug                                       \
-    (                                                                         \
-        IsotropyModel<MPPICCloudType>,                                        \
-        0                                                                     \
-    );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        IsotropyModel<MPPICCloudType>,                                        \
-        dictionary                                                            \
-    );
-
-
-#define makeIsotropyModelType(SS, CloudType)                                  \
-                                                                              \
-    typedef CloudType::MPPICCloudType MPPICCloudType;                         \
-    defineNamedTemplateTypeNameAndDebug(SS<MPPICCloudType>, 0);               \
-                                                                              \
-    IsotropyModel<MPPICCloudType>::                                           \
-        adddictionaryConstructorToTable<SS<MPPICCloudType> >                  \
+#define makeIsotropyModel(CloudType)                                           \
+                                                                               \
+    typedef Foam::CloudType::MPPICCloudType MPPICCloudType;                    \
+    defineNamedTemplateTypeNameAndDebug                                        \
+    (                                                                          \
+        Foam::IsotropyModel<MPPICCloudType>,                                   \
+        0                                                                      \
+    );                                                                         \
+                                                                               \
+    namespace Foam                                                             \
+    {                                                                          \
+        defineTemplateRunTimeSelectionTable                                    \
+        (                                                                      \
+            IsotropyModel<MPPICCloudType>,                                     \
+            dictionary                                                         \
+        );                                                                     \
+    }
+
+
+#define makeIsotropyModelType(SS, CloudType)                                   \
+                                                                               \
+    typedef Foam::CloudType::MPPICCloudType MPPICCloudType;                    \
+    defineNamedTemplateTypeNameAndDebug                                        \
+        (Foam::IsotropyModels::SS<MPPICCloudType>, 0);                         \
+                                                                               \
+    Foam::IsotropyModel<MPPICCloudType>::                                      \
+        adddictionaryConstructorToTable                                        \
+        <Foam::IsotropyModels::SS<MPPICCloudType> >                            \
             add##SS##CloudType##MPPICCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/PackingModel/PackingModel.H b/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/PackingModel/PackingModel.H
index 6fcddbace16..4258773a492 100644
--- a/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/PackingModel/PackingModel.H
+++ b/src/lagrangian/intermediate/submodels/MPPIC/PackingModels/PackingModel/PackingModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -140,28 +140,34 @@ public:
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-#define makePackingModel(CloudType)                                           \
-                                                                              \
-    typedef CloudType::MPPICCloudType MPPICCloudType;                         \
-    defineNamedTemplateTypeNameAndDebug                                       \
-    (                                                                         \
-        PackingModel<MPPICCloudType>,                                         \
-        0                                                                     \
-    );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        PackingModel<MPPICCloudType>,                                         \
-        dictionary                                                            \
-    );
-
-
-#define makePackingModelType(SS, CloudType)                                   \
-                                                                              \
-    typedef CloudType::MPPICCloudType MPPICCloudType;                         \
-    defineNamedTemplateTypeNameAndDebug(SS<MPPICCloudType>, 0);               \
-                                                                              \
-    PackingModel<MPPICCloudType>::                                            \
-        adddictionaryConstructorToTable<SS<MPPICCloudType> >                  \
+#define makePackingModel(CloudType)                                            \
+                                                                               \
+    typedef Foam::CloudType::MPPICCloudType MPPICCloudType;                    \
+    defineNamedTemplateTypeNameAndDebug                                        \
+    (                                                                          \
+        Foam::PackingModel<MPPICCloudType>,                                    \
+        0                                                                      \
+    );                                                                         \
+                                                                               \
+    namespace Foam                                                             \
+    {                                                                          \
+        defineTemplateRunTimeSelectionTable                                    \
+        (                                                                      \
+            PackingModel<MPPICCloudType>,                                      \
+            dictionary                                                         \
+        );                                                                     \
+    }
+
+
+#define makePackingModelType(SS, CloudType)                                    \
+                                                                               \
+    typedef Foam::CloudType::MPPICCloudType MPPICCloudType;                    \
+    defineNamedTemplateTypeNameAndDebug                                        \
+        (Foam::PackingModels::SS<MPPICCloudType>, 0);                          \
+                                                                               \
+    Foam::PackingModel<MPPICCloudType>::                                       \
+        adddictionaryConstructorToTable                                        \
+        <Foam::PackingModels::SS<MPPICCloudType> >                             \
             add##SS##CloudType##MPPICCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H
index c876286cc8c..c786615bec5 100644
--- a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H
+++ b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -283,26 +283,29 @@ public:
 
 #define makeCompositionModel(CloudType)                                       \
                                                                               \
-    typedef CloudType::reactingCloudType reactingCloudType;                   \
+    typedef Foam::CloudType::reactingCloudType reactingCloudType;             \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        CompositionModel<reactingCloudType>,                                  \
+        Foam::CompositionModel<reactingCloudType>,                            \
         0                                                                     \
     );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        CompositionModel<reactingCloudType>,                                  \
-        dictionary                                                            \
-    );
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            CompositionModel<reactingCloudType>,                              \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makeCompositionModelType(SS, CloudType)                               \
                                                                               \
-    typedef CloudType::reactingCloudType reactingCloudType;                   \
-    defineNamedTemplateTypeNameAndDebug(SS<reactingCloudType>, 0);            \
+    typedef Foam::CloudType::reactingCloudType reactingCloudType;             \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<reactingCloudType>, 0);      \
                                                                               \
-    CompositionModel<reactingCloudType>::                                     \
-        adddictionaryConstructorToTable<SS<reactingCloudType> >               \
+    Foam::CompositionModel<reactingCloudType>::                               \
+        adddictionaryConstructorToTable<Foam::SS<reactingCloudType> >         \
             add##SS##CloudType##reactingCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/PhaseChangeModel/PhaseChangeModel.H b/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/PhaseChangeModel/PhaseChangeModel.H
index e2e868e7dab..22947cab7d8 100644
--- a/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/PhaseChangeModel/PhaseChangeModel.H
+++ b/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/PhaseChangeModel/PhaseChangeModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -209,26 +209,29 @@ public:
 
 #define makePhaseChangeModel(CloudType)                                       \
                                                                               \
-    typedef CloudType::reactingCloudType reactingCloudType;                   \
+    typedef Foam::CloudType::reactingCloudType reactingCloudType;             \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        PhaseChangeModel<reactingCloudType>,                                  \
+        Foam::PhaseChangeModel<reactingCloudType>,                            \
         0                                                                     \
     );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        PhaseChangeModel<reactingCloudType>,                                  \
-        dictionary                                                            \
-    );
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            PhaseChangeModel<reactingCloudType>,                              \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makePhaseChangeModelType(SS, CloudType)                               \
                                                                               \
-    typedef CloudType::reactingCloudType reactingCloudType;                   \
-    defineNamedTemplateTypeNameAndDebug(SS<reactingCloudType>, 0);            \
+    typedef Foam::CloudType::reactingCloudType reactingCloudType;             \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<reactingCloudType>, 0);      \
                                                                               \
-    PhaseChangeModel<reactingCloudType>::                                     \
-        adddictionaryConstructorToTable<SS<reactingCloudType> >               \
+    Foam::PhaseChangeModel<reactingCloudType>::                               \
+        adddictionaryConstructorToTable<Foam::SS<reactingCloudType> >         \
             add##SS##CloudType##reactingCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/ReactingMultiphase/DevolatilisationModel/DevolatilisationModel/DevolatilisationModel.H b/src/lagrangian/intermediate/submodels/ReactingMultiphase/DevolatilisationModel/DevolatilisationModel/DevolatilisationModel.H
index 3db94c0023e..41d0403cdd7 100644
--- a/src/lagrangian/intermediate/submodels/ReactingMultiphase/DevolatilisationModel/DevolatilisationModel/DevolatilisationModel.H
+++ b/src/lagrangian/intermediate/submodels/ReactingMultiphase/DevolatilisationModel/DevolatilisationModel/DevolatilisationModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -156,28 +156,33 @@ public:
 
 #define makeDevolatilisationModel(CloudType)                                  \
                                                                               \
-    typedef CloudType::reactingMultiphaseCloudType                            \
+    typedef Foam::CloudType::reactingMultiphaseCloudType                      \
         reactingMultiphaseCloudType;                                          \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        DevolatilisationModel<reactingMultiphaseCloudType>,                   \
+        Foam::DevolatilisationModel<reactingMultiphaseCloudType>,             \
         0                                                                     \
     );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        DevolatilisationModel<reactingMultiphaseCloudType>,                   \
-        dictionary                                                            \
-    );
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            DevolatilisationModel<reactingMultiphaseCloudType>,               \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makeDevolatilisationModelType(SS, CloudType)                          \
                                                                               \
-    typedef CloudType::reactingMultiphaseCloudType                            \
+    typedef Foam::CloudType::reactingMultiphaseCloudType                      \
         reactingMultiphaseCloudType;                                          \
-    defineNamedTemplateTypeNameAndDebug(SS<reactingMultiphaseCloudType>, 0);  \
+    defineNamedTemplateTypeNameAndDebug                                       \
+        (Foam::SS<reactingMultiphaseCloudType>, 0);                           \
                                                                               \
-    DevolatilisationModel<reactingMultiphaseCloudType>::                      \
-        adddictionaryConstructorToTable<SS<reactingMultiphaseCloudType> >     \
+    Foam::DevolatilisationModel<reactingMultiphaseCloudType>::                \
+        adddictionaryConstructorToTable                                       \
+        <Foam::SS<reactingMultiphaseCloudType> >                              \
         add##SS##CloudType##reactingMultiphaseCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H b/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H
index 446b01022e6..54892c4ba7d 100644
--- a/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H
+++ b/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -166,28 +166,33 @@ public:
 
 #define makeSurfaceReactionModel(CloudType)                                   \
                                                                               \
-    typedef CloudType::reactingMultiphaseCloudType                            \
+    typedef Foam::CloudType::reactingMultiphaseCloudType                      \
         reactingMultiphaseCloudType;                                          \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        SurfaceReactionModel<reactingMultiphaseCloudType>,                    \
+        Foam::SurfaceReactionModel<reactingMultiphaseCloudType>,              \
         0                                                                     \
     );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        SurfaceReactionModel<reactingMultiphaseCloudType>,                    \
-        dictionary                                                            \
-    );
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            SurfaceReactionModel<reactingMultiphaseCloudType>,                \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makeSurfaceReactionModelType(SS, CloudType)                           \
                                                                               \
-    typedef CloudType::reactingMultiphaseCloudType                            \
+    typedef Foam::CloudType::reactingMultiphaseCloudType                      \
         reactingMultiphaseCloudType;                                          \
-    defineNamedTemplateTypeNameAndDebug(SS<reactingMultiphaseCloudType>, 0);  \
+    defineNamedTemplateTypeNameAndDebug                                       \
+        (Foam::SS<reactingMultiphaseCloudType>, 0);                           \
                                                                               \
-    SurfaceReactionModel<reactingMultiphaseCloudType>::                       \
-        adddictionaryConstructorToTable<SS<reactingMultiphaseCloudType> >     \
+    Foam::SurfaceReactionModel<reactingMultiphaseCloudType>::                 \
+        adddictionaryConstructorToTable                                       \
+        <Foam::SS<reactingMultiphaseCloudType> >                              \
         add##SS##CloudType##reactingMultiphaseCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H
index 3244007e336..70500e7e58d 100644
--- a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H
+++ b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -155,26 +155,29 @@ public:
 
 #define makeHeatTransferModel(CloudType)                                      \
                                                                               \
-    typedef CloudType::thermoCloudType thermoCloudType;                       \
+    typedef Foam::CloudType::thermoCloudType thermoCloudType;                 \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        HeatTransferModel<thermoCloudType>,                                   \
+        Foam::HeatTransferModel<thermoCloudType>,                             \
         0                                                                     \
     );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        HeatTransferModel<thermoCloudType>,                                   \
-        dictionary                                                            \
-    );
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            HeatTransferModel<thermoCloudType>,                               \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makeHeatTransferModelType(SS, CloudType)                              \
                                                                               \
-    typedef CloudType::thermoCloudType thermoCloudType;                       \
-    defineNamedTemplateTypeNameAndDebug(SS<thermoCloudType>, 0);              \
+    typedef Foam::CloudType::thermoCloudType thermoCloudType;                 \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<thermoCloudType>, 0);        \
                                                                               \
-    HeatTransferModel<thermoCloudType>::                                      \
-        adddictionaryConstructorToTable<SS<thermoCloudType> >                 \
+    Foam::HeatTransferModel<thermoCloudType>::                                \
+        adddictionaryConstructorToTable<Foam::SS<thermoCloudType> >           \
             add##SS##CloudType##thermoCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/spray/parcels/derived/basicSprayParcel/makeBasicSprayParcelSubmodels.C b/src/lagrangian/spray/parcels/derived/basicSprayParcel/makeBasicSprayParcelSubmodels.C
index 0430e33f916..51aafc76266 100644
--- a/src/lagrangian/spray/parcels/derived/basicSprayParcel/makeBasicSprayParcelSubmodels.C
+++ b/src/lagrangian/spray/parcels/derived/basicSprayParcel/makeBasicSprayParcelSubmodels.C
@@ -51,32 +51,29 @@ License
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-    makeParcelCloudFunctionObjects(basicSprayCloud);
-
-    // Kinematic sub-models
-    makeThermoParcelForces(basicSprayCloud);
-    makeThermoParcelTurbulenceForces(basicSprayCloud);
-    makeParcelDispersionModels(basicSprayCloud);
-    makeParcelTurbulenceDispersionModels(basicSprayCloud);
-    makeSprayParcelInjectionModels(basicSprayCloud);
-    makeParcelPatchInteractionModels(basicSprayCloud);
-    makeSprayParcelStochasticCollisionModels(basicSprayCloud);
-
-    // Thermo sub-models
-    makeParcelHeatTransferModels(basicSprayCloud);
-
-    // Reacting sub-models
-    makeReactingParcelCompositionModels(basicSprayCloud);
-    makeReactingParcelPhaseChangeModels(basicSprayCloud);
-    makeReactingParcelSurfaceFilmModels(basicSprayCloud);
-
-    // Spray sub-models
-    makeParticleForceModelType(DistortedSphereDragForce, basicSprayCloud);
-    makeSprayParcelAtomizationModels(basicSprayCloud);
-    makeSprayParcelBreakupModels(basicSprayCloud);
-};
+makeParcelCloudFunctionObjects(basicSprayCloud);
+
+// Kinematic sub-models
+makeThermoParcelForces(basicSprayCloud);
+makeThermoParcelTurbulenceForces(basicSprayCloud);
+makeParcelDispersionModels(basicSprayCloud);
+makeParcelTurbulenceDispersionModels(basicSprayCloud);
+makeSprayParcelInjectionModels(basicSprayCloud);
+makeParcelPatchInteractionModels(basicSprayCloud);
+makeSprayParcelStochasticCollisionModels(basicSprayCloud);
+
+// Thermo sub-models
+makeParcelHeatTransferModels(basicSprayCloud);
+
+// Reacting sub-models
+makeReactingParcelCompositionModels(basicSprayCloud);
+makeReactingParcelPhaseChangeModels(basicSprayCloud);
+makeReactingParcelSurfaceFilmModels(basicSprayCloud);
+
+// Spray sub-models
+makeParticleForceModelType(DistortedSphereDragForce, basicSprayCloud);
+makeSprayParcelAtomizationModels(basicSprayCloud);
+makeSprayParcelBreakupModels(basicSprayCloud);
 
 
 // ************************************************************************* //
diff --git a/src/lagrangian/spray/submodels/AtomizationModel/AtomizationModel/AtomizationModel.H b/src/lagrangian/spray/submodels/AtomizationModel/AtomizationModel/AtomizationModel.H
index fc8d4c03750..58073f2f718 100644
--- a/src/lagrangian/spray/submodels/AtomizationModel/AtomizationModel/AtomizationModel.H
+++ b/src/lagrangian/spray/submodels/AtomizationModel/AtomizationModel/AtomizationModel.H
@@ -152,26 +152,30 @@ public:
 
 #define makeAtomizationModel(CloudType)                                       \
                                                                               \
-    typedef CloudType::sprayCloudType sprayCloudType;                         \
+    typedef Foam::CloudType::sprayCloudType sprayCloudType;                   \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        AtomizationModel<sprayCloudType>,                                     \
+        Foam::AtomizationModel<sprayCloudType>,                               \
         0                                                                     \
     );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        AtomizationModel<sprayCloudType>,                                     \
-        dictionary                                                            \
-    );
+                                                                              \
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            AtomizationModel<sprayCloudType>,                                 \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makeAtomizationModelType(SS, CloudType)                               \
                                                                               \
-    typedef CloudType::sprayCloudType sprayCloudType;                         \
-    defineNamedTemplateTypeNameAndDebug(SS<sprayCloudType>, 0);               \
+    typedef Foam::CloudType::sprayCloudType sprayCloudType;                   \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<sprayCloudType>, 0);         \
                                                                               \
-    AtomizationModel<sprayCloudType>::                                        \
-        adddictionaryConstructorToTable<SS<sprayCloudType> >                  \
+    Foam::AtomizationModel<sprayCloudType>::                                  \
+        adddictionaryConstructorToTable<Foam::SS<sprayCloudType> >            \
             add##SS##CloudType##sprayCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/spray/submodels/BreakupModel/BreakupModel/BreakupModel.H b/src/lagrangian/spray/submodels/BreakupModel/BreakupModel/BreakupModel.H
index fdbd849b609..a0546fe784e 100644
--- a/src/lagrangian/spray/submodels/BreakupModel/BreakupModel/BreakupModel.H
+++ b/src/lagrangian/spray/submodels/BreakupModel/BreakupModel/BreakupModel.H
@@ -199,26 +199,30 @@ public:
 
 #define makeBreakupModel(CloudType)                                           \
                                                                               \
-    typedef CloudType::sprayCloudType sprayCloudType;                         \
+    typedef Foam::CloudType::sprayCloudType sprayCloudType;                   \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        BreakupModel<sprayCloudType>,                                         \
+        Foam::BreakupModel<sprayCloudType>,                                   \
         0                                                                     \
     );                                                                        \
-    defineTemplateRunTimeSelectionTable                                       \
-    (                                                                         \
-        BreakupModel<sprayCloudType>,                                         \
-        dictionary                                                            \
-    );
+                                                                              \
+    namespace Foam                                                            \
+    {                                                                         \
+        defineTemplateRunTimeSelectionTable                                   \
+        (                                                                     \
+            BreakupModel<sprayCloudType>,                                     \
+            dictionary                                                        \
+        );                                                                    \
+    }
 
 
 #define makeBreakupModelType(SS, CloudType)                                   \
                                                                               \
-    typedef CloudType::sprayCloudType sprayCloudType;                         \
-    defineNamedTemplateTypeNameAndDebug(SS<sprayCloudType>, 0);               \
+    typedef Foam::CloudType::sprayCloudType sprayCloudType;                   \
+    defineNamedTemplateTypeNameAndDebug(Foam::SS<sprayCloudType>, 0);         \
                                                                               \
-    BreakupModel<sprayCloudType>::                                            \
-        adddictionaryConstructorToTable<SS<sprayCloudType> >                  \
+    Foam::BreakupModel<sprayCloudType>::                                      \
+        adddictionaryConstructorToTable<Foam::SS<sprayCloudType> >            \
             add##SS##CloudType##sprayCloudType##ConstructorToTable_;
 
 
diff --git a/src/lagrangian/turbulence/parcels/include/makeParcelTurbulenceDispersionModels.H b/src/lagrangian/turbulence/parcels/include/makeParcelTurbulenceDispersionModels.H
index d2428ba4b23..2ca6ac93bac 100644
--- a/src/lagrangian/turbulence/parcels/include/makeParcelTurbulenceDispersionModels.H
+++ b/src/lagrangian/turbulence/parcels/include/makeParcelTurbulenceDispersionModels.H
@@ -35,10 +35,10 @@ License
 
 #define makeParcelTurbulenceDispersionModels(CloudType)                       \
                                                                               \
-    typedef CloudType::kinematicCloudType kinematicCloudType;                 \
+    typedef Foam::CloudType::kinematicCloudType kinematicCloudType;           \
     defineNamedTemplateTypeNameAndDebug                                       \
     (                                                                         \
-        DispersionRASModel<kinematicCloudType>,                               \
+        Foam::DispersionRASModel<kinematicCloudType>,                         \
         0                                                                     \
     );                                                                        \
                                                                               \
diff --git a/src/thermophysicalModels/radiation/submodels/sootModel/mixtureFractionSoot/mixtureFractionSoots.C b/src/thermophysicalModels/radiation/submodels/sootModel/mixtureFractionSoot/mixtureFractionSoots.C
index fba1827c867..0f6c482e016 100644
--- a/src/thermophysicalModels/radiation/submodels/sootModel/mixtureFractionSoot/mixtureFractionSoots.C
+++ b/src/thermophysicalModels/radiation/submodels/sootModel/mixtureFractionSoot/mixtureFractionSoots.C
@@ -28,20 +28,9 @@ License
 #include "makeSootTypes.H"
 #include "thermoPhysicsTypes.H"
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-namespace radiation
-{
 // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
 
 makeSootTypesThermo(mixtureFractionSoot, gasHThermoPhysics);
 makeSootTypesThermo(mixtureFractionSoot, gasEThermoPhysics);
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-} // End namespace Foam
-} // End namespace radiation
-
 // ************************************************************************* //
diff --git a/src/thermophysicalModels/radiation/submodels/sootModel/sootModel/makeSootTypes.H b/src/thermophysicalModels/radiation/submodels/sootModel/sootModel/makeSootTypes.H
index 8e08b21b504..4676b5efe73 100644
--- a/src/thermophysicalModels/radiation/submodels/sootModel/sootModel/makeSootTypes.H
+++ b/src/thermophysicalModels/radiation/submodels/sootModel/sootModel/makeSootTypes.H
@@ -32,8 +32,8 @@ License
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
 #define makeSootTypesThermo(sootModelType, Thermo)                            \
-                                                                              \
-    typedef sootModelType<Thermo> sootModelType##Thermo;                      \
+    typedef Foam::radiation::sootModelType<Foam::Thermo>                      \
+        sootModelType##Thermo;                                                \
                                                                               \
     defineTemplateTypeNameAndDebugWithName                                    \
     (                                                                         \
@@ -42,12 +42,20 @@ License
         0                                                                     \
     );                                                                        \
                                                                               \
-    addToRunTimeSelectionTable                                                \
-    (                                                                         \
-        sootModel,                                                            \
-        sootModelType##Thermo,                                                \
-        dictionary                                                            \
-    );
+    namespace Foam                                                            \
+    {                                                                         \
+        namespace radiation                                                   \
+        {                                                                     \
+            typedef sootModelType<Thermo> sootModelType##Thermo;              \
+                                                                              \
+            addToRunTimeSelectionTable                                        \
+            (                                                                 \
+                sootModel,                                                    \
+                sootModelType##Thermo,                                        \
+                dictionary                                                    \
+            );                                                                \
+        }                                                                     \
+    }
 
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/src/thermophysicalModels/solidChemistryModel/basicSolidChemistryModel/basicSolidChemistryModels.C b/src/thermophysicalModels/solidChemistryModel/basicSolidChemistryModel/basicSolidChemistryModels.C
index 85306aaf72a..b8f99a91184 100644
--- a/src/thermophysicalModels/solidChemistryModel/basicSolidChemistryModel/basicSolidChemistryModels.C
+++ b/src/thermophysicalModels/solidChemistryModel/basicSolidChemistryModel/basicSolidChemistryModels.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2013-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2013-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -40,34 +40,32 @@ Description
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
-namespace Foam
-{
-    makeSolidChemistryModel
-    (
-        solidChemistryModel,
-        pyrolysisChemistryModel,
-        basicSolidChemistryModel,
-        hConstSolidThermoPhysics,
-        gasHThermoPhysics
-    );
+makeSolidChemistryModel
+(
+    solidChemistryModel,
+    pyrolysisChemistryModel,
+    basicSolidChemistryModel,
+    hConstSolidThermoPhysics,
+    gasHThermoPhysics
+);
 
-    makeSolidChemistryModel
-    (
-        solidChemistryModel,
-        pyrolysisChemistryModel,
-        basicSolidChemistryModel,
-        hExponentialSolidThermoPhysics,
-        gasHThermoPhysics
-    );
+makeSolidChemistryModel
+(
+    solidChemistryModel,
+    pyrolysisChemistryModel,
+    basicSolidChemistryModel,
+    hExponentialSolidThermoPhysics,
+    gasHThermoPhysics
+);
+
+makeSolidChemistryModel
+(
+    solidChemistryModel,
+    pyrolysisChemistryModel,
+    basicSolidChemistryModel,
+    hExpKappaConstSolidThermoPhysics,
+    gasHThermoPhysics
+);
 
-    makeSolidChemistryModel
-    (
-        solidChemistryModel,
-        pyrolysisChemistryModel,
-        basicSolidChemistryModel,
-        hExpKappaConstSolidThermoPhysics,
-        gasHThermoPhysics
-    );
-}
 
 // ************************************************************************* //
diff --git a/src/thermophysicalModels/solidChemistryModel/makeSolidChemistryModel.H b/src/thermophysicalModels/solidChemistryModel/makeSolidChemistryModel.H
index f55698b4359..040f526082c 100644
--- a/src/thermophysicalModels/solidChemistryModel/makeSolidChemistryModel.H
+++ b/src/thermophysicalModels/solidChemistryModel/makeSolidChemistryModel.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2012-2013 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2012-2015 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -29,43 +29,36 @@ Description
 #ifndef makeSolidChemistryModel_H
 #define makeSolidChemistryModel_H
 
-#include "addToRunTimeSelectionTable.H"
 #include "solidChemistryModel.H"
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
+#include "addToRunTimeSelectionTable.H"
 
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
 #define makeSolidChemistryModel(sChemistry, SS, Comp, SThermo, GThermo)       \
                                                                               \
-    typedef SS<Comp, SThermo, GThermo> SS##Comp##SThermo##GThermo;            \
+    typedef Foam::SS<Foam::Comp, Foam::SThermo, Foam::GThermo>                \
+        SS##Comp##SThermo##GThermo;                                           \
                                                                               \
-    typedef sChemistry<Comp, SThermo> sChemistryl##Comp##SThermo;             \
+    typedef Foam::sChemistry<Foam::Comp, Foam::SThermo>                       \
+        sChemistryl##Comp##SThermo;                                           \
                                                                               \
     defineTemplateTypeNameAndDebugWithName                                    \
     (                                                                         \
         sChemistryl##Comp##SThermo,                                           \
-        (word(sChemistry::typeName_()) + "<"#Comp"," + SThermo::typeName() +  \
-        + ">").c_str(),                                                       \
+        (Foam::word(sChemistryl##Comp##SThermo::typeName_()) + "<"#Comp","    \
+        + SThermo::typeName() + ">").c_str(),                                 \
         0                                                                     \
     );                                                                        \
                                                                               \
     defineTemplateTypeNameAndDebugWithName                                    \
     (                                                                         \
         SS##Comp##SThermo##GThermo,                                           \
-        (word(SS::typeName_()) + "<"#Comp"," + SThermo::typeName() + "," +    \
-        GThermo::typeName() + ">").c_str(),                                   \
+        (Foam::word(SS##Comp##SThermo##GThermo::typeName_()) + "<"#Comp","    \
+        + SThermo::typeName() + "," + GThermo::typeName() + ">").c_str(),     \
         0                                                                     \
     );
 
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-} // End namespace Foam
-
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
 #endif
diff --git a/wmake/rules/linux64Clang/c++ b/wmake/rules/linux64Clang/c++
index 1d6d2b041c5..b4dd3524442 100644
--- a/wmake/rules/linux64Clang/c++
+++ b/wmake/rules/linux64Clang/c++
@@ -1,10 +1,10 @@
 SUFFIXES += .C
 
 # -Woverloaded-virtual may produce spurious warnings, disable for now
-c++WARN     = -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -Wno-overloaded-virtual -Wno-unused-comparison -Wno-invalid-offsetof
+c++WARN     = -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -Wno-overloaded-virtual -Wno-unused-comparison -Wno-invalid-offsetof -Wno-c++11-extensions
 
 # Suppress CGAL warnings
-c++CGALWARN = -Wno-c++11-extensions -Wno-sometimes-uninitialized -Wno-mismatched-tags
+c++CGALWARN = -Wno-sometimes-uninitialized -Wno-mismatched-tags
 
 CC          = clang++ -m64
 
diff --git a/wmake/rules/linuxClang/c++ b/wmake/rules/linuxClang/c++
index cf374579081..ab4226f7a6b 100644
--- a/wmake/rules/linuxClang/c++
+++ b/wmake/rules/linuxClang/c++
@@ -1,10 +1,10 @@
 SUFFIXES += .C
 
 # -Woverloaded-virtual may produce spurious warnings, disable for now
-c++WARN     = -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -Wno-overloaded-virtual -Wno-unused-comparison -Wno-invalid-offsetof
+c++WARN     = -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -Wno-overloaded-virtual -Wno-unused-comparison -Wno-invalid-offsetof -Wno-c++11-extensions
 
 # Suppress CGAL warnings
-c++CGALWARN = -Wno-c++11-extensions -Wno-sometimes-uninitialized -Wno-mismatched-tags
+c++CGALWARN = -Wno-sometimes-uninitialized -Wno-mismatched-tags
 
 CC          = clang++ -m32
 
-- 
GitLab