From 66c2cfa1b6cd7446a11a6242dd9a3fe437ebad1c Mon Sep 17 00:00:00 2001
From: andy <a.heather@opencfd.co.uk>
Date: Tue, 14 Apr 2009 15:28:10 +0100
Subject: [PATCH] moved constant properties to be read from their own sub-dict

---
 .../KinematicParcel/KinematicParcel.H         |  8 +++++++-
 .../KinematicParcel/KinematicParcelI.H        | 20 +++++++++++++++----
 .../ReactingMultiphaseParcel.H                |  2 +-
 .../ReactingMultiphaseParcelI.H               | 11 ++++++----
 .../Templates/ReactingParcel/ReactingParcel.H |  2 +-
 .../ReactingParcel/ReactingParcelI.H          | 10 +++++-----
 .../Templates/ThermoParcel/ThermoParcel.H     |  2 +-
 .../Templates/ThermoParcel/ThermoParcelI.H    | 12 +++++------
 8 files changed, 44 insertions(+), 23 deletions(-)

diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H
index 1717ee1febd..2e816bd6ad5 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H
@@ -86,6 +86,9 @@ public:
     {
         // Private data
 
+            //- Constant properties dictionary
+            const dictionary dict_;
+
             //- Particle density [kg/m3] (constant)
             const scalar rho0_;
 
@@ -99,10 +102,13 @@ public:
     public:
 
         //- Constructor
-        constantProperties(const dictionary& dict);
+        constantProperties(const dictionary& parentDict);
 
         // Member functions
 
+            //- Return const access to the constant properties dictionary
+            inline const dictionary& dict() const;
+
             //- Return const access to the particle density
             inline scalar rho0() const;
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H
index 85827924601..ca3e5015d06 100644
--- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H
+++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H
@@ -29,12 +29,16 @@ License
 template <class ParcelType>
 inline Foam::KinematicParcel<ParcelType>::constantProperties::constantProperties
 (
-    const dictionary& dict
+    const dictionary& parentDict
 )
 :
-    rho0_(dimensionedScalar(dict.lookup("rho0")).value()),
-    minParticleMass_(dimensionedScalar(dict.lookup("minParticleMass")).value()),
-    Cvm_(dimensionedScalar(dict.lookup("Cvm")).value())
+    dict_(parentDict.subDict("constantProperties")),
+    rho0_(dimensionedScalar(dict_.lookup("rho0")).value()),
+    minParticleMass_
+    (
+        dimensionedScalar(dict_.lookup("minParticleMass")).value()
+    ),
+    Cvm_(dimensionedScalar(dict_.lookup("Cvm")).value())
 {}
 
 
@@ -88,6 +92,14 @@ inline Foam::KinematicParcel<ParcelType>::KinematicParcel
 
 // * * * * * * * * * constantProperties Member Functions * * * * * * * * * * //
 
+template <class ParcelType>
+inline const Foam::dictionary&
+Foam::KinematicParcel<ParcelType>::constantProperties::dict() const
+{
+    return dict_;
+}
+
+
 template <class ParcelType>
 inline Foam::scalar
 Foam::KinematicParcel<ParcelType>::constantProperties::rho0() const
diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H
index 5053c106b40..f1bace3a8b9 100644
--- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H
+++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H
@@ -93,7 +93,7 @@ public:
     public:
 
         //- Constructor
-        constantProperties(const dictionary& dict);
+        constantProperties(const dictionary& parentDict);
 
         // Access
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H
index d7d3cf17812..9709da663d1 100644
--- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H
+++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H
@@ -30,12 +30,15 @@ template<class ParcelType>
 inline Foam::ReactingMultiphaseParcel<ParcelType>::constantProperties::
 constantProperties
 (
-    const dictionary& dict
+    const dictionary& parentDict
 )
 :
-    ReactingParcel<ParcelType>::constantProperties(dict),
-    LDevol_(dimensionedScalar(dict.lookup("LDevol")).value()),
-    hRetentionCoeff_(dimensionedScalar(dict.lookup("hRetentionCoeff")).value())
+    ReactingParcel<ParcelType>::constantProperties(parentDict),
+    LDevol_(dimensionedScalar(this->dict().lookup("LDevol")).value()),
+    hRetentionCoeff_
+    (
+        dimensionedScalar(this->dict().lookup("hRetentionCoeff")).value()
+    )
 {}
 
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H
index 52b9c881e74..f876fa6401c 100644
--- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H
+++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H
@@ -93,7 +93,7 @@ public:
     public:
 
         //- Constructor
-        constantProperties(const dictionary& dict);
+        constantProperties(const dictionary& parentDict);
 
         // Access
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H
index da808caee8c..0cc40887d4a 100644
--- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H
+++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H
@@ -29,13 +29,13 @@ License
 template<class ParcelType>
 inline Foam::ReactingParcel<ParcelType>::constantProperties::constantProperties
 (
-    const dictionary& dict
+    const dictionary& parentDict
 )
 :
-    ThermoParcel<ParcelType>::constantProperties(dict),
-    constantVolume_(dict.lookup("constantVolume")),
-    Tbp_(dimensionedScalar(dict.lookup("Tbp")).value()),
-    Tvap_(dimensionedScalar(dict.lookup("Tvap")).value())
+    ThermoParcel<ParcelType>::constantProperties(parentDict),
+    constantVolume_(this->dict().lookup("constantVolume")),
+    Tbp_(dimensionedScalar(this->dict().lookup("Tbp")).value()),
+    Tvap_(dimensionedScalar(this->dict().lookup("Tvap")).value())
 {}
 
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H
index 4bc5180eff5..c7ba92ab840 100644
--- a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H
+++ b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H
@@ -98,7 +98,7 @@ public:
     public:
 
         // Constructors
-        constantProperties(const dictionary& dict);
+        constantProperties(const dictionary& parentDict);
 
         // Member functions
 
diff --git a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H
index c14f1891b45..1a2c0326d39 100644
--- a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H
+++ b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H
@@ -29,14 +29,14 @@ License
 template<class ParcelType>
 inline Foam::ThermoParcel<ParcelType>::constantProperties::constantProperties
 (
-    const dictionary& dict
+    const dictionary& parentDict
 )
 :
-    KinematicParcel<ParcelType>::constantProperties(dict),
-    T0_(dimensionedScalar(dict.lookup("T0")).value()),
-    cp0_(dimensionedScalar(dict.lookup("cp0")).value()),
-    epsilon0_(dimensionedScalar(dict.lookup("epsilon0")).value()),
-    f0_(dimensionedScalar(dict.lookup("f0")).value())
+    KinematicParcel<ParcelType>::constantProperties(parentDict),
+    T0_(dimensionedScalar(this->dict().lookup("T0")).value()),
+    cp0_(dimensionedScalar(this->dict().lookup("cp0")).value()),
+    epsilon0_(dimensionedScalar(this->dict().lookup("epsilon0")).value()),
+    f0_(dimensionedScalar(this->dict().lookup("f0")).value())
 {}
 
 
-- 
GitLab