From 988b0fd3e1601be963de8c7a50841f393b254ff7 Mon Sep 17 00:00:00 2001 From: Henry Weller <http://cfd.direct> Date: Thu, 20 Aug 2015 17:54:51 +0100 Subject: [PATCH] ThermalDiffusivity: Refactored to support phase turbulence models --- .../PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.C | 2 +- .../PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.H | 2 +- .../compressible/EddyDiffusivity/EddyDiffusivity.H | 2 -- .../ThermalDiffusivity/ThermalDiffusivity.C | 14 +++++++------- .../ThermalDiffusivity/ThermalDiffusivity.H | 12 +++++------- .../makeTurbulenceModel.H | 3 ++- .../turbulentFluidThermoModel.H | 3 ++- .../turbulentFluidThermoModels.C | 1 + 8 files changed, 19 insertions(+), 20 deletions(-) diff --git a/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.C b/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.C index 73dbee5664c..e09c1bbd140 100644 --- a/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.C +++ b/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.C @@ -55,7 +55,7 @@ PDRkEpsilon::PDRkEpsilon const word& modelName ) : - Foam::RASModels::kEpsilon<eddyDiffusivity<compressible::turbulenceModel> > + Foam::RASModels::kEpsilon<EddyDiffusivity<compressible::turbulenceModel> > ( geometricOneField(), rho, diff --git a/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.H b/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.H index 689a47844a4..1ee0719076a 100644 --- a/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.H +++ b/applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.H @@ -80,7 +80,7 @@ class PDRkEpsilon : public Foam::RASModels::kEpsilon < - eddyDiffusivity + EddyDiffusivity < compressible::turbulenceModel > diff --git a/src/TurbulenceModels/compressible/EddyDiffusivity/EddyDiffusivity.H b/src/TurbulenceModels/compressible/EddyDiffusivity/EddyDiffusivity.H index 4b04ca83d4c..a01107f6301 100644 --- a/src/TurbulenceModels/compressible/EddyDiffusivity/EddyDiffusivity.H +++ b/src/TurbulenceModels/compressible/EddyDiffusivity/EddyDiffusivity.H @@ -36,8 +36,6 @@ SourceFiles #ifndef EddyDiffusivity_H #define EddyDiffusivity_H -#include "CompressibleTurbulenceModel.H" - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam diff --git a/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.C b/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.C index 8c6ac11656b..ad6de847145 100644 --- a/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.C +++ b/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.C @@ -27,8 +27,8 @@ License // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -template<class TransportModel> -Foam::ThermalDiffusivity<TransportModel>::ThermalDiffusivity +template<class BasicTurbulenceModel> +Foam::ThermalDiffusivity<BasicTurbulenceModel>::ThermalDiffusivity ( const word& type, const geometricOneField& alpha, @@ -40,7 +40,7 @@ Foam::ThermalDiffusivity<TransportModel>::ThermalDiffusivity const word& propertiesName ) : - CompressibleTurbulenceModel<TransportModel> + BasicTurbulenceModel ( type, alpha, @@ -56,9 +56,9 @@ Foam::ThermalDiffusivity<TransportModel>::ThermalDiffusivity // * * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * // -template<class TransportModel> -Foam::autoPtr<Foam::ThermalDiffusivity<TransportModel> > -Foam::ThermalDiffusivity<TransportModel>::New +template<class BasicTurbulenceModel> +Foam::autoPtr<Foam::ThermalDiffusivity<BasicTurbulenceModel> > +Foam::ThermalDiffusivity<BasicTurbulenceModel>::New ( const volScalarField& rho, const volVectorField& U, @@ -70,7 +70,7 @@ Foam::ThermalDiffusivity<TransportModel>::New return autoPtr<ThermalDiffusivity> ( static_cast<ThermalDiffusivity*>( - CompressibleTurbulenceModel<transportModel>::New + BasicTurbulenceModel::New ( rho, U, diff --git a/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.H b/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.H index 4c6328be13e..5996798d871 100644 --- a/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.H +++ b/src/TurbulenceModels/compressible/ThermalDiffusivity/ThermalDiffusivity.H @@ -25,8 +25,8 @@ Class Foam::ThermalDiffusivity Description - Templated abstract base class for single-phase compressible - turbulence models. + Templated wrapper class to provide compressible turbulence models + thermal diffusivity based thermal transport. SourceFiles ThermalDiffusivity.C @@ -36,8 +36,6 @@ SourceFiles #ifndef ThermalDiffusivity_H #define ThermalDiffusivity_H -#include "CompressibleTurbulenceModel.H" - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam @@ -47,17 +45,17 @@ namespace Foam Class ThermalDiffusivity Declaration \*---------------------------------------------------------------------------*/ -template<class TransportModel> +template<class BasicTurbulenceModel> class ThermalDiffusivity : - public CompressibleTurbulenceModel<TransportModel> + public BasicTurbulenceModel { public: typedef geometricOneField alphaField; typedef volScalarField rhoField; - typedef TransportModel transportModel; + typedef typename BasicTurbulenceModel::transportModel transportModel; // Constructors diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H index a2720aa797e..91c3a2e71b8 100644 --- a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H +++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/makeTurbulenceModel.H @@ -41,7 +41,8 @@ License dictionary \ ); \ \ - typedef BaseModel<Transport> Transport##BaseModel; \ + typedef BaseModel<CompressibleTurbulenceModel<Transport> > \ + Transport##BaseModel; \ \ \ typedef laminar<Transport##BaseModel> Laminar##Transport##BaseModel; \ diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModel.H b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModel.H index b8e70ca47f8..da111a99070 100644 --- a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModel.H +++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModel.H @@ -55,7 +55,8 @@ namespace Foam { namespace compressible { - typedef ThermalDiffusivity<fluidThermo> turbulenceModel; + typedef ThermalDiffusivity<CompressibleTurbulenceModel<fluidThermo> > + turbulenceModel; typedef SpecificCompressibleTurbulenceModel < diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModels.C b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModels.C index cfd29dba9a9..d5342a15d77 100644 --- a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModels.C +++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/turbulentFluidThermoModels.C @@ -28,6 +28,7 @@ License #include "addToRunTimeSelectionTable.H" #include "makeTurbulenceModel.H" +#include "CompressibleTurbulenceModel.H" #include "ThermalDiffusivity.H" #include "EddyDiffusivity.H" -- GitLab