diff --git a/applications/solvers/lagrangian/reactingParcelFoam/createClouds.H b/applications/solvers/lagrangian/reactingParcelFoam/createClouds.H index b4ec5e4056..cdec69355e 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/createClouds.H +++ b/applications/solvers/lagrangian/reactingParcelFoam/createClouds.H @@ -29,7 +29,7 @@ forAll(gasProperties, i) } Info<< "\nConstructing reacting cloud" << endl; -basicReactingCloud parcels +BasicReactingCloud parcels ( "reactingCloud1", rho, diff --git a/applications/solvers/lagrangian/reactingParcelFoam/reactingParcelFoam.C b/applications/solvers/lagrangian/reactingParcelFoam/reactingParcelFoam.C index ea57f0da0e..89a2e815f3 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/reactingParcelFoam.C +++ b/applications/solvers/lagrangian/reactingParcelFoam/reactingParcelFoam.C @@ -34,7 +34,7 @@ Description #include "fvCFD.H" #include "hCombustionThermo.H" #include "turbulenceModel.H" -#include "basicReactingCloud.H" +#include "BasicReactingCloud.H" #include "chemistryModel.H" #include "chemistrySolver.H" #include "ReactingCloudThermoTypes.H" diff --git a/src/lagrangian/intermediate/Make/files b/src/lagrangian/intermediate/Make/files index 350aca8d46..2d8790fd76 100644 --- a/src/lagrangian/intermediate/Make/files +++ b/src/lagrangian/intermediate/Make/files @@ -1,13 +1,15 @@ PARCELS=parcels DERIVEDPARCELS=$(PARCELS)/derived +BASEPARCELS=$(PARCELS)/baseClasses /* Parcels */ $(DERIVEDPARCELS)/basicKinematicParcel/basicKinematicParcel.C $(DERIVEDPARCELS)/basicThermoParcel/basicThermoParcel.C -$(DERIVEDPARCELS)/basicReactingParcel/basicReactingParcel.C -$(DERIVEDPARCELS)/basicReactingMultiphaseParcel/basicReactingMultiphaseParcel.C -$(DERIVEDPARCELS)/trackedReactingParcel/trackedReactingParcel.C +/* $(DERIVEDPARCELS)/basicReactingParcel/basicReactingParcel.C */ +/* $(DERIVEDPARCELS)/basicReactingMultiphaseParcel/basicReactingMultiphaseParcel.C */ +/* $(DERIVEDPARCELS)/trackedReactingParcel/trackedReactingParcel.C */ +$(BASEPARCELS)/reactingParcel/reactingParcel.C /* Cloud base classes */ clouds/baseClasses/kinematicCloud/kinematicCloud.C @@ -19,9 +21,9 @@ clouds/baseClasses/reactingMultiphaseCloud/reactingMultiphaseCloud.C /* Cloud container/injection mechanisms */ clouds/derived/basicKinematicCloud/basicKinematicCloud.C clouds/derived/basicThermoCloud/basicThermoCloud.C -clouds/derived/basicReactingCloud/basicReactingCloud.C -clouds/derived/basicReactingMultiphaseCloud/basicReactingMultiphaseCloud.C -clouds/derived/trackedReactingCloud/trackedReactingCloud.C +/* clouds/derived/basicReactingCloud/basicReactingCloud.C */ +/* clouds/derived/basicReactingMultiphaseCloud/basicReactingMultiphaseCloud.C */ +/* clouds/derived/trackedReactingCloud/trackedReactingCloud.C */ /* kinematic parcel sub-models */ @@ -46,7 +48,7 @@ $(THERMOPARCEL)/submodels/makeBasicThermoParcelPostProcessingModels.C /* reacting parcel sub-models */ -REACTINGPARCEL=$(DERIVEDPARCELS)/basicReactingParcel +REACTINGPARCEL=$(DERIVEDPARCELS)/BasicReactingParcel $(REACTINGPARCEL)/defineBasicReactingParcel.C $(REACTINGPARCEL)/submodels/makeBasicReactingParcelCompositionModels.C $(REACTINGPARCEL)/submodels/makeBasicReactingParcelDispersionModels.C @@ -59,7 +61,7 @@ $(REACTINGPARCEL)/submodels/makeBasicReactingParcelPostProcessingModels.C /* reacting multiphase parcel sub-models */ -REACTINGMPPARCEL=$(DERIVEDPARCELS)/basicReactingMultiphaseParcel +REACTINGMPPARCEL=$(DERIVEDPARCELS)/BasicReactingMultiphaseParcel $(REACTINGMPPARCEL)/defineBasicReactingMultiphaseParcel.C $(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelCompositionModels.C $(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelDevolatilisationModels.C @@ -74,7 +76,7 @@ $(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelSurfaceReactionMo /* tracked reacting parcel sub-models */ -TRACKEDREACTINGPARCEL=$(DERIVEDPARCELS)/trackedReactingParcel +TRACKEDREACTINGPARCEL=$(DERIVEDPARCELS)/BasicTrackedReactingParcel $(TRACKEDREACTINGPARCEL)/defineTrackedReactingParcel.C $(TRACKEDREACTINGPARCEL)/submodels/makeTrackedReactingParcelCompositionModels.C $(TRACKEDREACTINGPARCEL)/submodels/makeTrackedReactingParcelDispersionModels.C diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C index cd1fdca7e9..2252ad4b8b 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C @@ -68,7 +68,7 @@ Foam::ReactingCloud::ReactingCloud const volVectorField& U, const dimensionedVector& g, hCombustionThermo& thermo, - PtrList& carrierSpecies + PtrList& carrierSpecies ) : ThermoCloud(cloudName, rho, U, g, thermo), diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H index 9b78fbb5ad..1ac2fb9af5 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H @@ -72,6 +72,14 @@ class ReactingCloud public ThermoCloud, public reactingCloud { +public: + + //- Type of thermodynamics the cloud was instantiated for + typedef typename ParcelType::thermoType thermoType; + + +private: + // Private Member Functions //- Disallow default bitwise copy construct @@ -92,7 +100,7 @@ protected: hCombustionThermo& carrierThermo_; //- Gas phase properties - PtrList& carrierSpecies_; + PtrList& carrierSpecies_; // References to the cloud sub-models @@ -143,7 +151,7 @@ public: const volVectorField& U, const dimensionedVector& g, hCombustionThermo& thermo, - PtrList& carrierSpecies + PtrList& carrierSpecies ); @@ -170,7 +178,7 @@ public: inline hCombustionThermo& carrierThermo(); //- Gas phase properties - inline const PtrList& carrierSpecies() const; + inline const PtrList& carrierSpecies() const; // Sub-models diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H index d21df2f89d..8dbaf52bbc 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H @@ -51,7 +51,7 @@ Foam::ReactingCloud::carrierThermo() template -inline const Foam::PtrList& +inline const Foam::PtrList& Foam::ReactingCloud::carrierSpecies() const { return carrierSpecies_; diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudThermoTypes.H b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudThermoTypes.H index 2341e65aa0..015f00fb8b 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudThermoTypes.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudThermoTypes.H @@ -23,7 +23,7 @@ License Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Typedefs - Foam::cloudThermoTypes + Foam::ReactingCloudThermoTypes Description @@ -33,8 +33,6 @@ Description #define ReactingCloudThermoTypes_H #include "sutherlandTransport.H" -#include "multiComponentMixture.H" -#include "specie.H" #include "constTransport.H" #include "specieThermo.H" #include "hConstThermo.H" @@ -45,12 +43,6 @@ Description namespace Foam { -// typedef multiComponentMixture > > > specieProperties; -// typedef hConstThermo specieProperties; - -// typedef sutherlandTransport > > -// specieProperties; - typedef sutherlandTransport > > specieReactingProperties; diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C index 241dfaa65a..8f86c70859 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C @@ -39,7 +39,7 @@ Foam::ReactingMultiphaseCloud::ReactingMultiphaseCloud const volVectorField& U, const dimensionedVector& g, hCombustionThermo& thermo, - PtrList& carrierSpecies + PtrList::thermoType>& carrierSpecies ) : ReactingCloud(cloudName, rho, U, g, thermo, carrierSpecies), diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H index 7d3bb60207..f0396691b6 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H @@ -124,7 +124,8 @@ public: const volVectorField& U, const dimensionedVector& g, hCombustionThermo& thermo, - PtrList& carrierSpecies + PtrList::thermoType>& + carrierSpecies ); diff --git a/src/lagrangian/intermediate/clouds/baseClasses/reactingCloud/reactingCloud.H b/src/lagrangian/intermediate/clouds/baseClasses/reactingCloud/reactingCloud.H index a27bf4edf1..f35de5ffd6 100644 --- a/src/lagrangian/intermediate/clouds/baseClasses/reactingCloud/reactingCloud.H +++ b/src/lagrangian/intermediate/clouds/baseClasses/reactingCloud/reactingCloud.H @@ -35,7 +35,7 @@ SourceFiles #ifndef reactingCloud_H #define reactingCloud_H -#include "volFields.H" +#include "typeInfo.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/lagrangian/intermediate/clouds/baseClasses/reactingMultiphaseCloud/reactingMultiphaseCloud.H b/src/lagrangian/intermediate/clouds/baseClasses/reactingMultiphaseCloud/reactingMultiphaseCloud.H index ea2ef0da89..0359018cfa 100644 --- a/src/lagrangian/intermediate/clouds/baseClasses/reactingMultiphaseCloud/reactingMultiphaseCloud.H +++ b/src/lagrangian/intermediate/clouds/baseClasses/reactingMultiphaseCloud/reactingMultiphaseCloud.H @@ -35,7 +35,7 @@ SourceFiles #ifndef reactingMultiphaseCloud_H #define reactingMultiphaseCloud_H -#include "volFields.H" +#include "typeInfo.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/lagrangian/intermediate/clouds/derived/BasicReactingCloud/BasicReactingCloud.C b/src/lagrangian/intermediate/clouds/derived/BasicReactingCloud/BasicReactingCloud.C index 27c67a36cc..01de934df7 100644 --- a/src/lagrangian/intermediate/clouds/derived/BasicReactingCloud/BasicReactingCloud.C +++ b/src/lagrangian/intermediate/clouds/derived/BasicReactingCloud/BasicReactingCloud.C @@ -24,29 +24,22 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingCloud.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(basicReactingCloud, 0); -}; - +#include "BasicReactingCloud.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::basicReactingCloud::basicReactingCloud +template +Foam::BasicReactingCloud::BasicReactingCloud ( const word& cloudName, const volScalarField& rho, const volVectorField& U, const dimensionedVector& g, hCombustionThermo& thermo, - PtrList& carrierSpecies + PtrList& carrierSpecies ) : - ReactingCloud + ReactingCloud > ( cloudName, rho, @@ -56,21 +49,23 @@ Foam::basicReactingCloud::basicReactingCloud carrierSpecies ) { - basicReactingParcel::readFields(*this); + BasicReactingParcel::readFields(*this); } // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // -Foam::basicReactingCloud::~basicReactingCloud() +template +Foam::BasicReactingCloud::~BasicReactingCloud() {} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::basicReactingCloud::writeFields() const +template +void Foam::BasicReactingCloud::writeFields() const { - basicReactingParcel::writeFields(*this); + BasicReactingParcel::writeFields(*this); } diff --git a/src/lagrangian/intermediate/clouds/derived/BasicReactingCloud/BasicReactingCloud.H b/src/lagrangian/intermediate/clouds/derived/BasicReactingCloud/BasicReactingCloud.H index c6c6a625c0..1123ada759 100644 --- a/src/lagrangian/intermediate/clouds/derived/BasicReactingCloud/BasicReactingCloud.H +++ b/src/lagrangian/intermediate/clouds/derived/BasicReactingCloud/BasicReactingCloud.H @@ -23,66 +23,71 @@ License Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Class - Foam::basicReactingCloud + Foam::BasicReactingCloud Description Reacting cloud templated on the reacting parcel SourceFiles - basicReactingCloud.C + BasicReactingCloud.C \*---------------------------------------------------------------------------*/ -#ifndef basicReactingCloud_H -#define basicReactingCloud_H +#ifndef BasicReactingCloud_H +#define BasicReactingCloud_H #include "ReactingCloud.H" -#include "basicReactingParcel.H" +#include "BasicReactingParcel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { +// Forward declaration of classes +template +class BasicReactingCloud; + /*---------------------------------------------------------------------------*\ - Class basicReactingCloud Declaration + Class BasicReactingCloud Declaration \*---------------------------------------------------------------------------*/ -class basicReactingCloud +template +class BasicReactingCloud : - public ReactingCloud + public ReactingCloud > { // Private Member Functions //- Disallow default bitwise copy construct - basicReactingCloud(const basicReactingCloud&); + BasicReactingCloud(const BasicReactingCloud&); //- Disallow default bitwise assignment - void operator=(const basicReactingCloud&); + void operator=(const BasicReactingCloud&); public: //- Runtime type information - TypeName("basicReactingCloud"); + TypeName("BasicReactingCloud"); // Constructors //- Construct given carrier gas fields - basicReactingCloud + BasicReactingCloud ( const word& cloudName, const volScalarField& rho, const volVectorField& U, const dimensionedVector& g, hCombustionThermo& thermo, - PtrList& carrierSpecies + PtrList& carrierSpecies ); //- Destructor - ~basicReactingCloud(); + ~BasicReactingCloud(); // Member Functions @@ -98,6 +103,12 @@ public: // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#ifdef NoRepository + #include "BasicReactingCloud.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + #endif // ************************************************************************* // diff --git a/src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.C b/src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.C index 9bd8b9c772..2dce419cd2 100644 --- a/src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.C +++ b/src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.C @@ -24,29 +24,22 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseCloud.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(basicReactingMultiphaseCloud, 0); -}; - +#include "BasicReactingMultiphaseCloud.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::basicReactingMultiphaseCloud::basicReactingMultiphaseCloud +template +Foam::BasicReactingMultiphaseCloud::BasicReactingMultiphaseCloud ( const word& cloudName, const volScalarField& rho, const volVectorField& U, const dimensionedVector& g, hCombustionThermo& thermo, - PtrList& carrierSpecies + PtrList& carrierSpecies ) : - ReactingMultiphaseCloud + ReactingMultiphaseCloud > ( cloudName, rho, @@ -56,21 +49,23 @@ Foam::basicReactingMultiphaseCloud::basicReactingMultiphaseCloud carrierSpecies ) { - basicReactingMultiphaseParcel::readFields(*this); + BasicReactingMultiphaseParcel::readFields(*this); } // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // -Foam::basicReactingMultiphaseCloud::~basicReactingMultiphaseCloud() +template +Foam::BasicReactingMultiphaseCloud::~BasicReactingMultiphaseCloud() {} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::basicReactingMultiphaseCloud::writeFields() const +template +void Foam::BasicReactingMultiphaseCloud::writeFields() const { - basicReactingMultiphaseParcel::writeFields(*this); + BasicReactingMultiphaseParcel::writeFields(*this); } diff --git a/src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.H b/src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.H index 540431bfd4..f1d94e4d8c 100644 --- a/src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.H +++ b/src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.H @@ -23,66 +23,71 @@ License Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Class - Foam::basicReactingMultiphaseCloud + Foam::BasicReactingMultiphaseCloud Description Reacting multiphase cloud templated on the reacting multiphase parcel SourceFiles - basicReactingMultiphaseCloud.C + BasicReactingMultiphaseCloud.C \*---------------------------------------------------------------------------*/ -#ifndef basicReactingMultiphaseCloud_H -#define basicReactingMultiphaseCloud_H +#ifndef BasicReactingMultiphaseCloud_H +#define BasicReactingMultiphaseCloud_H #include "ReactingMultiphaseCloud.H" -#include "basicReactingMultiphaseParcel.H" +#include "BasicReactingMultiphaseParcel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { +// Forward declaration of classes +template +class BasicReactingMultiphaseCloud; + /*---------------------------------------------------------------------------*\ - Class basicReactingMultiphaseCloud Declaration + Class BasicReactingMultiphaseCloud Declaration \*---------------------------------------------------------------------------*/ -class basicReactingMultiphaseCloud +template +class BasicReactingMultiphaseCloud : - public ReactingMultiphaseCloud + public ReactingMultiphaseCloud { // Private Member Functions //- Disallow default bitwise copy construct - basicReactingMultiphaseCloud(const basicReactingMultiphaseCloud&); + BasicReactingMultiphaseCloud(const BasicReactingMultiphaseCloud&); //- Disallow default bitwise assignment - void operator=(const basicReactingMultiphaseCloud&); + void operator=(const BasicReactingMultiphaseCloud&); public: //- Runtime type information - TypeName("basicReactingMultiphaseCloud"); + TypeName("BasicReactingMultiphaseCloud"); // Constructors //- Construct given carrier gas fields - basicReactingMultiphaseCloud + BasicReactingMultiphaseCloud ( const word& cloudName, const volScalarField& rho, const volVectorField& U, const dimensionedVector& g, hCombustionThermo& thermo, - PtrList& carrierSpecies + PtrList& carrierSpecies ); //- Destructor - ~basicReactingMultiphaseCloud(); + ~BasicReactingMultiphaseCloud(); // Member Functions @@ -98,6 +103,12 @@ public: // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#ifdef NoRepository + #include "BasicReactingMultiphaseCloud.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + #endif // ************************************************************************* // diff --git a/src/lagrangian/intermediate/clouds/derived/BasicTrackedReactingCloud/BasicTrackedReactingCloud.C b/src/lagrangian/intermediate/clouds/derived/BasicTrackedReactingCloud/BasicTrackedReactingCloud.C index 24937a0773..ecd0a267d8 100644 --- a/src/lagrangian/intermediate/clouds/derived/BasicTrackedReactingCloud/BasicTrackedReactingCloud.C +++ b/src/lagrangian/intermediate/clouds/derived/BasicTrackedReactingCloud/BasicTrackedReactingCloud.C @@ -26,27 +26,20 @@ License #include "trackedReactingCloud.H" -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(trackedReactingCloud, 0); -}; - - // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::trackedReactingCloud::trackedReactingCloud +template +Foam::trackedReactingCloud::trackedReactingCloud ( const word& cloudName, const volScalarField& rho, const volVectorField& U, const dimensionedVector& g, hCombustionThermo& thermo, - PtrList& gases + PtrList& gases ) : - ReactingCloud + ReactingCloud > ( cloudName, rho, @@ -56,21 +49,23 @@ Foam::trackedReactingCloud::trackedReactingCloud gases ) { - trackedReactingParcel::readFields(*this); + BasicTrackedReactingParcel::readFields(*this); } // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // -Foam::trackedReactingCloud::~trackedReactingCloud() +template +Foam::trackedReactingCloud::~trackedReactingCloud() {} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::trackedReactingCloud::writeFields() const +template +void Foam::trackedReactingCloud::writeFields() const { - trackedReactingParcel::writeFields(*this); + BasicTrackedReactingParcel::writeFields(*this); } diff --git a/src/lagrangian/intermediate/clouds/derived/BasicTrackedReactingCloud/BasicTrackedReactingCloud.H b/src/lagrangian/intermediate/clouds/derived/BasicTrackedReactingCloud/BasicTrackedReactingCloud.H index 490b918800..87d22a9647 100644 --- a/src/lagrangian/intermediate/clouds/derived/BasicTrackedReactingCloud/BasicTrackedReactingCloud.H +++ b/src/lagrangian/intermediate/clouds/derived/BasicTrackedReactingCloud/BasicTrackedReactingCloud.H @@ -37,20 +37,25 @@ SourceFiles #define trackedReactingCloud_H #include "ReactingCloud.H" -#include "trackedReactingParcel.H" +#include "BasicTrackedReactingParcel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { +// Forward declaration of classes +template +class trackedReactingCloud; + /*---------------------------------------------------------------------------*\ Class trackedReactingCloud Declaration \*---------------------------------------------------------------------------*/ +template class trackedReactingCloud : - public ReactingCloud + public ReactingCloud > { // Private Member Functions @@ -77,7 +82,7 @@ public: const volVectorField& U, const dimensionedVector& g, hCombustionThermo& thermo, - PtrList& gases + PtrList& gases ); @@ -98,6 +103,12 @@ public: // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#ifdef NoRepository + #include "trackedReactingCloud.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + #endif // ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/baseClasses/reactingParcel/reactingParcel.C b/src/lagrangian/intermediate/parcels/baseClasses/reactingParcel/reactingParcel.C new file mode 100644 index 0000000000..45fc561ab8 --- /dev/null +++ b/src/lagrangian/intermediate/parcels/baseClasses/reactingParcel/reactingParcel.C @@ -0,0 +1,49 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. + \\/ M anipulation | +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the + Free Software Foundation; either version 2 of the License, or (at your + option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM; if not, write to the Free Software Foundation, + Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +\*---------------------------------------------------------------------------*/ + +#include "reactingParcel.H" + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ + defineTypeNameAndDebug(reactingParcel, 0); +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::reactingParcel::reactingParcel() +{} + + +// * * * * * * * * * * * * * * * * Destructors * * * * * * * * * * * * * * // + +Foam::reactingParcel::~reactingParcel() +{} + + +// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/baseClasses/reactingParcel/reactingParcel.H b/src/lagrangian/intermediate/parcels/baseClasses/reactingParcel/reactingParcel.H new file mode 100644 index 0000000000..5dcc2a38de --- /dev/null +++ b/src/lagrangian/intermediate/parcels/baseClasses/reactingParcel/reactingParcel.H @@ -0,0 +1,81 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. + \\/ M anipulation | +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the + Free Software Foundation; either version 2 of the License, or (at your + option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM; if not, write to the Free Software Foundation, + Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +Class + Foam::basicReactingParcel + +Description + Base class for reacting parcel - simply used to set the contiguous flag + +SourceFiles + reactingParcel.C + +\*---------------------------------------------------------------------------*/ + +#ifndef reactingParcel_H +#define reactingParcel_H + +#include "typeInfo.H" +#include "contiguous.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +/*---------------------------------------------------------------------------*\ + Class reactingParcel Declaration +\*---------------------------------------------------------------------------*/ + +class reactingParcel +{ +public: + + //- Run-time type information + TypeName("reactingParcel"); + + //- Construct null + reactingParcel(); + + //- Destructor + virtual ~reactingParcel(); +}; + + +template<> +inline bool contiguous() +{ + return false; // Derived classes include scalar lists/fields +} + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.C index 45e68e1dbe..f24bd313d6 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.C @@ -24,28 +24,19 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(basicReactingMultiphaseParcel, 0); - defineParticleTypeNameAndDebug(basicReactingMultiphaseParcel, 0); - defineParcelTypeNameAndDebug(basicReactingMultiphaseParcel, 0); -}; - +#include "BasicReactingMultiphaseParcel.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel +template +Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel ( - ReactingMultiphaseCloud& owner, + ReactingMultiphaseCloud >& owner, const vector& position, const label cellI ) : - ReactingMultiphaseParcel + ReactingMultiphaseParcel > ( owner, position, @@ -54,9 +45,10 @@ Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel {} -Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel +template +Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel ( - ReactingMultiphaseCloud& owner, + ReactingMultiphaseCloud >& owner, const vector& position, const label cellI, const label typeId, @@ -67,10 +59,12 @@ Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel const scalarField& YLiquid0, const scalarField& YSolid0, const scalarField& Y0, - const constantProperties& constProps + const typename + ReactingMultiphaseParcel:: + constantProperties& constProps ) : - ReactingMultiphaseParcel + ReactingMultiphaseParcel > ( owner, position, @@ -88,14 +82,15 @@ Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel {} -Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel +template +Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel ( - const Cloud& cloud, + const Cloud >& cloud, Istream& is, bool readFields ) : - ReactingMultiphaseParcel + ReactingMultiphaseParcel > ( cloud, is, @@ -104,18 +99,21 @@ Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel {} -Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel +template +Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel ( - const basicReactingMultiphaseParcel& p + const BasicReactingMultiphaseParcel& p ) : - ReactingMultiphaseParcel(p) + ReactingMultiphaseParcel >(p) {} // * * * * * * * * * * * * * * * * Destructors * * * * * * * * * * * * * * // -Foam::basicReactingMultiphaseParcel::~basicReactingMultiphaseParcel() +template +Foam::BasicReactingMultiphaseParcel:: +~BasicReactingMultiphaseParcel() {} diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.H b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.H index 9f3cc3aa41..2d79c9a1b7 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.H +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.H @@ -23,56 +23,67 @@ License Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Class - Foam::basicReactingMultiphaseParcel + Foam::BasicReactingMultiphaseParcel Description SourceFiles - basicReactingMultiphaseParcel.C - basicReactingMultiphaseParcelIO.C + BasicReactingMultiphaseParcel.C + BasicReactingMultiphaseParcelIO.C \*---------------------------------------------------------------------------*/ -#ifndef basicReactingMultiphaseParcel_H -#define basicReactingMultiphaseParcel_H +#ifndef BasicReactingMultiphaseParcel_H +#define BasicReactingMultiphaseParcel_H #include "ReactingMultiphaseParcel.H" +#include "reactingParcel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { +// Forward declaration of classes +template +class BasicReactingMultiphaseParcel; + /*---------------------------------------------------------------------------*\ - Class basicReactingMultiphaseParcel Declaration + Class BasicReactingMultiphaseParcel Declaration \*---------------------------------------------------------------------------*/ -class basicReactingMultiphaseParcel +template +class BasicReactingMultiphaseParcel : - public ReactingMultiphaseParcel + public reactingParcel, + public ReactingMultiphaseParcel > { public: + //- The type of thermodynamics this parcel was instantiated for + typedef ThermoType thermoType; + //- Run-time type information - TypeName("basicReactingMultiphaseParcel"); + TypeName("BasicReactingMultiphaseParcel"); // Constructors //- Construct from owner, position, and cloud owner // Other properties initialised as null - basicReactingMultiphaseParcel + BasicReactingMultiphaseParcel ( - ReactingMultiphaseCloud& owner, + ReactingMultiphaseCloud& owner, const vector& position, const label cellI ); //- Construct from components - basicReactingMultiphaseParcel + BasicReactingMultiphaseParcel ( - ReactingMultiphaseCloud& owner, + ReactingMultiphaseCloud& owner, const vector& position, const label cellI, const label typeId, @@ -83,49 +94,50 @@ public: const scalarField& YLiquid0, const scalarField& YSolid0, const scalarField& Y0, - const constantProperties& constProps + const typename + ReactingMultiphaseParcel:: + constantProperties& constProps ); //- Construct from Istream - basicReactingMultiphaseParcel + BasicReactingMultiphaseParcel ( - const Cloud& c, + const Cloud& c, Istream& is, bool readFields = true ); //- Construct as a copy - basicReactingMultiphaseParcel(const basicReactingMultiphaseParcel& p); + BasicReactingMultiphaseParcel(const BasicReactingMultiphaseParcel& p); //- Construct and return a clone - autoPtr clone() const + autoPtr clone() const { return - autoPtr + autoPtr ( - new basicReactingMultiphaseParcel(*this) + new BasicReactingMultiphaseParcel(*this) ); } //- Destructor - virtual ~basicReactingMultiphaseParcel(); + virtual ~BasicReactingMultiphaseParcel(); }; -template<> -inline bool contiguous() -{ - return false; // Now have scalar lists/fields (mass fractions) -} - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#ifdef NoRepository + #include "BasicReactingMultiphaseParcel.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + #endif // ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/basicReactingMultiphaseParcelTypes.H b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/basicReactingMultiphaseParcelTypes.H new file mode 100644 index 0000000000..d693682796 --- /dev/null +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/basicReactingMultiphaseParcelTypes.H @@ -0,0 +1,45 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. + \\/ M anipulation | +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the + Free Software Foundation; either version 2 of the License, or (at your + option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM; if not, write to the Free Software Foundation, + Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +\*---------------------------------------------------------------------------*/ + +#ifndef basicReactingMultiphaseParcelTypes_H +#define basicReactingMultiphaseParcelTypes_H + +#include "BasicReactingMultiphaseParcel.H" +#include "ReactingCloudThermoTypes.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + typedef BasicReactingMultiphaseParcel + bReactingMultiphaseParcel; +}; + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/defineBasicReactingMultiphaseParcel.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/defineBasicReactingMultiphaseParcel.C index 5278c5e0f5..d022f38f20 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/defineBasicReactingMultiphaseParcel.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/defineBasicReactingMultiphaseParcel.C @@ -24,72 +24,76 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" #include "ReactingMultiphaseCloud.H" namespace Foam { - defineTemplateTypeNameAndDebug(Cloud, 0); + defineTemplateTypeNameAndDebug(bReactingMultiphaseParcel, 0); + + defineTemplateTypeNameAndDebug(Particle, 0); + + defineTemplateTypeNameAndDebug(Cloud, 0); defineParcelTypeNameAndDebug ( - KinematicParcel, - 0 - ); -// defineTemplateTypeNameAndDebug -// ( -// KinematicParcel, -// 0 -// ); - defineParcelTypeNameAndDebug - ( - ThermoParcel, + KinematicParcel, 0 ); defineTemplateTypeNameAndDebug ( - ThermoParcel, + KinematicParcel, 0 ); defineParcelTypeNameAndDebug ( - ReactingParcel, + ThermoParcel, 0 ); defineTemplateTypeNameAndDebug ( - ReactingParcel, + ThermoParcel, 0 ); defineParcelTypeNameAndDebug ( - ReactingMultiphaseParcel, + ReactingParcel, 0 ); defineTemplateTypeNameAndDebug ( - ReactingMultiphaseParcel, + ReactingParcel, + 0 + ); + defineParcelTypeNameAndDebug + ( + ReactingMultiphaseParcel, + 0 + ); + defineTemplateTypeNameAndDebug + ( + ReactingMultiphaseParcel, 0 ); defineParcelTypeNameAndDebug ( - KinematicCloud, + KinematicCloud, 0 ); defineParcelTypeNameAndDebug ( - ThermoCloud, + ThermoCloud, 0 ); defineParcelTypeNameAndDebug ( - ReactingCloud, + ReactingCloud, 0 ); defineParcelTypeNameAndDebug ( - ReactingMultiphaseCloud, + ReactingMultiphaseCloud, 0 ); diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelCompositionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelCompositionModels.C index 4dd31ffb58..c156409793 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelCompositionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelCompositionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" #include "ReactingCloud.H" #include "SingleMixtureFraction.H" @@ -35,7 +35,7 @@ namespace Foam { makeCompositionModel ( - ReactingCloud + ReactingCloud ); // Add instances of composition model to the table @@ -43,7 +43,7 @@ namespace Foam ( SingleMixtureFraction, ReactingCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDevolatilisationModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDevolatilisationModels.C index 8704e48d80..8bd2d5b961 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDevolatilisationModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDevolatilisationModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" #include "ReactingMultiphaseCloud.H" #include "NoDevolatilisation.H" @@ -37,7 +37,7 @@ namespace Foam { makeDevolatilisationModel ( - ReactingMultiphaseCloud + ReactingMultiphaseCloud ); // Add instances of devolatilisation model to the table @@ -45,19 +45,19 @@ namespace Foam ( NoDevolatilisation, ReactingMultiphaseCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makeDevolatilisationModelType ( ConstantRateDevolatilisation, ReactingMultiphaseCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makeDevolatilisationModelType ( SingleKineticRateDevolatilisation, ReactingMultiphaseCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDispersionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDispersionModels.C index 8e4a77d5e3..6de7b5da1a 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDispersionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDispersionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" #include "KinematicCloud.H" #include "NoDispersion.H" @@ -35,11 +35,11 @@ License namespace Foam { - makeDispersionModel(KinematicCloud); + makeDispersionModel(KinematicCloud); defineNamedTemplateTypeNameAndDebug ( - DispersionRASModel >, + DispersionRASModel >, 0 ); @@ -48,19 +48,19 @@ namespace Foam ( NoDispersion, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makeDispersionModelType ( GradientDispersionRAS, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makeDispersionModelType ( StochasticDispersionRAS, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDragModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDragModels.C index 5e56985952..9cda16d3f4 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDragModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDragModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" #include "KinematicCloud.H" #include "NoDrag.H" @@ -34,15 +34,15 @@ License namespace Foam { - makeDragModel(KinematicCloud); + makeDragModel(KinematicCloud); // Add instances of drag model to the table - makeDragModelType(NoDrag, KinematicCloud, basicReactingMultiphaseParcel); + makeDragModelType(NoDrag, KinematicCloud, bReactingMultiphaseParcel); makeDragModelType ( SphereDrag, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelHeatTransferModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelHeatTransferModels.C index f501421d8b..53051b08da 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelHeatTransferModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelHeatTransferModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" #include "ThermoCloud.H" #include "NoHeatTransfer.H" @@ -34,20 +34,20 @@ License namespace Foam { - makeHeatTransferModel(ThermoCloud); + makeHeatTransferModel(ThermoCloud); // Add instances of heat transfer model to the table makeHeatTransferModelType ( NoHeatTransfer, ThermoCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makeHeatTransferModelType ( RanzMarshall, ThermoCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelInjectionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelInjectionModels.C index 6b427ae7c2..03ebbf29f5 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelInjectionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelInjectionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" #include "ReactingCloud.H" #include "ConeInjection.H" @@ -36,32 +36,32 @@ License namespace Foam { - makeInjectionModel(KinematicCloud); + makeInjectionModel(KinematicCloud); // Add instances of injection model to the table makeInjectionModelType ( ConeInjection, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makeInjectionModelType ( FieldActivatedInjection, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makeInjectionModelType ( ManualInjection, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makeInjectionModelType ( NoInjection, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPatchInteractionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPatchInteractionModels.C index f4a3047d77..67f00c34e6 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPatchInteractionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPatchInteractionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" #include "KinematicCloud.H" #include "LocalInteraction.H" @@ -35,26 +35,26 @@ License namespace Foam { - makePatchInteractionModel(KinematicCloud); + makePatchInteractionModel(KinematicCloud); // Add instances of patch interaction model to the table makePatchInteractionModelType ( LocalInteraction, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makePatchInteractionModelType ( Rebound, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makePatchInteractionModelType ( StandardWallInteraction, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPhaseChangeModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPhaseChangeModels.C index 99e9dfb89b..2fb67a6f83 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPhaseChangeModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPhaseChangeModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" #include "ReactingCloud.H" #include "NoPhaseChange.H" @@ -36,7 +36,7 @@ namespace Foam { makePhaseChangeModel ( - ReactingCloud + ReactingCloud ); // Add instances of phase change model to the table @@ -44,13 +44,13 @@ namespace Foam ( NoPhaseChange, ReactingCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makePhaseChangeModelType ( LiquidEvaporation, ReactingCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPostProcessingModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPostProcessingModels.C index 1cc61af670..96dfb6c610 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPostProcessingModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPostProcessingModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" #include "KinematicCloud.H" #include "NoPostProcessing.H" @@ -34,20 +34,20 @@ License namespace Foam { - makePostProcessingModel(KinematicCloud); + makePostProcessingModel(KinematicCloud); // Add instances of post-processing model to the table makePostProcessingModelType ( NoPostProcessing, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); makePostProcessingModelType ( StandardPostProcessing, KinematicCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C index d047880740..779a90c43f 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" #include "ReactingMultiphaseCloud.H" #include "NoSurfaceReaction.H" @@ -35,7 +35,7 @@ namespace Foam { makeSurfaceReactionModel ( - ReactingMultiphaseCloud + ReactingMultiphaseCloud ); // Add instances of surface reaction model to the table @@ -43,7 +43,7 @@ namespace Foam ( NoSurfaceReaction, ReactingMultiphaseCloud, - basicReactingMultiphaseParcel + bReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.C index 480f4d6b19..d2b00fdf73 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.C @@ -24,34 +24,26 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingParcel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(basicReactingParcel, 0); - defineParticleTypeNameAndDebug(basicReactingParcel, 0); - defineParcelTypeNameAndDebug(basicReactingParcel, 0); -}; - +#include "BasicReactingParcel.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::basicReactingParcel::basicReactingParcel +template +Foam::BasicReactingParcel::BasicReactingParcel ( - ReactingCloud& owner, + ReactingCloud >& owner, const vector& position, const label cellI ) : - ReactingParcel(owner, position, cellI) + ReactingParcel >(owner, position, cellI) {} -Foam::basicReactingParcel::basicReactingParcel +template +Foam::BasicReactingParcel::BasicReactingParcel ( - ReactingCloud& owner, + ReactingCloud >& owner, const vector& position, const label cellI, const label typeId, @@ -59,10 +51,11 @@ Foam::basicReactingParcel::basicReactingParcel const scalar d0, const vector& U0, const scalarField& Y0, - const constantProperties& constProps + const typename ReactingParcel >:: + constantProperties& constProps ) : - ReactingParcel + ReactingParcel > ( owner, position, @@ -77,29 +70,32 @@ Foam::basicReactingParcel::basicReactingParcel {} -Foam::basicReactingParcel::basicReactingParcel +template +Foam::BasicReactingParcel::BasicReactingParcel ( - const Cloud& cloud, + const Cloud >& cloud, Istream& is, bool readFields ) : - ReactingParcel(cloud, is, readFields) + ReactingParcel >(cloud, is, readFields) {} -Foam::basicReactingParcel::basicReactingParcel +template +Foam::BasicReactingParcel::BasicReactingParcel ( - const basicReactingParcel& p + const BasicReactingParcel& p ) : - ReactingParcel(p) + ReactingParcel(p) {} // * * * * * * * * * * * * * * * * Destructors * * * * * * * * * * * * * * // -Foam::basicReactingParcel::~basicReactingParcel() +template +Foam::BasicReactingParcel::~BasicReactingParcel() {} diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.H b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.H index 432199e532..64301a263b 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.H +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.H @@ -23,56 +23,66 @@ License Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Class - Foam::basicReactingParcel + Foam::BasicReactingParcel Description SourceFiles - basicReactingParcel.C - basicReactingParcelIO.C + BasicReactingParcel.C + BasicReactingParcelIO.C \*---------------------------------------------------------------------------*/ -#ifndef basicReactingParcel_H -#define basicReactingParcel_H +#ifndef BasicReactingParcel_H +#define BasicReactingParcel_H #include "ReactingParcel.H" +#include "reactingParcel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { +// Forward declaration of classes +template +class BasicReactingParcel; + /*---------------------------------------------------------------------------*\ - Class basicReactingParcel Declaration + Class BasicReactingParcel Declaration \*---------------------------------------------------------------------------*/ -class basicReactingParcel +template +class BasicReactingParcel : - public ReactingParcel + public reactingParcel, + public ReactingParcel > { public: + //- The type of thermodynamics this parcel was instantiated for + typedef ThermoType thermoType; + //- Run-time type information - TypeName("basicReactingParcel"); + TypeName("BasicReactingParcel"); // Constructors //- Construct from owner, position, and cloud owner // Other properties initialised as null - basicReactingParcel + BasicReactingParcel ( - ReactingCloud& owner, + ReactingCloud& owner, const vector& position, const label cellI ); //- Construct from components - basicReactingParcel + BasicReactingParcel ( - ReactingCloud& owner, + ReactingCloud& owner, const vector& position, const label cellI, const label typeId, @@ -80,49 +90,49 @@ public: const scalar d0, const vector& U0, const scalarField& Y0, - const constantProperties& constProps + const typename ReactingParcel:: + constantProperties& constProps ); //- Construct from Istream - basicReactingParcel + BasicReactingParcel ( - const Cloud& c, + const Cloud& c, Istream& is, bool readFields = true ); //- Construct as a copy - basicReactingParcel(const basicReactingParcel& p); + BasicReactingParcel(const BasicReactingParcel& p); //- Construct and return a clone - autoPtr clone() const + autoPtr clone() const { return - autoPtr + autoPtr ( - new basicReactingParcel(*this) + new BasicReactingParcel(*this) ); } //- Destructor - virtual ~basicReactingParcel(); + virtual ~BasicReactingParcel(); }; -template<> -inline bool contiguous() -{ - return false; // Now have scalar lists/fields (mass fractions) -} - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#ifdef NoRepository + #include "BasicReactingParcel.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + #endif // ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/basicReactingParcelTypes.H b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/basicReactingParcelTypes.H new file mode 100644 index 0000000000..c64bfc9473 --- /dev/null +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/basicReactingParcelTypes.H @@ -0,0 +1,83 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. + \\/ M anipulation | +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the + Free Software Foundation; either version 2 of the License, or (at your + option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM; if not, write to the Free Software Foundation, + Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +\*---------------------------------------------------------------------------*/ + +#ifndef basicReactingParcelTypes_H +#define basicReactingParcelTypes_H + +#include "BasicReactingParcel.H" +#include "BasicReactingCloud.H" + +#include "ReactingCloudThermoTypes.H" +#include "makeParcelIOList.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + typedef BasicReactingParcel bReactingParcel; +}; + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#define createReactingParcelType(ParcelType) \ + \ + createReactingParcelThermoType(ParcelType, specieConstProperties); \ + createReactingParcelThermoType(ParcelType, specieReactingProperties); + + +#define createReactingParcelThermoType(ParcelType, ThermoType) \ + \ + typedef ParcelType ParcelType##ThermoType; \ + \ + makeParcelIOList(ParcelType##ThermoType); \ + \ + defineTemplateTypeNameAndDebug(BasicReactingCloud, 0); \ + \ + defineTemplateTypeNameAndDebug(ParcelType##ThermoType, 0); \ + defineTemplateTypeNameAndDebug(Particle, 0); \ + defineTemplateTypeNameAndDebug(Cloud, 0); \ + \ + defineParcelTypeNameAndDebug(KinematicParcel, 0); \ + defineTemplateTypeNameAndDebug \ + ( \ + KinematicParcel, \ + 0 \ + ); \ + defineParcelTypeNameAndDebug(ThermoParcel, 0); \ + defineTemplateTypeNameAndDebug(ThermoParcel, 0); \ + defineParcelTypeNameAndDebug(ReactingParcel, 0); \ + defineTemplateTypeNameAndDebug(ReactingParcel, 0);\ + \ + defineParcelTypeNameAndDebug(KinematicCloud, 0); \ + defineParcelTypeNameAndDebug(ThermoCloud, 0); \ + defineParcelTypeNameAndDebug(ReactingCloud, 0); + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/defineBasicReactingParcel.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/defineBasicReactingParcel.C index 5c45881ccf..6e64dd43ce 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/defineBasicReactingParcel.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/defineBasicReactingParcel.C @@ -24,29 +24,13 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingParcel.H" -#include "ReactingCloud.H" +#include "basicReactingParcelTypes.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { - defineTemplateTypeNameAndDebug(Cloud, 0); - - defineParcelTypeNameAndDebug(KinematicParcel, 0); -// defineTemplateTypeNameAndDebug(KinematicParcel, 0); - defineParcelTypeNameAndDebug(ThermoParcel, 0); - defineTemplateTypeNameAndDebug(ThermoParcel, 0); - defineParcelTypeNameAndDebug(ReactingParcel, 0); - defineTemplateTypeNameAndDebug(ReactingParcel, 0); - - defineParcelTypeNameAndDebug(KinematicCloud, 0); -// defineTemplateTypeNameAndDebug(KinematicCloud, 0); - - defineParcelTypeNameAndDebug(ThermoCloud, 0); -// defineTemplateTypeNameAndDebug(ThermoCloud, 0); - - defineParcelTypeNameAndDebug(ReactingCloud, 0); -// defineTemplateTypeNameAndDebug(ReactingCloud, 0); - + createReactingParcelType(BasicReactingParcel); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelCompositionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelCompositionModels.C index 7010ab4f2c..ef686198d6 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelCompositionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelCompositionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingParcel.H" +#include "basicReactingParcelTypes.H" #include "ReactingCloud.H" #include "SinglePhaseMixture.H" @@ -33,14 +33,14 @@ License namespace Foam { - makeCompositionModel(ReactingCloud); + makeCompositionModel(ReactingCloud); // Add instances of composition model to the table makeCompositionModelType ( SinglePhaseMixture, ReactingCloud, - basicReactingParcel + bReactingParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelDispersionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelDispersionModels.C index d2b6132bca..81c8562f50 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelDispersionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelDispersionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingParcel.H" +#include "basicReactingParcelTypes.H" #include "KinematicCloud.H" #include "NoDispersion.H" @@ -35,11 +35,11 @@ License namespace Foam { - makeDispersionModel(KinematicCloud); + makeDispersionModel(KinematicCloud); defineNamedTemplateTypeNameAndDebug ( - DispersionRASModel >, + DispersionRASModel >, 0 ); @@ -48,19 +48,19 @@ namespace Foam ( NoDispersion, KinematicCloud, - basicReactingParcel + bReactingParcel ); makeDispersionModelType ( GradientDispersionRAS, KinematicCloud, - basicReactingParcel + bReactingParcel ); makeDispersionModelType ( StochasticDispersionRAS, KinematicCloud, - basicReactingParcel + bReactingParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelDragModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelDragModels.C index 0c43e221b1..6d51de8d7d 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelDragModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelDragModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingParcel.H" +#include "basicReactingParcelTypes.H" #include "KinematicCloud.H" #include "NoDrag.H" @@ -34,11 +34,11 @@ License namespace Foam { - makeDragModel(KinematicCloud); + makeDragModel(KinematicCloud); // Add instances of drag model to the table - makeDragModelType(NoDrag, KinematicCloud, basicReactingParcel); - makeDragModelType(SphereDrag, KinematicCloud, basicReactingParcel); + makeDragModelType(NoDrag, KinematicCloud, bReactingParcel); + makeDragModelType(SphereDrag, KinematicCloud, bReactingParcel); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelHeatTransferModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelHeatTransferModels.C index 5bc2ea33a8..fbb32db8e4 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelHeatTransferModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelHeatTransferModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingParcel.H" +#include "basicReactingParcelTypes.H" #include "ThermoCloud.H" #include "NoHeatTransfer.H" @@ -34,20 +34,20 @@ License namespace Foam { - makeHeatTransferModel(ThermoCloud); + makeHeatTransferModel(ThermoCloud); // Add instances of heat transfer model to the table makeHeatTransferModelType ( NoHeatTransfer, ThermoCloud, - basicReactingParcel + bReactingParcel ); makeHeatTransferModelType ( RanzMarshall, ThermoCloud, - basicReactingParcel + bReactingParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelInjectionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelInjectionModels.C index 28355e9f67..7402b25ecc 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelInjectionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelInjectionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingParcel.H" +#include "basicReactingParcelTypes.H" #include "ReactingCloud.H" #include "ConeInjection.H" @@ -37,38 +37,38 @@ License namespace Foam { - makeInjectionModel(KinematicCloud); + makeInjectionModel(KinematicCloud); // Add instances of injection model to the table makeInjectionModelType ( ConeInjection, KinematicCloud, - basicReactingParcel + bReactingParcel ); makeInjectionModelType ( FieldActivatedInjection, KinematicCloud, - basicReactingParcel + bReactingParcel ); makeInjectionModelType ( ManualInjection, KinematicCloud, - basicReactingParcel + bReactingParcel ); makeInjectionModelType ( NoInjection, KinematicCloud, - basicReactingParcel + bReactingParcel ); makeInjectionModelType ( ReactingLookupTableInjection, KinematicCloud, - basicReactingParcel + bReactingParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPatchInteractionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPatchInteractionModels.C index e596670663..f0abeae98b 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPatchInteractionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPatchInteractionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingParcel.H" +#include "basicReactingParcelTypes.H" #include "KinematicCloud.H" #include "LocalInteraction.H" @@ -35,26 +35,26 @@ License namespace Foam { - makePatchInteractionModel(KinematicCloud); + makePatchInteractionModel(KinematicCloud); // Add instances of patch interaction model to the table makePatchInteractionModelType ( LocalInteraction, KinematicCloud, - basicReactingParcel + bReactingParcel ); makePatchInteractionModelType ( Rebound, KinematicCloud, - basicReactingParcel + bReactingParcel ); makePatchInteractionModelType ( StandardWallInteraction, KinematicCloud, - basicReactingParcel + bReactingParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPhaseChangeModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPhaseChangeModels.C index f8ce035ada..c0190acefa 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPhaseChangeModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPhaseChangeModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingParcel.H" +#include "basicReactingParcelTypes.H" #include "ReactingCloud.H" #include "NoPhaseChange.H" @@ -34,20 +34,20 @@ License namespace Foam { - makePhaseChangeModel(ReactingCloud); + makePhaseChangeModel(ReactingCloud); // Add instances of phase change model to the table makePhaseChangeModelType ( NoPhaseChange, ReactingCloud, - basicReactingParcel + bReactingParcel ); makePhaseChangeModelType ( LiquidEvaporation, ReactingCloud, - basicReactingParcel + bReactingParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPostProcessingModels.C b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPostProcessingModels.C index ca9a3dba6c..cd8bd46b23 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPostProcessingModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/submodels/makeBasicReactingParcelPostProcessingModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "basicReactingParcel.H" +#include "basicReactingParcelTypes.H" #include "KinematicCloud.H" #include "NoPostProcessing.H" @@ -34,20 +34,20 @@ License namespace Foam { - makePostProcessingModel(KinematicCloud); + makePostProcessingModel(KinematicCloud); // Add instances of post-processing model to the table makePostProcessingModelType ( NoPostProcessing, KinematicCloud, - basicReactingParcel + bReactingParcel ); makePostProcessingModelType ( StandardPostProcessing, KinematicCloud, - basicReactingParcel + bReactingParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/BasicTrackedReactingParcel.C b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/BasicTrackedReactingParcel.C index 156953a804..ae828896e9 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/BasicTrackedReactingParcel.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/BasicTrackedReactingParcel.C @@ -24,34 +24,31 @@ License \*---------------------------------------------------------------------------*/ -#include "trackedReactingParcel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(trackedReactingParcel, 0); - defineParticleTypeNameAndDebug(trackedReactingParcel, 0); - defineParcelTypeNameAndDebug(trackedReactingParcel, 0); -} - +#include "BasicTrackedReactingParcel.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::trackedReactingParcel::trackedReactingParcel +template +Foam::BasicTrackedReactingParcel::BasicTrackedReactingParcel ( - ReactingCloud& owner, + ReactingCloud >& owner, const vector& position, const label cellI ) : - TrackedReactingParcel(owner, position, cellI) + TrackedReactingParcel > + ( + owner, + position, + cellI + ) {} -Foam::trackedReactingParcel::trackedReactingParcel +template +Foam::BasicTrackedReactingParcel::BasicTrackedReactingParcel ( - ReactingCloud& owner, + ReactingCloud >& owner, const vector& position, const label cellI, const label typeId, @@ -59,10 +56,12 @@ Foam::trackedReactingParcel::trackedReactingParcel const scalar d0, const vector& U0, const scalarField& Y0, - const constantProperties& constProps + const typename + TrackedReactingParcel >:: + constantProperties& constProps ) : - TrackedReactingParcel + TrackedReactingParcel > ( owner, position, @@ -77,29 +76,37 @@ Foam::trackedReactingParcel::trackedReactingParcel {} -Foam::trackedReactingParcel::trackedReactingParcel +template +Foam::BasicTrackedReactingParcel::BasicTrackedReactingParcel ( - const Cloud& cloud, + const Cloud >& cloud, Istream& is, bool readFields ) : - TrackedReactingParcel(cloud, is, readFields) + TrackedReactingParcel > + ( + cloud, + is, + readFields + ) {} -Foam::trackedReactingParcel::trackedReactingParcel +template +Foam::BasicTrackedReactingParcel::BasicTrackedReactingParcel ( - const trackedReactingParcel& p + const BasicTrackedReactingParcel& p ) : - TrackedReactingParcel(p) + TrackedReactingParcel >(p) {} // * * * * * * * * * * * * * * * * Destructors * * * * * * * * * * * * * * // -Foam::trackedReactingParcel::~trackedReactingParcel() +template +Foam::BasicTrackedReactingParcel::~BasicTrackedReactingParcel() {} diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/BasicTrackedReactingParcel.H b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/BasicTrackedReactingParcel.H index 47e0291a65..ef9ebda34d 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/BasicTrackedReactingParcel.H +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/BasicTrackedReactingParcel.H @@ -23,56 +23,66 @@ License Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Class - Foam::trackedReactingParcel + Foam::BasicTrackedReactingParcel Description SourceFiles - trackedReactingParcel.C - trackedReactingParcelIO.C + BasicTrackedReactingParcel.C + BasicTrackedReactingParcelIO.C \*---------------------------------------------------------------------------*/ -#ifndef trackedReactingParcel_H -#define trackedReactingParcel_H +#ifndef BasicTrackedReactingParcel_H +#define BasicTrackedReactingParcel_H #include "TrackedReactingParcel.H" +#include "reactingParcel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { +// Forward declaration of classes +template +class BasicTrackedReactingParcel; + /*---------------------------------------------------------------------------*\ - Class trackedReactingParcel Declaration + Class BasicTrackedReactingParcel Declaration \*---------------------------------------------------------------------------*/ -class trackedReactingParcel +template +class BasicTrackedReactingParcel : - public TrackedReactingParcel + public reactingParcel, + public TrackedReactingParcel > { public: + //- The type of thermodynamics this parcel was instantiated for + typedef ThermoType thermoType; + //- Run-time type information - TypeName("trackedReactingParcel"); + TypeName("BasicTrackedReactingParcel"); // Constructors //- Construct from owner, position, and cloud owner // Other properties initialised as null - trackedReactingParcel + BasicTrackedReactingParcel ( - ReactingCloud& owner, + ReactingCloud& owner, const vector& position, const label cellI ); //- Construct from components - trackedReactingParcel + BasicTrackedReactingParcel ( - ReactingCloud& owner, + ReactingCloud& owner, const vector& position, const label cellI, const label typeId, @@ -80,49 +90,50 @@ public: const scalar d0, const vector& U0, const scalarField& Y0, - const constantProperties& constProps + const typename + TrackedReactingParcel:: + constantProperties& constProps ); //- Construct from Istream - trackedReactingParcel + BasicTrackedReactingParcel ( - const Cloud& c, + const Cloud& c, Istream& is, bool readFields = true ); //- Construct as a copy - trackedReactingParcel(const trackedReactingParcel& p); + BasicTrackedReactingParcel(const BasicTrackedReactingParcel& p); //- Construct and return a clone - autoPtr clone() const + autoPtr clone() const { return - autoPtr + autoPtr ( - new trackedReactingParcel(*this) + new BasicTrackedReactingParcel(*this) ); } //- Destructor - virtual ~trackedReactingParcel(); + virtual ~BasicTrackedReactingParcel(); }; -template<> -inline bool contiguous() -{ - return false; // Now have scalar lists/fields (mass fractions) -} - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#ifdef NoRepository + #include "BasicTrackedReactingParcel.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + #endif // ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/basicTrackedReactingParcelTypes.H b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/basicTrackedReactingParcelTypes.H new file mode 100644 index 0000000000..9a30c248c7 --- /dev/null +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/basicTrackedReactingParcelTypes.H @@ -0,0 +1,45 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. + \\/ M anipulation | +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the + Free Software Foundation; either version 2 of the License, or (at your + option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM; if not, write to the Free Software Foundation, + Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +\*---------------------------------------------------------------------------*/ + +#ifndef basicTrackedReactingParcelTypes_H +#define basicTrackedReactingParcelTypes_H + +#include "BasicTrackedReactingParcel.H" +#include "ReactingCloudThermoTypes.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + typedef BasicTrackedReactingParcel + bTrackedReactingParcel; +}; + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/defineTrackedReactingParcel.C b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/defineTrackedReactingParcel.C index 0d050351ef..9d7660fab7 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/defineTrackedReactingParcel.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/defineTrackedReactingParcel.C @@ -24,33 +24,35 @@ License \*---------------------------------------------------------------------------*/ -#include "trackedReactingParcel.H" -#include "ReactingCloud.H" +#include "basicTrackedReactingParcelTypes.H" +#include "BasicReactingCloud.H" namespace Foam { - defineTemplateTypeNameAndDebug(Cloud, 0); + defineTemplateTypeNameAndDebug(bTrackedReactingParcel, 0); + defineTemplateTypeNameAndDebug(Particle, 0); + defineTemplateTypeNameAndDebug(Cloud, 0); - defineParcelTypeNameAndDebug(KinematicParcel, 0); -// defineTemplateTypeNameAndDebug(KinematicParcel, 0); - defineParcelTypeNameAndDebug(ThermoParcel, 0); - defineTemplateTypeNameAndDebug(ThermoParcel, 0); - defineParcelTypeNameAndDebug(ReactingParcel, 0); - defineTemplateTypeNameAndDebug(ReactingParcel, 0); + defineParcelTypeNameAndDebug(KinematicParcel, 0); + defineTemplateTypeNameAndDebug(KinematicParcel, 0); + defineParcelTypeNameAndDebug(ThermoParcel, 0); + defineTemplateTypeNameAndDebug(ThermoParcel, 0); + defineParcelTypeNameAndDebug(ReactingParcel, 0); + defineTemplateTypeNameAndDebug(ReactingParcel, 0); defineTemplateTypeNameAndDebug ( - TrackedReactingParcel, + TrackedReactingParcel, 0 ); - defineParcelTypeNameAndDebug(KinematicCloud, 0); -// defineTemplateTypeNameAndDebug(KinematicCloud, 0); + defineParcelTypeNameAndDebug(KinematicCloud, 0); +// defineTemplateTypeNameAndDebug(KinematicCloud, 0); - defineParcelTypeNameAndDebug(ThermoCloud, 0); -// defineTemplateTypeNameAndDebug(ThermoCloud, 0); + defineParcelTypeNameAndDebug(ThermoCloud, 0); +// defineTemplateTypeNameAndDebug(ThermoCloud, 0); - defineParcelTypeNameAndDebug(ReactingCloud, 0); -// defineTemplateTypeNameAndDebug(ReactingCloud, 0); + defineParcelTypeNameAndDebug(ReactingCloud, 0); +// defineTemplateTypeNameAndDebug(ReactingCloud, 0); } diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelCompositionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelCompositionModels.C index 342c3b6db5..e573e7ca36 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelCompositionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelCompositionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "trackedReactingParcel.H" +#include "basicTrackedReactingParcelTypes.H" #include "ReactingCloud.H" #include "SinglePhaseMixture.H" @@ -33,14 +33,14 @@ License namespace Foam { - makeCompositionModel(ReactingCloud); + makeCompositionModel(ReactingCloud); // Add instances of composition model to the table makeCompositionModelType ( SinglePhaseMixture, ReactingCloud, - trackedReactingParcel + bTrackedReactingParcel ); } diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelDispersionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelDispersionModels.C index ce1a1dd90d..1858335ca9 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelDispersionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelDispersionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "trackedReactingParcel.H" +#include "basicTrackedReactingParcelTypes.H" #include "KinematicCloud.H" #include "NoDispersion.H" @@ -35,11 +35,11 @@ License namespace Foam { - makeDispersionModel(KinematicCloud); + makeDispersionModel(KinematicCloud); defineNamedTemplateTypeNameAndDebug ( - DispersionRASModel >, + DispersionRASModel >, 0 ); @@ -48,19 +48,19 @@ namespace Foam ( NoDispersion, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); makeDispersionModelType ( GradientDispersionRAS, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); makeDispersionModelType ( StochasticDispersionRAS, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); } diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelDragModels.C b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelDragModels.C index a148878048..358da8e2e2 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelDragModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelDragModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "trackedReactingParcel.H" +#include "basicTrackedReactingParcelTypes.H" #include "KinematicCloud.H" #include "NoDrag.H" @@ -34,11 +34,11 @@ License namespace Foam { - makeDragModel(KinematicCloud); + makeDragModel(KinematicCloud); // Add instances of drag model to the table - makeDragModelType(NoDrag, KinematicCloud, trackedReactingParcel); - makeDragModelType(SphereDrag, KinematicCloud, trackedReactingParcel); + makeDragModelType(NoDrag, KinematicCloud, bTrackedReactingParcel); + makeDragModelType(SphereDrag, KinematicCloud, bTrackedReactingParcel); } diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelHeatTransferModels.C b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelHeatTransferModels.C index 56843b4862..7dfe9a3131 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelHeatTransferModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelHeatTransferModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "trackedReactingParcel.H" +#include "basicTrackedReactingParcelTypes.H" #include "ThermoCloud.H" #include "NoHeatTransfer.H" @@ -34,20 +34,20 @@ License namespace Foam { - makeHeatTransferModel(ThermoCloud); + makeHeatTransferModel(ThermoCloud); // Add instances of heat transfer model to the table makeHeatTransferModelType ( NoHeatTransfer, ThermoCloud, - trackedReactingParcel + bTrackedReactingParcel ); makeHeatTransferModelType ( RanzMarshall, ThermoCloud, - trackedReactingParcel + bTrackedReactingParcel ); } diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelInjectionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelInjectionModels.C index 480652141b..28083e2973 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelInjectionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelInjectionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "trackedReactingParcel.H" +#include "basicTrackedReactingParcelTypes.H" #include "ReactingCloud.H" #include "ConeInjection.H" @@ -37,38 +37,38 @@ License namespace Foam { - makeInjectionModel(KinematicCloud); + makeInjectionModel(KinematicCloud); // Add instances of injection model to the table makeInjectionModelType ( ConeInjection, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); makeInjectionModelType ( FieldActivatedInjection, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); makeInjectionModelType ( ManualInjection, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); makeInjectionModelType ( NoInjection, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); makeInjectionModelType ( ReactingLookupTableInjection, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); } diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPatchInteractionModels.C b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPatchInteractionModels.C index 4205bcc281..15dd56ee3d 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPatchInteractionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPatchInteractionModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "trackedReactingParcel.H" +#include "basicTrackedReactingParcelTypes.H" #include "KinematicCloud.H" #include "LocalInteraction.H" @@ -35,26 +35,26 @@ License namespace Foam { - makePatchInteractionModel(KinematicCloud); + makePatchInteractionModel(KinematicCloud); // Add instances of patch interaction model to the table makePatchInteractionModelType ( LocalInteraction, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); makePatchInteractionModelType ( Rebound, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); makePatchInteractionModelType ( StandardWallInteraction, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); } diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPhaseChangeModels.C b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPhaseChangeModels.C index 2c5d08bd94..533cf64dc9 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPhaseChangeModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPhaseChangeModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "trackedReactingParcel.H" +#include "basicTrackedReactingParcelTypes.H" #include "ReactingCloud.H" #include "NoPhaseChange.H" @@ -34,20 +34,20 @@ License namespace Foam { - makePhaseChangeModel(ReactingCloud); + makePhaseChangeModel(ReactingCloud); // Add instances of phase change model to the table makePhaseChangeModelType ( NoPhaseChange, ReactingCloud, - trackedReactingParcel + bTrackedReactingParcel ); makePhaseChangeModelType ( LiquidEvaporation, ReactingCloud, - trackedReactingParcel + bTrackedReactingParcel ); } diff --git a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPostProcessingModels.C b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPostProcessingModels.C index b4e25f1bea..c67cd52a6a 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPostProcessingModels.C +++ b/src/lagrangian/intermediate/parcels/derived/BasicTrackedReactingParcel/submodels/makeTrackedReactingParcelPostProcessingModels.C @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "trackedReactingParcel.H" +#include "basicTrackedReactingParcelTypes.H" #include "KinematicCloud.H" #include "NoPostProcessing.H" @@ -34,20 +34,20 @@ License namespace Foam { - makePostProcessingModel(KinematicCloud); + makePostProcessingModel(KinematicCloud); // Add instances of post-processing model to the table makePostProcessingModelType ( NoPostProcessing, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); makePostProcessingModelType ( StandardPostProcessing, KinematicCloud, - trackedReactingParcel + bTrackedReactingParcel ); } diff --git a/src/lagrangian/intermediate/submodels/IO/IOList/makeParcelIOLists.C b/src/lagrangian/intermediate/submodels/IO/IOList/makeParcelIOLists.C index ebf246f6d8..04ff69a9c6 100644 --- a/src/lagrangian/intermediate/submodels/IO/IOList/makeParcelIOLists.C +++ b/src/lagrangian/intermediate/submodels/IO/IOList/makeParcelIOLists.C @@ -28,10 +28,9 @@ License #include "basicKinematicParcel.H" #include "basicThermoParcel.H" -#include "basicReactingParcel.H" -#include "basicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcelTypes.H" -#include "trackedReactingParcel.H" +#include "basicTrackedReactingParcelTypes.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -39,10 +38,9 @@ namespace Foam { makeParcelIOList(basicKinematicParcel); makeParcelIOList(basicThermoParcel); - makeParcelIOList(basicReactingParcel); - makeParcelIOList(basicReactingMultiphaseParcel); + makeParcelIOList(bReactingMultiphaseParcel); - makeParcelIOList(trackedReactingParcel); + makeParcelIOList(bTrackedReactingParcel); }; diff --git a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C index ddcd74beb4..6acefb6ec8 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C +++ b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C @@ -110,7 +110,7 @@ Foam::CompositionModel::carrierThermo() const template -const Foam::PtrList& +const Foam::PtrList& Foam::CompositionModel::carrierSpecies() const { return carrierSpecies_; diff --git a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H index 8fb8762cf0..2dac578982 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H +++ b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H @@ -78,7 +78,7 @@ class CompositionModel hCombustionThermo& carrierThermo_; //- Reference to the carrier phase species - const PtrList& carrierSpecies_; + const PtrList& carrierSpecies_; //- Global (additional) liquid properties data autoPtr liquids_; @@ -152,7 +152,8 @@ public: // Composition lists //- Return the carrier species - const PtrList& carrierSpecies() const; + const PtrList& + carrierSpecies() const; //- Return the global (additional) liquids const liquidMixture& liquids() const;