From b783a210e852f314d7071f449e1cbc3a5a41ae65 Mon Sep 17 00:00:00 2001
From: graham <g.macpherson@opencfd.co.uk>
Date: Wed, 21 Oct 2009 14:40:20 +0100
Subject: [PATCH] Removing the cached deltaT from the cloud, using the new
 deltaTValue access memeber instead - no longer expensive to obtain.

---
 .../dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C    |  5 +----
 .../dsmc/clouds/Templates/DsmcCloud/DsmcCloud.H    | 10 ----------
 .../dsmc/clouds/Templates/DsmcCloud/DsmcCloudI.H   | 14 --------------
 .../dsmc/parcels/Templates/DsmcParcel/DsmcParcel.C |  4 ++--
 .../InflowBoundaryModel/FreeStream/FreeStream.C    |  2 +-
 5 files changed, 4 insertions(+), 31 deletions(-)

diff --git a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C
index b5958bad106..f7aaaa724d2 100644
--- a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C
+++ b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.C
@@ -297,7 +297,7 @@ void Foam::DsmcCloud<ParcelType>::collisions()
     // Temporary storage for subCells
     List<DynamicList<label> > subCells(8);
 
-    scalar deltaT = cachedDeltaT();
+    scalar deltaT = mesh().time().deltaTValue();
 
     label collisionCandidates = 0;
 
@@ -1042,9 +1042,6 @@ Foam::DsmcCloud<ParcelType>::~DsmcCloud()
 template<class ParcelType>
 void Foam::DsmcCloud<ParcelType>::evolve()
 {
-    // cache the value of deltaT for this timestep
-    storeDeltaT();
-
     typename ParcelType::trackData td(*this);
 
     // Reset the data collection fields
diff --git a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.H b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.H
index bc6da12c234..5b2f382eb62 100644
--- a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.H
+++ b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloud.H
@@ -137,10 +137,6 @@ class DsmcCloud
         //- Random number generator
         Random rndGen_;
 
-        //- In-cloud cache of deltaT, lookup in submodels and parcel is
-        //  expensive
-        scalar cachedDeltaT_;
-
 
         // boundary value fields
 
@@ -267,12 +263,6 @@ public:
                 //- Return refernce to the random object
                 inline Random& rndGen();
 
-                //- Store (cache) the current value of deltaT
-                inline void storeDeltaT();
-
-                //- Return the cached value of deltaT
-                inline scalar cachedDeltaT() const;
-
 
             // References to the boundary fields for surface data collection
 
diff --git a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloudI.H b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloudI.H
index 65a2a2de817..beaacb22766 100644
--- a/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloudI.H
+++ b/src/lagrangian/dsmc/clouds/Templates/DsmcCloud/DsmcCloudI.H
@@ -125,20 +125,6 @@ inline Foam::Random& Foam::DsmcCloud<ParcelType>::rndGen()
 }
 
 
-template<class ParcelType>
-inline void Foam::DsmcCloud<ParcelType>::storeDeltaT()
-{
-    cachedDeltaT_ = mesh().time().deltaT().value();
-}
-
-
-template<class ParcelType>
-inline Foam::scalar Foam::DsmcCloud<ParcelType>::cachedDeltaT() const
-{
-    return cachedDeltaT_;
-}
-
-
 template<class ParcelType>
 inline Foam::volScalarField::GeometricBoundaryField&
 Foam::DsmcCloud<ParcelType>::qBF()
diff --git a/src/lagrangian/dsmc/parcels/Templates/DsmcParcel/DsmcParcel.C b/src/lagrangian/dsmc/parcels/Templates/DsmcParcel/DsmcParcel.C
index 9e1c10f51b6..3d752aa98dc 100644
--- a/src/lagrangian/dsmc/parcels/Templates/DsmcParcel/DsmcParcel.C
+++ b/src/lagrangian/dsmc/parcels/Templates/DsmcParcel/DsmcParcel.C
@@ -44,7 +44,7 @@ bool Foam::DsmcParcel<ParcelType>::move
     const polyMesh& mesh = td.cloud().pMesh();
     const polyBoundaryMesh& pbMesh = mesh.boundaryMesh();
 
-    const scalar deltaT = td.cloud().cachedDeltaT();
+    const scalar deltaT = mesh.time().deltaTValue();
     scalar tEnd = (1.0 - p.stepFraction())*deltaT;
     const scalar dtMax = tEnd;
 
@@ -135,7 +135,7 @@ void Foam::DsmcParcel<ParcelType>::hitWallPatch
 
     const scalar fA = mag(wpp.faceAreas()[wppLocalFace]);
 
-    const scalar deltaT = td.cloud().cachedDeltaT();
+    const scalar deltaT = td.cloud().pMesh().time().deltaTValue();
 
     const constantProperties& constProps(td.cloud().constProps(typeId_));
 
diff --git a/src/lagrangian/dsmc/submodels/InflowBoundaryModel/FreeStream/FreeStream.C b/src/lagrangian/dsmc/submodels/InflowBoundaryModel/FreeStream/FreeStream.C
index 4df1f6e44a6..1df22c68d5a 100644
--- a/src/lagrangian/dsmc/submodels/InflowBoundaryModel/FreeStream/FreeStream.C
+++ b/src/lagrangian/dsmc/submodels/InflowBoundaryModel/FreeStream/FreeStream.C
@@ -129,7 +129,7 @@ void Foam::FreeStream<CloudType>::inflow()
 
     const polyMesh& mesh(cloud.mesh());
 
-    const scalar deltaT = cloud.cachedDeltaT();
+    const scalar deltaT = mesh.time().deltaTValue();
 
     Random& rndGen(cloud.rndGen());
 
-- 
GitLab