diff --git a/src/lagrangian/intermediate/Make/files b/src/lagrangian/intermediate/Make/files index 8ac0c9f1b6..47d4a2239f 100644 --- a/src/lagrangian/intermediate/Make/files +++ b/src/lagrangian/intermediate/Make/files @@ -33,13 +33,15 @@ $(THERMOPARCEL)/makeBasicThermoParcelSubmodels.C /* reacting parcel sub-models */ -REACTINGPARCEL=$(DERIVEDPARCELS)/BasicReactingParcel +REACTINGPARCEL=$(DERIVEDPARCELS)/basicReactingParcel +$(REACTINGPARCEL)/basicReactingParcel.C $(REACTINGPARCEL)/defineBasicReactingParcel.C $(REACTINGPARCEL)/makeBasicReactingParcelSubmodels.C /* reacting multiphase parcel sub-models */ -REACTINGMPPARCEL=$(DERIVEDPARCELS)/BasicReactingMultiphaseParcel +REACTINGMPPARCEL=$(DERIVEDPARCELS)/basicReactingMultiphaseParcel +$(REACTINGMPPARCEL)/basicReactingMultiphaseParcel.C $(REACTINGMPPARCEL)/defineBasicReactingMultiphaseParcel.C $(REACTINGMPPARCEL)/makeBasicReactingMultiphaseParcelSubmodels.C diff --git a/src/lagrangian/intermediate/Make/options b/src/lagrangian/intermediate/Make/options index c67687c84e..5625914e28 100644 --- a/src/lagrangian/intermediate/Make/options +++ b/src/lagrangian/intermediate/Make/options @@ -10,6 +10,7 @@ EXE_INC = \ -I$(LIB_SRC)/thermophysicalModels/solids/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/solidMixture/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \ -I$(LIB_SRC)/turbulenceModels \ -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \ @@ -19,7 +20,6 @@ EXE_INC = \ -I$(LIB_SRC)/surfaceFilmModels/lnInclude LIB_LIBS = \ - -lsurfaceFilmModels \ -lfiniteVolume \ -lmeshTools \ -llagrangian \ @@ -31,8 +31,10 @@ LIB_LIBS = \ -lspecie \ -lbasicThermophysicalModels \ -lreactionThermophysicalModels \ + -lSLGThermo \ -lchemistryModel \ -lradiation \ -lODE \ -lcompressibleRASModels \ - -lcompressibleLESModels + -lcompressibleLESModels \ + -lsurfaceFilmModels diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C index bb04cd20c4..fec5e02ea3 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C @@ -67,9 +67,9 @@ void Foam::ReactingCloud::preEvolve() template void Foam::ReactingCloud::evolveCloud() { - const volScalarField& T = this->carrierThermo().T(); - const volScalarField cp = this->carrierThermo().Cp(); - const volScalarField& p = this->carrierThermo().p(); + const volScalarField& T = this->thermo().thermo().T(); + const volScalarField cp = this->thermo().thermo().Cp(); + const volScalarField& p = this->thermo().thermo().p(); autoPtr > rhoInterp = interpolation::New ( @@ -149,17 +149,13 @@ Foam::ReactingCloud::ReactingCloud const volScalarField& rho, const volVectorField& U, const dimensionedVector& g, - basicThermo& thermo, + const SLGThermo& thermo, bool readFields ) : ThermoCloud(cloudName, rho, U, g, thermo, false), reactingCloud(), constProps_(this->particleProperties()), - mcCarrierThermo_ - ( - dynamic_cast&>(thermo) - ), compositionModel_ ( CompositionModel >::New @@ -176,12 +172,13 @@ Foam::ReactingCloud::ReactingCloud *this ) ), - rhoTrans_(mcCarrierThermo_.species().size()), + rhoTrans_(thermo.carrier().species().size()), dMassPhaseChange_(0.0) { // Set storage for mass source fields and initialise to zero forAll(rhoTrans_, i) { + const word& specieName = thermo.carrier().species()[i]; rhoTrans_.set ( i, @@ -189,7 +186,7 @@ Foam::ReactingCloud::ReactingCloud ( IOobject ( - this->name() + "rhoTrans_" + mcCarrierThermo_.species()[i], + this->name() + "rhoTrans_" + specieName, this->db().time().timeName(), this->db(), IOobject::NO_READ, diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H index 1c380a37f9..38b33eab48 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H @@ -42,7 +42,6 @@ SourceFiles #include "ThermoCloud.H" #include "reactingCloud.H" -#include "multiComponentMixture.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -67,11 +66,6 @@ class ReactingCloud public ThermoCloud, public reactingCloud { -public: - - //- Type of thermodynamics the cloud was instantiated for - typedef typename ParcelType::thermoType thermoType; - private: @@ -91,9 +85,6 @@ protected: //- Parcel constant properties typename ParcelType::constantProperties constProps_; - //- Multi-component carrier phase thermo - multiComponentMixture& mcCarrierThermo_; - // References to the cloud sub-models @@ -154,7 +145,7 @@ public: const volScalarField& rho, const volVectorField& U, const dimensionedVector& g, - basicThermo& thermo, + const SLGThermo& thermo, bool readFields = true ); @@ -175,13 +166,6 @@ public: inline const typename ParcelType::constantProperties& constProps() const; - //- Return const access to multi-component carrier phase thermo - inline const multiComponentMixture& - mcCarrierThermo() const; - - //- Return access to multi-component carrier phase thermo - inline multiComponentMixture& mcCarrierThermo(); - // Sub-models diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H index e68f44dba4..bc859a9060 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H @@ -33,22 +33,6 @@ Foam::ReactingCloud::constProps() const } -template -inline const Foam::multiComponentMixture& -Foam::ReactingCloud::mcCarrierThermo() const -{ - return mcCarrierThermo_; -} - - -template -inline Foam::multiComponentMixture& -Foam::ReactingCloud::mcCarrierThermo() -{ - return mcCarrierThermo_; -} - - template inline const Foam::CompositionModel >& Foam::ReactingCloud::composition() const diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C index cd9d597b71..954f048634 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C @@ -40,9 +40,9 @@ void Foam::ReactingMultiphaseCloud::preEvolve() template void Foam::ReactingMultiphaseCloud::evolveCloud() { - const volScalarField& T = this->carrierThermo().T(); - const volScalarField cp = this->carrierThermo().Cp(); - const volScalarField& p = this->carrierThermo().p(); + const volScalarField& T = this->thermo().thermo().T(); + const volScalarField cp = this->thermo().thermo().Cp(); + const volScalarField& p = this->thermo().thermo().p(); autoPtr > rhoInterp = interpolation::New ( @@ -122,7 +122,7 @@ Foam::ReactingMultiphaseCloud::ReactingMultiphaseCloud const volScalarField& rho, const volVectorField& U, const dimensionedVector& g, - basicThermo& thermo, + const SLGThermo& thermo, bool readFields ) : diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H index a6b4de3de6..efd1eaab8e 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H @@ -136,7 +136,7 @@ public: const volScalarField& rho, const volVectorField& U, const dimensionedVector& g, - basicThermo& thermo, + const SLGThermo& thermo, bool readFields = true ); diff --git a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C index deb2fa3daa..96d6d59b8a 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C @@ -41,8 +41,8 @@ void Foam::ThermoCloud::preEvolve() template void Foam::ThermoCloud::evolveCloud() { - const volScalarField& T = carrierThermo_.T(); - const volScalarField cp = carrierThermo_.Cp(); + const volScalarField& T = thermo_.thermo().T(); + const volScalarField cp = thermo_.thermo().Cp(); autoPtr > rhoInterp = interpolation::New ( @@ -115,7 +115,7 @@ Foam::ThermoCloud::ThermoCloud const volScalarField& rho, const volVectorField& U, const dimensionedVector& g, - basicThermo& thermo, + const SLGThermo& thermo, bool readFields ) : @@ -124,13 +124,13 @@ Foam::ThermoCloud::ThermoCloud cloudName, rho, U, - thermo.mu(), + thermo.thermo().mu(), g, false ), thermoCloud(), constProps_(this->particleProperties()), - carrierThermo_(thermo), + thermo_(thermo), heatTransferModel_ ( HeatTransferModel >::New diff --git a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.H b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.H index 1450f8f10c..0f7c8afb23 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.H +++ b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.H @@ -41,7 +41,7 @@ SourceFiles #include "KinematicCloud.H" #include "thermoCloud.H" -#include "basicThermo.H" +#include "SLGThermo.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -82,8 +82,8 @@ protected: // References to the carrier gas fields - //- Thermodynamics package (basic) - basicThermo& carrierThermo_; + //- SLG thermodynamics package + const SLGThermo& thermo_; // References to the cloud sub-models @@ -136,7 +136,7 @@ public: const volScalarField& rho, const volVectorField& U, const dimensionedVector& g, - basicThermo& thermo, + const SLGThermo& thermo, bool readFields = true ); @@ -158,10 +158,7 @@ public: constProps() const; //- Return const access to thermo package - inline const basicThermo& carrierThermo() const; - - //- Return access to thermo package - inline basicThermo& carrierThermo(); + inline const SLGThermo& thermo() const; // Sub-models diff --git a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloudI.H b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloudI.H index 83e0f5708d..a8907205ce 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloudI.H +++ b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloudI.H @@ -38,18 +38,9 @@ Foam::ThermoCloud::constProps() const template -inline const Foam::basicThermo& -Foam::ThermoCloud::carrierThermo() const +inline const Foam::SLGThermo& Foam::ThermoCloud::thermo() const { - return carrierThermo_; -} - - -template -inline Foam::basicThermo& -Foam::ThermoCloud::carrierThermo() -{ - return carrierThermo_; + return thermo_; } diff --git a/src/lagrangian/intermediate/clouds/derived/BasicReactingCloud/BasicReactingCloud.H b/src/lagrangian/intermediate/clouds/derived/basicReactingCloud/basicReactingCloud.H similarity index 73% rename from src/lagrangian/intermediate/clouds/derived/BasicReactingCloud/BasicReactingCloud.H rename to src/lagrangian/intermediate/clouds/derived/basicReactingCloud/basicReactingCloud.H index 27159c7133..e9057ac69c 100644 --- a/src/lagrangian/intermediate/clouds/derived/BasicReactingCloud/BasicReactingCloud.H +++ b/src/lagrangian/intermediate/clouds/derived/basicReactingCloud/basicReactingCloud.H @@ -22,35 +22,27 @@ License along with OpenFOAM. If not, see . Class - Foam::BasicReactingCloud + Foam::basicReactingCloud Description - Reacting cloud templated on the type of carrier phase thermodynamics + Cloud class to introduce reacting parcels SourceFiles BasicReactingCloud.C \*---------------------------------------------------------------------------*/ -#ifndef BasicReactingCloud_H -#define BasicReactingCloud_H +#ifndef basicReactingCloud_H +#define basicReactingCloud_H #include "ReactingCloud.H" -#include "BasicReactingParcel.H" -#include "thermoPhysicsTypes.H" +#include "basicReactingParcel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { - typedef ReactingCloud > - constThermoReactingCloud; - - typedef ReactingCloud > - thermoReactingCloud; - - typedef ReactingCloud > - icoPoly8ThermoReactingCloud; + typedef ReactingCloud basicReactingCloud; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.H b/src/lagrangian/intermediate/clouds/derived/basicReactingMultiphaseCloud/basicReactingMultiphaseCloud.H similarity index 64% rename from src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.H rename to src/lagrangian/intermediate/clouds/derived/basicReactingMultiphaseCloud/basicReactingMultiphaseCloud.H index 8f14d51721..f56c60d1fa 100644 --- a/src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.H +++ b/src/lagrangian/intermediate/clouds/derived/basicReactingMultiphaseCloud/basicReactingMultiphaseCloud.H @@ -22,20 +22,18 @@ License along with OpenFOAM. If not, see . Class - Foam::BasicReactingMultiphaseCloud + Foam::basicReactingMultiphaseCloud Description - Reacting multiphase cloud templated on the type of carrier phase - thermodynamics + Cloud class to introduce multi-phase reacting parcels \*---------------------------------------------------------------------------*/ -#ifndef BasicReactingMultiphaseCloud_H -#define BasicReactingMultiphaseCloud_H +#ifndef basicReactingMultiphaseCloud_H +#define basicReactingMultiphaseCloud_H #include "ReactingMultiphaseCloud.H" -#include "BasicReactingMultiphaseParcel.H" -#include "thermoPhysicsTypes.H" +#include "basicReactingMultiphaseParcel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -43,30 +41,9 @@ namespace Foam { typedef ReactingMultiphaseCloud < - BasicReactingMultiphaseParcel - < - constGasThermoPhysics - > + basicReactingMultiphaseParcel > - constThermoReactingMultiphaseCloud; - - typedef ReactingMultiphaseCloud - < - BasicReactingMultiphaseParcel - < - gasThermoPhysics - > - > - thermoReactingMultiphaseCloud; - - typedef ReactingMultiphaseCloud - < - BasicReactingMultiphaseParcel - < - icoPoly8ThermoPhysics - > - > - icoPoly8ThermoReactingMultiphaseCloud; + basicReactingMultiphaseCloud; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C index 6ff07adc81..1deed776b9 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C @@ -170,8 +170,7 @@ void Foam::ReactingMultiphaseParcel::cellValueSourceCorrection forAll(td.cloud().rhoTrans(), i) { scalar Y = td.cloud().rhoTrans(i)[cellI]/addedMass; - cpEff += - Y*td.cloud().mcCarrierThermo().speciesData()[i].Cp(this->Tc_); + cpEff += Y*td.cloud().thermo().carrier().Cp(i, this->Tc_); } } const scalar cpc = td.cpInterp().psi()[cellI]; @@ -247,7 +246,7 @@ void Foam::ReactingMultiphaseParcel::calc scalar NCpW = 0.0; // Surface concentrations of emitted species - scalarField Cs(td.cloud().mcCarrierThermo().species().size(), 0.0); + scalarField Cs(td.cloud().composition().carrier().species().size(), 0.0); // Calc mass and enthalpy transfer due to phase change calcPhaseChange @@ -313,7 +312,7 @@ void Foam::ReactingMultiphaseParcel::calc scalarField dMassSRCarrier ( - td.cloud().mcCarrierThermo().species().size(), + td.cloud().composition().carrier().species().size(), 0.0 ); @@ -547,8 +546,8 @@ void Foam::ReactingMultiphaseParcel::calcDevolatilisation const scalar beta = sqr(cbrt(15.0) + cbrt(15.0)); const label id = td.cloud().composition().localToGlobalCarrierId(GAS, i); - const scalar Cp = td.cloud().mcCarrierThermo().speciesData()[id].Cp(Ts); - const scalar W = td.cloud().mcCarrierThermo().speciesData()[id].W(); + const scalar Cp = td.cloud().thermo().carrier().Cp(id, Ts); + const scalar W = td.cloud().thermo().carrier().W(id); const scalar Ni = dMassDV[i]/(this->areaS(d)*dt*W); // Dab calc'd using API vapour mass diffusivity function diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C index 08d614ff9b..fa5f3f5ede 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C @@ -89,8 +89,7 @@ void Foam::ReactingParcel::cellValueSourceCorrection forAll(td.cloud().rhoTrans(), i) { scalar Y = td.cloud().rhoTrans(i)[cellI]/addedMass; - cpEff += - Y*td.cloud().mcCarrierThermo().speciesData()[i].Cp(this->Tc_); + cpEff += Y*td.cloud().composition().carrier().Cp(i, this->Tc_); } } const scalar cpc = td.cpInterp().psi()[cellI]; @@ -121,13 +120,13 @@ void Foam::ReactingParcel::correctSurfaceValues } // Far field carrier molar fractions - scalarField Xinf(td.cloud().mcCarrierThermo().speciesData().size()); + scalarField Xinf(td.cloud().thermo().carrier().species().size()); forAll(Xinf, i) { Xinf[i] = - td.cloud().mcCarrierThermo().Y(i)[cellI] - /td.cloud().mcCarrierThermo().speciesData()[i].W(); + td.cloud().thermo().carrier().Y(i)[cellI] + /td.cloud().thermo().carrier().W(i); } Xinf /= sum(Xinf); @@ -149,7 +148,7 @@ void Foam::ReactingParcel::correctSurfaceValues const scalar Csi = Cs[i] + Xsff*Xinf[i]*CsTot; Xs[i] = (2.0*Csi + Xinf[i]*CsTot)/3.0; - Ys[i] = Xs[i]*td.cloud().mcCarrierThermo().speciesData()[i].W(); + Ys[i] = Xs[i]*td.cloud().thermo().carrier().W(i); } Xs /= sum(Xs); Ys /= sum(Ys); @@ -164,16 +163,13 @@ void Foam::ReactingParcel::correctSurfaceValues forAll(Ys, i) { - const scalar sqrtW = - sqrt(td.cloud().mcCarrierThermo().speciesData()[i].W()); - const scalar cbrtW = - cbrt(td.cloud().mcCarrierThermo().speciesData()[i].W()); + const scalar sqrtW = sqrt(td.cloud().thermo().carrier().W(i)); + const scalar cbrtW = cbrt(td.cloud().thermo().carrier().W(i)); - rhos += Xs[i]*td.cloud().mcCarrierThermo().speciesData()[i].W(); - mus += Ys[i]*sqrtW*td.cloud().mcCarrierThermo().speciesData()[i].mu(T); - kappa += - Ys[i]*cbrtW*td.cloud().mcCarrierThermo().speciesData()[i].kappa(T); - cps += Xs[i]*td.cloud().mcCarrierThermo().speciesData()[i].Cp(T); + rhos += Xs[i]*td.cloud().thermo().carrier().W(i); + mus += Ys[i]*sqrtW*td.cloud().thermo().carrier().mu(i, T); + kappa += Ys[i]*cbrtW*td.cloud().thermo().carrier().kappa(i, T); + cps += Xs[i]*td.cloud().thermo().carrier().Cp(i, T); sumYiSqrtW += Ys[i]*sqrtW; sumYiCbrtW += Ys[i]*cbrtW; @@ -267,7 +263,7 @@ void Foam::ReactingParcel::calc scalar NCpW = 0.0; // Surface concentrations of emitted species - scalarField Cs(td.cloud().mcCarrierThermo().species().size(), 0.0); + scalarField Cs(td.cloud().composition().carrier().species().size(), 0.0); // Calc mass and enthalpy transfer due to phase change calcPhaseChange @@ -416,10 +412,10 @@ void Foam::ReactingParcel::calcPhaseChange scalarField& Cs ) { - typedef PhaseChangeModel - < - typename ReactingParcel::trackData::cloudType - > phaseChangeModelType; + typedef typename ReactingParcel::trackData::cloudType cloudType; + typedef PhaseChangeModel phaseChangeModelType; + const CompositionModel& composition = td.cloud().composition(); + if ( @@ -458,9 +454,8 @@ void Foam::ReactingParcel::calcPhaseChange forAll(YComponents, i) { - const label idc = - td.cloud().composition().localToGlobalCarrierId(idPhase, i); - const label idl = td.cloud().composition().globalIds(idPhase)[i]; + const label idc = composition.localToGlobalCarrierId(idPhase, i); + const label idl = composition.globalIds(idPhase)[i]; // Calculate enthalpy transfer if @@ -469,28 +464,25 @@ void Foam::ReactingParcel::calcPhaseChange == phaseChangeModelType::etLatentHeat ) { - scalar hlp = - td.cloud().composition().liquids().properties()[idl].hl(pc_, T); + scalar hlp = composition.liquids().properties()[idl].hl(pc_, T); Sh -= dMassPC[i]*hlp/dt; } else { // Note: enthalpies of both phases must use the same reference - scalar hc = td.cloud().mcCarrierThermo().speciesData()[idc].H(T); - scalar hp = - td.cloud().composition().liquids().properties()[idl].h(pc_, T); + scalar hc = composition.carrier().H(idc, T); + scalar hp = composition.liquids().properties()[idl].h(pc_, T); Sh -= dMassPC[i]*(hc - hp)/dt; } // Update particle surface thermo properties const scalar Dab = - td.cloud().composition().liquids().properties()[idl].D(pc_, Ts, Wc); + composition.liquids().properties()[idl].D(pc_, Ts, Wc); - const scalar Cp = - td.cloud().mcCarrierThermo().speciesData()[idc].Cp(Ts); - const scalar W = td.cloud().mcCarrierThermo().speciesData()[idc].W(); + const scalar Cp = composition.carrier().Cp(idc, Ts); + const scalar W = composition.carrier().W(idc); const scalar Ni = dMassPC[i]/(this->areaS(d)*dt*W); // Molar flux of species coming from the particle (kmol/m^2/s) diff --git a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelSubmodels.C b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelSubmodels.C index 002e2eb66a..d6c2d4532e 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelSubmodels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelSubmodels.C @@ -32,7 +32,7 @@ License #include "makeParcelCollisionModels.H" #include "makeParcelPatchInteractionModels.H" #include "makeParcelPostProcessingModels.H" -#include "makeKinematicParcelSurfaceFilmModels.H" +#include "makeParcelSurfaceFilmModels.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -45,7 +45,7 @@ namespace Foam makeParcelCollisionModels(basicKinematicParcel); makeParcelPatchInteractionModels(basicKinematicParcel); makeParcelPostProcessingModels(basicKinematicParcel); - makeKinematicParcelSurfaceFilmModels(basicKinematicParcel); + makeParcelSurfaceFilmModels(basicKinematicParcel); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/basicReactingMultiphaseParcel.C similarity index 64% rename from src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/basicReactingMultiphaseParcel.C index 849575b92f..56359e0d96 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/basicReactingMultiphaseParcel.C @@ -23,19 +23,18 @@ License \*---------------------------------------------------------------------------*/ -#include "BasicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcel.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -template -Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel +Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel ( - ReactingMultiphaseCloud >& owner, + ReactingMultiphaseCloud& owner, const vector& position, const label cellI ) : - ReactingMultiphaseParcel > + ReactingMultiphaseParcel ( owner, position, @@ -44,10 +43,9 @@ Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel {} -template -Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel +Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel ( - ReactingMultiphaseCloud >& owner, + ReactingMultiphaseCloud& owner, const vector& position, const label cellI, const label typeId, @@ -61,12 +59,11 @@ Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel const scalarField& YLiquid0, const scalarField& YSolid0, const scalarField& Y0, - const typename - ReactingMultiphaseParcel:: + const ReactingMultiphaseParcel:: constantProperties& constProps ) : - ReactingMultiphaseParcel > + ReactingMultiphaseParcel ( owner, position, @@ -87,15 +84,14 @@ Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel {} -template -Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel +Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel ( - const Cloud >& cloud, + const Cloud& cloud, Istream& is, bool readFields ) : - ReactingMultiphaseParcel > + ReactingMultiphaseParcel ( cloud, is, @@ -104,21 +100,18 @@ Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel {} -template -Foam::BasicReactingMultiphaseParcel::BasicReactingMultiphaseParcel +Foam::basicReactingMultiphaseParcel::basicReactingMultiphaseParcel ( - const BasicReactingMultiphaseParcel& p + const basicReactingMultiphaseParcel& p ) : - ReactingMultiphaseParcel >(p) + ReactingMultiphaseParcel(p) {} // * * * * * * * * * * * * * * * * Destructors * * * * * * * * * * * * * * // -template -Foam::BasicReactingMultiphaseParcel:: -~BasicReactingMultiphaseParcel() +Foam::basicReactingMultiphaseParcel::~basicReactingMultiphaseParcel() {} diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.H b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/basicReactingMultiphaseParcel.H similarity index 67% rename from src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.H rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/basicReactingMultiphaseParcel.H index cc50ae66d1..6cc9d2f535 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/BasicReactingMultiphaseParcel.H +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/basicReactingMultiphaseParcel.H @@ -28,13 +28,13 @@ 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" @@ -44,43 +44,35 @@ SourceFiles namespace Foam { -// Forward declaration of classes -template -class BasicReactingMultiphaseParcel; - /*---------------------------------------------------------------------------*\ - Class BasicReactingMultiphaseParcel Declaration + Class basicReactingMultiphaseParcel Declaration \*---------------------------------------------------------------------------*/ -template -class BasicReactingMultiphaseParcel +class basicReactingMultiphaseParcel : - public ReactingMultiphaseParcel > + 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, @@ -94,35 +86,34 @@ public: const scalarField& YLiquid0, const scalarField& YSolid0, const scalarField& Y0, - const typename - ReactingMultiphaseParcel:: + const 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(); }; @@ -132,12 +123,6 @@ public: // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#ifdef NoRepository - #include "BasicReactingMultiphaseParcel.C" -#endif - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - #endif // ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/defineBasicReactingMultiphaseParcel.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/defineBasicReactingMultiphaseParcel.C similarity index 92% rename from src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/defineBasicReactingMultiphaseParcel.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/defineBasicReactingMultiphaseParcel.C index cbcc47926a..3c3e9fe8fa 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/defineBasicReactingMultiphaseParcel.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/defineBasicReactingMultiphaseParcel.C @@ -24,13 +24,13 @@ License \*---------------------------------------------------------------------------*/ #include "createReactingMultiphaseParcelTypes.H" -#include "BasicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { - createReactingMultiphaseParcelType(BasicReactingMultiphaseParcel); + createReactingMultiphaseParcelTypes(basicReactingMultiphaseParcel); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSubmodels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSubmodels.C similarity index 59% rename from src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSubmodels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSubmodels.C index b33358db3f..4db5e925a0 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSubmodels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSubmodels.C @@ -23,26 +23,26 @@ License \*---------------------------------------------------------------------------*/ -#include "BasicReactingMultiphaseParcel.H" +#include "basicReactingMultiphaseParcel.H" // Kinematic -#include "makeReactingParcelDispersionModels.H" -#include "makeReactingParcelDragModels.H" +#include "makeParcelDispersionModels.H" +#include "makeParcelDragModels.H" #include "makeReactingMultiphaseParcelInjectionModels.H" // MP variant -#include "makeReactingParcelCollisionModels.H" -#include "makeReactingParcelPatchInteractionModels.H" -#include "makeReactingParcelPostProcessingModels.H" +#include "makeParcelCollisionModels.H" +#include "makeParcelPatchInteractionModels.H" +#include "makeParcelPostProcessingModels.H" // Thermodynamic -#include "makeReactingParcelHeatTransferModels.H" +#include "makeParcelHeatTransferModels.H" // Reacting -#include "makeReactingMultiphaseParcelCompositionModels.H" // MP variant +#include "makeReactingMultiphaseParcelCompositionModels.H" // MP Variant #include "makeReactingParcelPhaseChangeModels.H" +#include "makeReactingParcelSurfaceFilmModels.H" // Reacting multiphase #include "makeReactingMultiphaseParcelDevolatilisationModels.H" -#include "makeReactingMultiphaseParcelSurfaceFilmModels.H" #include "makeReactingMultiphaseParcelSurfaceReactionModels.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -50,32 +50,32 @@ License namespace Foam { // Kinematic sub-models - makeReactingDispersionModels(BasicReactingMultiphaseParcel); - makeReactingDragModels(BasicReactingMultiphaseParcel); - makeReactingMultiphaseInjectionModels(BasicReactingMultiphaseParcel); - makeReactingCollisionModels(BasicReactingMultiphaseParcel); - makeReactingPatchInteractionModels(BasicReactingMultiphaseParcel); - makeReactingPostProcessingModels(BasicReactingMultiphaseParcel); + makeParcelDispersionModels(basicReactingMultiphaseParcel); + makeParcelDragModels(basicReactingMultiphaseParcel); + makeReactingMultiphaseParcelInjectionModels(basicReactingMultiphaseParcel); + makeParcelCollisionModels(basicReactingMultiphaseParcel); + makeParcelPatchInteractionModels(basicReactingMultiphaseParcel); + makeParcelPostProcessingModels(basicReactingMultiphaseParcel); // Thermo sub-models - makeReactingHeatTransferModels(BasicReactingMultiphaseParcel); + makeParcelHeatTransferModels(basicReactingMultiphaseParcel); // Reacting sub-models - makeReactingMultiphaseCompositionModels(BasicReactingMultiphaseParcel); - makeReactingPhaseChangeModels(BasicReactingMultiphaseParcel); + makeReactingMultiphaseParcelCompositionModels(basicReactingMultiphaseParcel); + makeReactingParcelPhaseChangeModels(basicReactingMultiphaseParcel); // Reacting multiphase sub-models - makeReactingMultiphaseDevolatilisationModels + makeReactingMultiphaseParcelDevolatilisationModels ( - BasicReactingMultiphaseParcel + basicReactingMultiphaseParcel ); - makeReactingMultiphaseSurfaceFilmModels + makeReactingParcelSurfaceFilmModels ( - BasicReactingMultiphaseParcel + basicReactingMultiphaseParcel ); - makeReactingMultiphaseSurfaceReactionModels + makeReactingMultiphaseParcelSurfaceReactionModels ( - BasicReactingMultiphaseParcel + basicReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/basicReactingParcel.C similarity index 65% rename from src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingParcel/basicReactingParcel.C index 5e173ff85e..23ef85c02e 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/basicReactingParcel.C @@ -23,26 +23,24 @@ License \*---------------------------------------------------------------------------*/ -#include "BasicReactingParcel.H" +#include "basicReactingParcel.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -template -Foam::BasicReactingParcel::BasicReactingParcel +Foam::basicReactingParcel::basicReactingParcel ( - ReactingCloud >& owner, + ReactingCloud& owner, const vector& position, const label cellI ) : - ReactingParcel >(owner, position, cellI) + ReactingParcel(owner, position, cellI) {} -template -Foam::BasicReactingParcel::BasicReactingParcel +Foam::basicReactingParcel::basicReactingParcel ( - ReactingCloud >& owner, + ReactingCloud& owner, const vector& position, const label cellI, const label typeId, @@ -53,11 +51,10 @@ Foam::BasicReactingParcel::BasicReactingParcel const vector& angularMomentum0, const vector& torque0, const scalarField& Y0, - const typename ReactingParcel >:: - constantProperties& constProps + const ReactingParcel::constantProperties& constProps ) : - ReactingParcel > + ReactingParcel ( owner, position, @@ -75,32 +72,29 @@ Foam::BasicReactingParcel::BasicReactingParcel {} -template -Foam::BasicReactingParcel::BasicReactingParcel +Foam::basicReactingParcel::basicReactingParcel ( - const Cloud >& cloud, + const Cloud& cloud, Istream& is, bool readFields ) : - ReactingParcel >(cloud, is, readFields) + ReactingParcel(cloud, is, readFields) {} -template -Foam::BasicReactingParcel::BasicReactingParcel +Foam::basicReactingParcel::basicReactingParcel ( - const BasicReactingParcel& p + const basicReactingParcel& p ) : - ReactingParcel(p) + ReactingParcel(p) {} // * * * * * * * * * * * * * * * * Destructors * * * * * * * * * * * * * * // -template -Foam::BasicReactingParcel::~BasicReactingParcel() +Foam::basicReactingParcel::~basicReactingParcel() {} diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.H b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/basicReactingParcel.H similarity index 67% rename from src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.H rename to src/lagrangian/intermediate/parcels/derived/basicReactingParcel/basicReactingParcel.H index dc3d69e75d..86e9d726f5 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/BasicReactingParcel.H +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/basicReactingParcel.H @@ -22,19 +22,18 @@ License along with OpenFOAM. If not, see . Class - Foam::BasicReactingParcel + Foam::basicReactingParcel Description SourceFiles - BasicReactingParcel.C - BasicReactingParcelIO.C + basicReactingParcel.C \*---------------------------------------------------------------------------*/ -#ifndef BasicReactingParcel_H -#define BasicReactingParcel_H +#ifndef basicReactingParcel_H +#define basicReactingParcel_H #include "ReactingParcel.H" @@ -43,43 +42,35 @@ SourceFiles namespace Foam { -// Forward declaration of classes -template -class BasicReactingParcel; - /*---------------------------------------------------------------------------*\ - Class BasicReactingParcel Declaration + Class basicReactingParcel Declaration \*---------------------------------------------------------------------------*/ -template -class BasicReactingParcel +class basicReactingParcel : - 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, @@ -90,49 +81,50 @@ public: const vector& angularMomentum0, const vector& torque0, const scalarField& Y0, - const typename ReactingParcel:: - constantProperties& constProps + const 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; +} + + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#ifdef NoRepository - #include "BasicReactingParcel.C" -#endif - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - #endif // ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/defineBasicReactingParcel.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/defineBasicReactingParcel.C similarity index 94% rename from src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/defineBasicReactingParcel.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingParcel/defineBasicReactingParcel.C index c4dc663cbd..0eb06eedd5 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/defineBasicReactingParcel.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/defineBasicReactingParcel.C @@ -23,14 +23,14 @@ License \*---------------------------------------------------------------------------*/ +#include "basicReactingParcel.H" #include "createReactingParcelTypes.H" -#include "BasicReactingParcel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { - createReactingParcelType(BasicReactingParcel); + createReactingParcelTypes(basicReactingParcel); }; diff --git a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/makeBasicReactingParcelSubmodels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelSubmodels.C similarity index 63% rename from src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/makeBasicReactingParcelSubmodels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelSubmodels.C index d2e23542d1..cd4f0e1775 100644 --- a/src/lagrangian/intermediate/parcels/derived/BasicReactingParcel/makeBasicReactingParcelSubmodels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelSubmodels.C @@ -23,18 +23,18 @@ License \*---------------------------------------------------------------------------*/ -#include "BasicReactingParcel.H" +#include "basicReactingParcel.H" // Kinematic -#include "makeReactingParcelDispersionModels.H" -#include "makeReactingParcelDragModels.H" -#include "makeReactingParcelInjectionModels.H" -#include "makeReactingParcelCollisionModels.H" -#include "makeReactingParcelPatchInteractionModels.H" -#include "makeReactingParcelPostProcessingModels.H" +#include "makeParcelDispersionModels.H" +#include "makeParcelDragModels.H" +#include "makeReactingParcelInjectionModels.H" // Reacting variant +#include "makeParcelCollisionModels.H" +#include "makeParcelPatchInteractionModels.H" +#include "makeParcelPostProcessingModels.H" // Thermodynamic -#include "makeReactingParcelHeatTransferModels.H" +#include "makeParcelHeatTransferModels.H" // Reacting #include "makeReactingParcelCompositionModels.H" @@ -46,20 +46,20 @@ License namespace Foam { // Kinematic sub-models - makeReactingDispersionModels(BasicReactingParcel); - makeReactingDragModels(BasicReactingParcel); - makeReactingInjectionModels(BasicReactingParcel); - makeReactingCollisionModels(BasicReactingParcel); - makeReactingPatchInteractionModels(BasicReactingParcel); - makeReactingPostProcessingModels(BasicReactingParcel); + makeParcelDispersionModels(basicReactingParcel); + makeParcelDragModels(basicReactingParcel); + makeReactingParcelInjectionModels(basicReactingParcel); + makeParcelCollisionModels(basicReactingParcel); + makeParcelPatchInteractionModels(basicReactingParcel); + makeParcelPostProcessingModels(basicReactingParcel); // Thermo sub-models - makeReactingHeatTransferModels(BasicReactingParcel); + makeParcelHeatTransferModels(basicReactingParcel); // Reacting sub-models - makeReactingCompositionModels(BasicReactingParcel); - makeReactingPhaseChangeModels(BasicReactingParcel); - makeReactingSurfaceFilmModels(BasicReactingParcel); + makeReactingParcelCompositionModels(basicReactingParcel); + makeReactingParcelPhaseChangeModels(basicReactingParcel); + makeReactingParcelSurfaceFilmModels(basicReactingParcel); }; diff --git a/src/lagrangian/intermediate/parcels/include/createKinematicParcelTypes.H b/src/lagrangian/intermediate/parcels/include/createKinematicParcelTypes.H new file mode 100644 index 0000000000..acdace44af --- /dev/null +++ b/src/lagrangian/intermediate/parcels/include/createKinematicParcelTypes.H @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2008-2010 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 3 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, see . + +\*---------------------------------------------------------------------------*/ + +#ifndef createKinematicParcelTypes_H +#define createKinematicParcelTypes_H + +#include "KinematicParcel.H" +#include "KinematicCloud.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#define createKinematicParcelTypes(ParcelType) \ + \ + defineTemplateTypeNameAndDebug(ParcelType, 0); \ + defineTemplateTypeNameAndDebug(Particle, 0); \ + defineTemplateTypeNameAndDebug(Cloud, 0); \ + \ + defineParcelTypeNameAndDebug(KinematicParcel, 0); \ + defineTemplateTypeNameAndDebug(KinematicParcel, 0); \ + defineParcelTypeNameAndDebug(KinematicCloud, 0); + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // + diff --git a/src/lagrangian/intermediate/parcels/include/createReactingMultiphaseParcelTypes.H b/src/lagrangian/intermediate/parcels/include/createReactingMultiphaseParcelTypes.H index 5013e8d905..50a31657bb 100644 --- a/src/lagrangian/intermediate/parcels/include/createReactingMultiphaseParcelTypes.H +++ b/src/lagrangian/intermediate/parcels/include/createReactingMultiphaseParcelTypes.H @@ -26,67 +26,20 @@ License #ifndef createReactingMultiphaseParcelTypes_H #define createReactingMultiphaseParcelTypes_H -#include "thermoPhysicsTypes.H" +#include "ReactingMultiphaseParcel.H" +#include "ReactingMultiphaseCloud.H" + +#include "createReactingParcelTypes.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define createReactingMultiphaseParcelType(ParcelType) \ +#define createReactingMultiphaseParcelTypes(ParcelType) \ \ - createReactingMultiphaseParcelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - createReactingMultiphaseParcelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - createReactingMultiphaseParcelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define createReactingMultiphaseParcelThermoType(ParcelType, ThermoType) \ + createReactingParcelTypes(ParcelType); \ \ - typedef ParcelType ParcelType##ThermoType; \ - \ - 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 \ - ( \ - ReactingMultiphaseParcel, \ - 0 \ - ); \ - defineTemplateTypeNameAndDebug \ - ( \ - ReactingMultiphaseParcel, \ - 0 \ - ); \ - \ - defineParcelTypeNameAndDebug(KinematicCloud, 0); \ - defineParcelTypeNameAndDebug(ThermoCloud, 0); \ - defineParcelTypeNameAndDebug(ReactingCloud, 0); \ - defineParcelTypeNameAndDebug \ - ( \ - ReactingMultiphaseCloud, \ - 0 \ - ); - + defineParcelTypeNameAndDebug(ReactingMultiphaseParcel, 0); \ + defineTemplateTypeNameAndDebug(ReactingMultiphaseParcel, 0); \ + defineParcelTypeNameAndDebug(ReactingMultiphaseCloud, 0); // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/lagrangian/intermediate/parcels/include/createReactingParcelTypes.H b/src/lagrangian/intermediate/parcels/include/createReactingParcelTypes.H index a530b43f8b..fb06844c9b 100644 --- a/src/lagrangian/intermediate/parcels/include/createReactingParcelTypes.H +++ b/src/lagrangian/intermediate/parcels/include/createReactingParcelTypes.H @@ -26,39 +26,20 @@ License #ifndef createReactingParcelTypes_H #define createReactingParcelTypes_H -#include "thermoPhysicsTypes.H" +#include "ReactingParcel.H" +#include "ReactingCloud.H" + +#include "createThermoParcelTypes.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define createReactingParcelType(ParcelType) \ +#define createReactingParcelTypes(ParcelType) \ \ - createReactingParcelThermoType(ParcelType, constGasThermoPhysics); \ - createReactingParcelThermoType(ParcelType, gasThermoPhysics); \ - createReactingParcelThermoType(ParcelType, icoPoly8ThermoPhysics); - - -#define createReactingParcelThermoType(ParcelType, ThermoType) \ + createThermoParcelTypes(ParcelType); \ \ - typedef ParcelType ParcelType##ThermoType; \ - \ - 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); + defineParcelTypeNameAndDebug(ReactingParcel, 0); \ + defineTemplateTypeNameAndDebug(ReactingParcel, 0); \ + defineParcelTypeNameAndDebug(ReactingCloud, 0); // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/lagrangian/intermediate/parcels/include/createThermoParcelTypes.H b/src/lagrangian/intermediate/parcels/include/createThermoParcelTypes.H new file mode 100644 index 0000000000..1cbab2a4bb --- /dev/null +++ b/src/lagrangian/intermediate/parcels/include/createThermoParcelTypes.H @@ -0,0 +1,51 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2008-2010 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 3 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, see . + +\*---------------------------------------------------------------------------*/ + +#ifndef createThermoParcelTypes_H +#define createThermoParcelTypes_H + +#include "ThermoParcel.H" +#include "ThermoCloud.H" + +#include "createKinematicParcelTypes.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#define createThermoParcelTypes(ParcelType) \ + \ + createKinematicParcelTypes(ParcelType); \ + \ + defineParcelTypeNameAndDebug(ThermoParcel, 0); \ + defineTemplateTypeNameAndDebug(ThermoParcel, 0); \ + defineParcelTypeNameAndDebug(ThermoCloud, 0); + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // + + diff --git a/src/lagrangian/intermediate/parcels/include/makeKinematicParcelSurfaceFilmModels.H b/src/lagrangian/intermediate/parcels/include/makeParcelSurfaceFilmModels.H similarity index 94% rename from src/lagrangian/intermediate/parcels/include/makeKinematicParcelSurfaceFilmModels.H rename to src/lagrangian/intermediate/parcels/include/makeParcelSurfaceFilmModels.H index 9f695653e6..b150710a4f 100644 --- a/src/lagrangian/intermediate/parcels/include/makeKinematicParcelSurfaceFilmModels.H +++ b/src/lagrangian/intermediate/parcels/include/makeParcelSurfaceFilmModels.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2009-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2008-2010 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -29,11 +29,12 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #include "KinematicCloud.H" + #include "NoSurfaceFilm.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define makeKinematicParcelSurfaceFilmModels(ParcelType) \ +#define makeParcelSurfaceFilmModels(ParcelType) \ \ makeSurfaceFilmModel(KinematicCloud); \ \ @@ -44,8 +45,11 @@ License ParcelType \ ); + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #endif // ************************************************************************* // + + diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelCompositionModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelCompositionModels.H index e87b835f5d..814820d682 100644 --- a/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelCompositionModels.H +++ b/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelCompositionModels.H @@ -28,42 +28,20 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "thermoPhysicsTypes.H" -#include "ReactingCloud.H" - +#include "ReactingMultiphaseCloud.H" #include "SingleMixtureFraction.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define makeReactingMultiphaseCompositionModels(ParcelType) \ +#define makeReactingMultiphaseParcelCompositionModels(ParcelType) \ \ - makeReactingMultiphaseCompositionModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - makeReactingMultiphaseCompositionModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - makeReactingMultiphaseCompositionModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingMultiphaseCompositionModelThermoType(ParcelType, ThermoType)\ + makeCompositionModel(ReactingCloud); \ \ - makeCompositionModel(ReactingCloud >); \ - \ - makeCompositionModelThermoType \ + makeCompositionModelType \ ( \ SingleMixtureFraction, \ ReactingCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelDevolatilisationModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelDevolatilisationModels.H index c1d14efcac..f44f9228a2 100644 --- a/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelDevolatilisationModels.H +++ b/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelDevolatilisationModels.H @@ -28,7 +28,6 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "thermoPhysicsTypes.H" #include "ReactingMultiphaseCloud.H" #include "ConstantRateDevolatilisation.H" @@ -37,52 +36,27 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define makeReactingMultiphaseDevolatilisationModels(ParcelType) \ +#define makeReactingMultiphaseParcelDevolatilisationModels(ParcelType) \ \ - makeReactingMultiphaseDevolatilisationModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - makeReactingMultiphaseDevolatilisationModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - makeReactingMultiphaseDevolatilisationModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingMultiphaseDevolatilisationModelThermoType(ParcelType, ThermoType)\ + makeDevolatilisationModel(ReactingMultiphaseCloud); \ \ - makeDevolatilisationModel \ - ( \ - ReactingMultiphaseCloud > \ - ); \ - \ - makeDevolatilisationModelThermoType \ + makeDevolatilisationModelType \ ( \ ConstantRateDevolatilisation, \ ReactingMultiphaseCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeDevolatilisationModelThermoType \ + makeDevolatilisationModelType \ ( \ NoDevolatilisation, \ ReactingMultiphaseCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeDevolatilisationModelThermoType \ + makeDevolatilisationModelType \ ( \ SingleKineticRateDevolatilisation, \ ReactingMultiphaseCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelInjectionModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelInjectionModels.H index ca064118da..6bdc55f3bc 100644 --- a/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelInjectionModels.H +++ b/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelInjectionModels.H @@ -41,79 +41,51 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define makeReactingMultiphaseInjectionModels(ParcelType) \ +#define makeReactingMultiphaseParcelInjectionModels(ParcelType) \ \ - makeReactingMultiphaseInjectionModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ + makeInjectionModel(KinematicCloud); \ \ - makeReactingMultiphaseInjectionModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - \ - makeReactingMultiphaseInjectionModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingMultiphaseInjectionModelThermoType(ParcelType, ThermoType)\ - \ - makeInjectionModel(KinematicCloud >); \ - \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ ConeInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ ConeInjectionMP, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ FieldActivatedInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ ManualInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ NoInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ PatchInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ ReactingMultiphaseLookupTableInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelSurfaceFilmModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelSurfaceFilmModels.H deleted file mode 100644 index 92ed38da94..0000000000 --- a/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelSurfaceFilmModels.H +++ /dev/null @@ -1,74 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2009-2010 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 3 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, see . - -\*---------------------------------------------------------------------------*/ - -#ifndef makeReactingMultiphaseParcelSurfaceFilmModels_H -#define makeReactingMultiphaseParcelSurfaceFilmModels_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "thermoPhysicsTypes.H" -#include "ReactingMultiphaseCloud.H" - -#include "NoSurfaceFilm.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#define makeReactingMultiphaseSurfaceFilmModels(ParcelType) \ - \ - makeReactingMultiphaseSurfaceFilmModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - makeReactingMultiphaseSurfaceFilmModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - makeReactingMultiphaseSurfaceFilmModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingMultiphaseSurfaceFilmModelThermoType(ParcelType, ThermoType)\ - \ - makeSurfaceFilmModel(KinematicCloud >); \ - \ - makeSurfaceFilmModelThermoType \ - ( \ - NoSurfaceFilm, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelSurfaceReactionModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelSurfaceReactionModels.H index 4aa621ffb4..b548fd2308 100644 --- a/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelSurfaceReactionModels.H +++ b/src/lagrangian/intermediate/parcels/include/makeReactingMultiphaseParcelSurfaceReactionModels.H @@ -28,45 +28,20 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "thermoPhysicsTypes.H" #include "ReactingMultiphaseCloud.H" - #include "NoSurfaceReaction.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define makeReactingMultiphaseSurfaceReactionModels(ParcelType) \ +#define makeReactingMultiphaseParcelSurfaceReactionModels(ParcelType) \ \ - makeReactingMultiphaseSurfaceReactionModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - makeReactingMultiphaseSurfaceReactionModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - makeReactingMultiphaseSurfaceReactionModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingMultiphaseSurfaceReactionModelThermoType(ParcelType, ThermoType)\ + makeSurfaceReactionModel(ReactingMultiphaseCloud); \ \ - makeSurfaceReactionModel \ - ( \ - ReactingMultiphaseCloud > \ - ); \ - \ - makeSurfaceReactionModelThermoType \ + makeSurfaceReactionModelType \ ( \ NoSurfaceReaction, \ ReactingMultiphaseCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelCollisionModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelCollisionModels.H deleted file mode 100644 index 289615125f..0000000000 --- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelCollisionModels.H +++ /dev/null @@ -1,117 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2008-2010 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 3 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, see . - -\*---------------------------------------------------------------------------*/ - -#ifndef makeReactingParcelCollisionModels_H -#define makeReactingParcelCollisionModels_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "thermoPhysicsTypes.H" -#include "KinematicCloud.H" - -#include "NoCollision.H" -#include "PairCollision.H" - -#include "PairSpringSliderDashpot.H" - -#include "WallSpringSliderDashpot.H" -#include "WallLocalSpringSliderDashpot.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#define makeReactingCollisionModels(ParcelType) \ - \ - makeReactingCollisionModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - \ - makeReactingCollisionModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - \ - makeReactingCollisionModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingCollisionModelThermoType(ParcelType, ThermoType) \ - \ - makeCollisionModel(KinematicCloud >); \ - \ - makeCollisionModelThermoType \ - ( \ - NoCollision, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); \ - \ - makeCollisionModelThermoType \ - ( \ - PairCollision, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); \ - \ - makePairModel(KinematicCloud >); \ - \ - makePairModelThermoType \ - ( \ - PairSpringSliderDashpot, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); \ - \ - makeWallModel(KinematicCloud >); \ - \ - makeWallModelThermoType \ - ( \ - WallSpringSliderDashpot, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); \ - \ - makeWallModelThermoType \ - ( \ - WallLocalSpringSliderDashpot, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelCompositionModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelCompositionModels.H index 8f8fdb7061..a9e35c7446 100644 --- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelCompositionModels.H +++ b/src/lagrangian/intermediate/parcels/include/makeReactingParcelCompositionModels.H @@ -28,42 +28,20 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "thermoPhysicsTypes.H" #include "ReactingCloud.H" - #include "SinglePhaseMixture.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define makeReactingCompositionModels(ParcelType) \ +#define makeReactingParcelCompositionModels(ParcelType) \ \ - makeReactingCompositionModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - makeReactingCompositionModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - makeReactingCompositionModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingCompositionModelThermoType(ParcelType, ThermoType) \ + makeCompositionModel(ReactingCloud); \ \ - makeCompositionModel(ReactingCloud >); \ - \ - makeCompositionModelThermoType \ + makeCompositionModelType \ ( \ SinglePhaseMixture, \ ReactingCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelDispersionModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelDispersionModels.H deleted file mode 100644 index a010713aaf..0000000000 --- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelDispersionModels.H +++ /dev/null @@ -1,98 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2008-2010 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 3 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, see . - -\*---------------------------------------------------------------------------*/ - -#ifndef makeReactingParcelDispersionModels_H -#define makeReactingParcelDispersionModels_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "thermoPhysicsTypes.H" -#include "KinematicCloud.H" - -#include "NoDispersion.H" -#include "GradientDispersionRAS.H" -#include "StochasticDispersionRAS.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#define makeReactingDispersionModels(ParcelType) \ - \ - makeReactingDispersionModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - \ - makeReactingDispersionModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - \ - makeReactingDispersionModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingDispersionModelThermoType(ParcelType, ThermoType) \ - \ - makeDispersionModel(KinematicCloud >); \ - \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - DispersionRASModel > >, \ - 0 \ - ); \ - \ - makeDispersionModelThermoType \ - ( \ - NoDispersion, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); \ - makeDispersionModelThermoType \ - ( \ - GradientDispersionRAS, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); \ - makeDispersionModelThermoType \ - ( \ - StochasticDispersionRAS, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelDragModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelDragModels.H deleted file mode 100644 index 05ad04fa29..0000000000 --- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelDragModels.H +++ /dev/null @@ -1,82 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2008-2010 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 3 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, see . - -\*---------------------------------------------------------------------------*/ - -#ifndef makeReactingParcelDragModels_H -#define makeReactingParcelDragModels_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "thermoPhysicsTypes.H" -#include "KinematicCloud.H" - -#include "NoDrag.H" -#include "SphereDrag.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#define makeReactingDragModels(ParcelType) \ - \ - makeReactingDragModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - makeReactingDragModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - makeReactingDragModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingDragModelThermoType(ParcelType, ThermoType) \ - \ - makeDragModel(KinematicCloud >); \ - \ - makeDragModelThermoType \ - ( \ - NoDrag, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); \ - makeDragModelThermoType \ - ( \ - SphereDrag, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelHeatTransferModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelHeatTransferModels.H deleted file mode 100644 index 864177001c..0000000000 --- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelHeatTransferModels.H +++ /dev/null @@ -1,82 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2008-2010 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 3 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, see . - -\*---------------------------------------------------------------------------*/ - -#ifndef makeReactingParcelHeatTransferModels_H -#define makeReactingParcelHeatTransferModels_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "thermoPhysicsTypes.H" -#include "ThermoCloud.H" - -#include "NoHeatTransfer.H" -#include "RanzMarshall.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#define makeReactingHeatTransferModels(ParcelType) \ - \ - makeReactingHeatTransferModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - makeReactingHeatTransferModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - makeReactingHeatTransferModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingHeatTransferModelThermoType(ParcelType, ThermoType) \ - \ - makeHeatTransferModel(ThermoCloud >); \ - \ - makeHeatTransferModelThermoType \ - ( \ - NoHeatTransfer, \ - ThermoCloud, \ - ParcelType, \ - ThermoType \ - ); \ - makeHeatTransferModelThermoType \ - ( \ - RanzMarshall, \ - ThermoCloud, \ - ParcelType, \ - ThermoType \ - ); - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelInjectionModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelInjectionModels.H index cae3ea5bbc..c68403914c 100644 --- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelInjectionModels.H +++ b/src/lagrangian/intermediate/parcels/include/makeReactingParcelInjectionModels.H @@ -28,7 +28,6 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "thermoPhysicsTypes.H" #include "KinematicCloud.H" #include "ConeInjection.H" @@ -41,79 +40,51 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define makeReactingInjectionModels(ParcelType) \ +#define makeReactingParcelInjectionModels(ParcelType) \ \ - makeReactingInjectionModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ + makeInjectionModel(KinematicCloud); \ \ - makeReactingInjectionModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - \ - makeReactingInjectionModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingInjectionModelThermoType(ParcelType, ThermoType) \ - \ - makeInjectionModel(KinematicCloud >); \ - \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ ConeInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ ConeInjectionMP, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ FieldActivatedInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ ManualInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ NoInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ PatchInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeInjectionModelThermoType \ + makeInjectionModelType \ ( \ ReactingLookupTableInjection, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelPatchInteractionModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelPatchInteractionModels.H deleted file mode 100644 index b41f1ce7a4..0000000000 --- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelPatchInteractionModels.H +++ /dev/null @@ -1,92 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2008-2010 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 3 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, see . - -\*---------------------------------------------------------------------------*/ - -#ifndef makeReactingParcelPatchInteractionModels_H -#define makeReactingParcelPatchInteractionModels_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "thermoPhysicsTypes.H" -#include "KinematicCloud.H" - -#include "LocalInteraction.H" -#include "Rebound.H" -#include "StandardWallInteraction.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#define makeReactingPatchInteractionModels(ParcelType) \ - \ - makeReactingPatchInteractionModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - \ - makeReactingPatchInteractionModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - \ - makeReactingPatchInteractionModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingPatchInteractionModelThermoType(ParcelType, ThermoType) \ - \ - makePatchInteractionModel(KinematicCloud >); \ - \ - makePatchInteractionModelThermoType \ - ( \ - LocalInteraction, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); \ - makePatchInteractionModelThermoType \ - ( \ - Rebound, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); \ - makePatchInteractionModelThermoType \ - ( \ - StandardWallInteraction, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelPhaseChangeModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelPhaseChangeModels.H index 0505383759..e08e703fdb 100644 --- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelPhaseChangeModels.H +++ b/src/lagrangian/intermediate/parcels/include/makeReactingParcelPhaseChangeModels.H @@ -28,7 +28,6 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "thermoPhysicsTypes.H" #include "ReactingCloud.H" #include "NoPhaseChange.H" @@ -36,44 +35,21 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define makeReactingPhaseChangeModels(ParcelType) \ +#define makeReactingParcelPhaseChangeModels(ParcelType) \ \ - makeReactingPhaseChangeModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ + makePhaseChangeModel(ReactingCloud); \ \ - makeReactingPhaseChangeModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - \ - makeReactingPhaseChangeModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingPhaseChangeModelThermoType(ParcelType, ThermoType) \ - \ - makePhaseChangeModel(ReactingCloud >); \ - \ - makePhaseChangeModelThermoType \ + makePhaseChangeModelType \ ( \ NoPhaseChange, \ ReactingCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makePhaseChangeModelThermoType \ + makePhaseChangeModelType \ ( \ LiquidEvaporation, \ ReactingCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); @@ -82,3 +58,4 @@ License #endif // ************************************************************************* // + diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelPostProcessingModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelPostProcessingModels.H deleted file mode 100644 index b6a900ddab..0000000000 --- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelPostProcessingModels.H +++ /dev/null @@ -1,84 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2008-2010 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 3 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, see . - -\*---------------------------------------------------------------------------*/ - -#ifndef makeReactingParcelPostProcessingModels_H -#define makeReactingParcelPostProcessingModels_H - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "thermoPhysicsTypes.H" -#include "KinematicCloud.H" - -#include "NoPostProcessing.H" -#include "PatchPostProcessing.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#define makeReactingPostProcessingModels(ParcelType) \ - \ - makeReactingPostProcessingModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ - \ - makeReactingPostProcessingModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - \ - makeReactingPostProcessingModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingPostProcessingModelThermoType(ParcelType, ThermoType) \ - \ - makePostProcessingModel(KinematicCloud >); \ - \ - makePostProcessingModelThermoType \ - ( \ - NoPostProcessing, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); \ - makePostProcessingModelThermoType \ - ( \ - PatchPostProcessing, \ - KinematicCloud, \ - ParcelType, \ - ThermoType \ - ); - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/include/makeReactingParcelSurfaceFilmModels.H b/src/lagrangian/intermediate/parcels/include/makeReactingParcelSurfaceFilmModels.H index b2b1bf2d89..a7ae4e064e 100644 --- a/src/lagrangian/intermediate/parcels/include/makeReactingParcelSurfaceFilmModels.H +++ b/src/lagrangian/intermediate/parcels/include/makeReactingParcelSurfaceFilmModels.H @@ -28,7 +28,6 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "thermoPhysicsTypes.H" #include "KinematicCloud.H" #include "NoSurfaceFilm.H" @@ -36,44 +35,21 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#define makeReactingSurfaceFilmModels(ParcelType) \ +#define makeReactingParcelSurfaceFilmModels(ParcelType) \ \ - makeReactingSurfaceFilmModelThermoType \ - ( \ - ParcelType, \ - constGasThermoPhysics \ - ); \ + makeSurfaceFilmModel(KinematicCloud); \ \ - makeReactingSurfaceFilmModelThermoType \ - ( \ - ParcelType, \ - gasThermoPhysics \ - ); \ - \ - makeReactingSurfaceFilmModelThermoType \ - ( \ - ParcelType, \ - icoPoly8ThermoPhysics \ - ); - - -#define makeReactingSurfaceFilmModelThermoType(ParcelType, ThermoType) \ - \ - makeSurfaceFilmModel(KinematicCloud >); \ - \ - makeSurfaceFilmModelThermoType \ + makeSurfaceFilmModelType \ ( \ NoSurfaceFilm, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); \ - makeSurfaceFilmModelThermoType \ + makeSurfaceFilmModelType \ ( \ ThermoSurfaceFilm, \ KinematicCloud, \ - ParcelType, \ - ThermoType \ + ParcelType \ ); diff --git a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/CollisionModel/CollisionModel.H b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/CollisionModel/CollisionModel.H index fc6f9a4886..4ff1cc0000 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/CollisionModel/CollisionModel.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/CollisionModel/CollisionModel.H @@ -172,21 +172,6 @@ public: add##SS##CloudType##ParcelType##ConstructorToTable_; -#define makeCollisionModelThermoType(SS, CloudType, ParcelType, ThermoType) \ - \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ - \ - CollisionModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; - - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #include "CollisionModelI.H" diff --git a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionModel/DispersionModel.H b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionModel/DispersionModel.H index 68ebe671c1..b1634db21e 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionModel/DispersionModel.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionModel/DispersionModel.H @@ -162,20 +162,6 @@ public: add##SS##CloudType##ParcelType##ConstructorToTable_; -#define makeDispersionModelThermoType(SS, CloudType, ParcelType, ThermoType) \ - \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ - \ - DispersionModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #ifdef NoRepository diff --git a/src/lagrangian/intermediate/submodels/Kinematic/DragModel/DragModel/DragModel.H b/src/lagrangian/intermediate/submodels/Kinematic/DragModel/DragModel/DragModel.H index 67d0e36f94..e60126e1d0 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/DragModel/DragModel/DragModel.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/DragModel/DragModel/DragModel.H @@ -147,20 +147,6 @@ public: add##SS##CloudType##ParcelType##ConstructorToTable_; -#define makeDragModelThermoType(SS, CloudType, ParcelType, ThermoType) \ - \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ - \ - DragModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #ifdef NoRepository diff --git a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H index ad3d4b1dae..b40abbde90 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H @@ -357,21 +357,6 @@ public: add##SS##CloudType##ParcelType##ConstructorToTable_; -#define makeInjectionModelThermoType(SS, CloudType, ParcelType, ThermoType) \ - \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ - \ - InjectionModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; - - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #include "InjectionModelI.H" diff --git a/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/PatchInteractionModel/PatchInteractionModel.H b/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/PatchInteractionModel/PatchInteractionModel.H index 95a4b04f99..1bd1684773 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/PatchInteractionModel/PatchInteractionModel.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/PatchInteractionModel/PatchInteractionModel/PatchInteractionModel.H @@ -187,20 +187,6 @@ public: add##SS##CloudType##ParcelType##ConstructorToTable_; -#define makePatchInteractionModelThermoType(SS, CloudType, ParcelType, ThermoType)\ - \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ - \ - PatchInteractionModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #ifdef NoRepository diff --git a/src/lagrangian/intermediate/submodels/Kinematic/PostProcessingModel/PostProcessingModel/PostProcessingModel.H b/src/lagrangian/intermediate/submodels/Kinematic/PostProcessingModel/PostProcessingModel/PostProcessingModel.H index 8942dec879..0d503bbdc5 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/PostProcessingModel/PostProcessingModel/PostProcessingModel.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/PostProcessingModel/PostProcessingModel/PostProcessingModel.H @@ -177,20 +177,6 @@ public: add##SS##CloudType##ParcelType##ConstructorToTable_; -#define makePostProcessingModelThermoType(SS, CloudType, ParcelType, ThermoType)\ - \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ - \ - PostProcessingModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #include "PostProcessingModelI.H" diff --git a/src/lagrangian/intermediate/submodels/Kinematic/SurfaceFilmModel/SurfaceFilmModel/SurfaceFilmModel.H b/src/lagrangian/intermediate/submodels/Kinematic/SurfaceFilmModel/SurfaceFilmModel/SurfaceFilmModel.H index 2ba518788f..986bd943d8 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/SurfaceFilmModel/SurfaceFilmModel/SurfaceFilmModel.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/SurfaceFilmModel/SurfaceFilmModel/SurfaceFilmModel.H @@ -263,21 +263,6 @@ public: add##SS##CloudType##ParcelType##ConstructorToTable_; -#define makeSurfaceFilmModelThermoType(SS, CloudType, ParcelType, ThermoType) \ - \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ - \ - SurfaceFilmModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; - - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #include "SurfaceFilmModelI.H" diff --git a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C index e1a3a54f4e..7ce1c6d3c0 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C +++ b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C @@ -38,33 +38,13 @@ Foam::CompositionModel::CompositionModel dict_(dict), owner_(owner), coeffDict_(dict.subDict(type + "Coeffs")), - mcCarrierThermo_(owner.mcCarrierThermo()), - liquids_ - ( - liquidMixture::New - ( - owner.mesh().objectRegistry::lookupObject - ( - owner.carrierThermo().name() - ) - ) - ), - solids_ - ( - solidMixture::New - ( - owner.mesh().objectRegistry::lookupObject - ( - owner.carrierThermo().name() - ) - ) - ), + thermo_(owner.thermo()), phaseProps_ ( coeffDict_.lookup("phases"), - mcCarrierThermo_.species(), - liquids_().components(), - solids_().components() + thermo_.carrier().species(), + thermo_.liquids().components(), + thermo_.solids().components() ) {} @@ -100,24 +80,31 @@ const Foam::dictionary& Foam::CompositionModel::coeffDict() const template -const Foam::multiComponentMixture& -Foam::CompositionModel::mcCarrierThermo() const +const Foam::SLGThermo& Foam::CompositionModel::thermo() const { - return mcCarrierThermo_; + return thermo_; +} + + +template +const Foam::basicMultiComponentMixture& +Foam::CompositionModel::carrier() const +{ + return thermo_.carrier(); } template const Foam::liquidMixture& Foam::CompositionModel::liquids() const { - return liquids_(); + return thermo_.liquids(); } template const Foam::solidMixture& Foam::CompositionModel::solids() const { - return solids_(); + return thermo_.solids(); } @@ -137,8 +124,7 @@ Foam::label Foam::CompositionModel::nPhase() const template -const Foam::wordList& -Foam::CompositionModel::phaseTypes() const +const Foam::wordList& Foam::CompositionModel::phaseTypes() const { // if only 1 phase, return the constituent component names if (phaseProps_.size() == 1) @@ -153,8 +139,7 @@ Foam::CompositionModel::phaseTypes() const template -const Foam::wordList& -Foam::CompositionModel::stateLabels() const +const Foam::wordList& Foam::CompositionModel::stateLabels() const { return phaseProps_.stateLabels(); } @@ -174,24 +159,22 @@ Foam::label Foam::CompositionModel::globalCarrierId const word& cmptName ) const { - forAll(mcCarrierThermo_.species(), i) + label id = thermo_.carrierId(cmptName); + + if (id < 0) { - if (cmptName == mcCarrierThermo_.species()[i]) - { - return i; - } + FatalErrorIn + ( + "Foam::label Foam::CompositionModel::globalCarrierId" + "(" + "const word&" + ") const" + ) << "Unable to determine global id for requested component " + << cmptName << ". Available components are " << nl + << thermo_.carrier().species() << abort(FatalError); } - FatalErrorIn - ( - "Foam::label Foam::CompositionModel::globalCarrierId" - "(" - "const word&" - ") const" - ) << "Unable to determine global id for requested component " - << cmptName << nl << abort(FatalError); - - return -1; + return id; } @@ -214,7 +197,7 @@ Foam::label Foam::CompositionModel::globalId "const word&" ") const" ) << "Unable to determine global id for requested component " - << cmptName << nl << abort(FatalError); + << cmptName << abort(FatalError); } return id; @@ -250,7 +233,7 @@ Foam::label Foam::CompositionModel::localId "const word&" ") const" ) << "Unable to determine local id for component " << cmptName - << nl << abort(FatalError); + << abort(FatalError); } return id; @@ -278,7 +261,7 @@ Foam::label Foam::CompositionModel::localToGlobalCarrierId ") const" ) << "Unable to determine global carrier id for phase " << phaseI << " with local id " << id - << nl << abort(FatalError); + << abort(FatalError); } return gid; @@ -312,8 +295,8 @@ Foam::scalarField Foam::CompositionModel::X forAll(Y, i) { label gid = props.globalIds()[i]; - WInv += Y[i]/mcCarrierThermo_.speciesData()[gid].W(); - X[i] = Y[i]/mcCarrierThermo_.speciesData()[gid].W(); + WInv += Y[i]/thermo_.carrier().W(gid); + X[i] = Y[i]/thermo_.carrier().W(gid); } break; } @@ -322,8 +305,8 @@ Foam::scalarField Foam::CompositionModel::X forAll(Y, i) { label gid = props.globalIds()[i]; - WInv += Y[i]/this->liquids().properties()[gid].W(); - X[i] += Y[i]/this->liquids().properties()[gid].W(); + WInv += Y[i]/thermo_.liquids().properties()[gid].W(); + X[i] += Y[i]/thermo_.liquids().properties()[gid].W(); } break; } @@ -337,7 +320,7 @@ Foam::scalarField Foam::CompositionModel::X "const scalarField&" ") const" ) << "Only possible to convert gas and liquid mass fractions" - << nl << abort(FatalError); + << abort(FatalError); } } @@ -363,7 +346,7 @@ Foam::scalar Foam::CompositionModel::H forAll(Y, i) { label gid = props.globalIds()[i]; - HMixture += Y[i]*mcCarrierThermo_.speciesData()[gid].H(T); + HMixture += Y[i]*thermo_.carrier().H(gid, T); } break; } @@ -372,7 +355,7 @@ Foam::scalar Foam::CompositionModel::H forAll(Y, i) { label gid = props.globalIds()[i]; - HMixture += Y[i]*this->liquids().properties()[gid].h(p, T); + HMixture += Y[i]*thermo_.liquids().properties()[gid].h(p, T); } break; } @@ -384,8 +367,8 @@ Foam::scalar Foam::CompositionModel::H HMixture += Y[i] *( - this->solids().properties()[gid].Hf() - + this->solids().properties()[gid].cp()*T + thermo_.solids().properties()[gid].Hf() + + thermo_.solids().properties()[gid].cp()*T ); } break; @@ -401,7 +384,7 @@ Foam::scalar Foam::CompositionModel::H " const scalar, " " const scalar" ") const" - ) << "Unknown phase enumeration" << nl << abort(FatalError); + ) << "Unknown phase enumeration" << abort(FatalError); } } @@ -427,7 +410,7 @@ Foam::scalar Foam::CompositionModel::Hs forAll(Y, i) { label gid = props.globalIds()[i]; - HsMixture += Y[i]*mcCarrierThermo_.speciesData()[gid].Hs(T); + HsMixture += Y[i]*thermo_.carrier().Hs(gid, T); } break; } @@ -439,8 +422,8 @@ Foam::scalar Foam::CompositionModel::Hs HsMixture += Y[i] *( - this->liquids().properties()[gid].h(p, T) - - this->liquids().properties()[gid].h(p, 298.25) + thermo_.liquids().properties()[gid].h(p, T) + - thermo_.liquids().properties()[gid].h(p, 298.15) ); } break; @@ -450,7 +433,7 @@ Foam::scalar Foam::CompositionModel::Hs forAll(Y, i) { label gid = props.globalIds()[i]; - HsMixture += Y[i]*this->solids().properties()[gid].cp()*T; + HsMixture += Y[i]*thermo_.solids().properties()[gid].cp()*T; } break; } @@ -465,7 +448,7 @@ Foam::scalar Foam::CompositionModel::Hs " const scalar, " " const scalar" ") const" - ) << "Unknown phase enumeration" << nl << abort(FatalError); + ) << "Unknown phase enumeration" << abort(FatalError); } } @@ -491,7 +474,7 @@ Foam::scalar Foam::CompositionModel::Hc forAll(Y, i) { label gid = props.globalIds()[i]; - HcMixture += Y[i]*mcCarrierThermo_.speciesData()[gid].Hc(); + HcMixture += Y[i]*thermo_.carrier().Hc(gid); } break; } @@ -501,7 +484,7 @@ Foam::scalar Foam::CompositionModel::Hc { label gid = props.globalIds()[i]; HcMixture += - Y[i]*this->liquids().properties()[gid].h(p, 298.15); + Y[i]*thermo_.liquids().properties()[gid].h(p, 298.15); } break; } @@ -510,7 +493,7 @@ Foam::scalar Foam::CompositionModel::Hc forAll(Y, i) { label gid = props.globalIds()[i]; - HcMixture += Y[i]*this->solids().properties()[gid].Hf(); + HcMixture += Y[i]*thermo_.solids().properties()[gid].Hf(); } break; } @@ -525,7 +508,7 @@ Foam::scalar Foam::CompositionModel::Hc " const scalar, " " const scalar" ") const" - ) << "Unknown phase enumeration" << nl << abort(FatalError); + ) << "Unknown phase enumeration" << abort(FatalError); } } @@ -551,7 +534,7 @@ Foam::scalar Foam::CompositionModel::cp forAll(Y, i) { label gid = props.globalIds()[i]; - cpMixture += Y[i]*mcCarrierThermo_.speciesData()[gid].Cp(T); + cpMixture += Y[i]*thermo_.carrier().Cp(gid, T); } break; } @@ -560,7 +543,7 @@ Foam::scalar Foam::CompositionModel::cp forAll(Y, i) { label gid = props.globalIds()[i]; - cpMixture += Y[i]*this->liquids().properties()[gid].cp(p, T); + cpMixture += Y[i]*thermo_.liquids().properties()[gid].cp(p, T); } break; } @@ -569,7 +552,7 @@ Foam::scalar Foam::CompositionModel::cp forAll(Y, i) { label gid = props.globalIds()[i]; - cpMixture += Y[i]*this->solids().properties()[gid].cp(); + cpMixture += Y[i]*thermo_.solids().properties()[gid].cp(); } break; } @@ -584,7 +567,7 @@ Foam::scalar Foam::CompositionModel::cp "const scalar, " "const scalar" ") const" - ) << "Unknown phase enumeration" << nl << abort(FatalError); + ) << "Unknown phase enumeration" << abort(FatalError); } } @@ -627,7 +610,7 @@ Foam::scalar Foam::CompositionModel::L forAll(Y, i) { label gid = props.globalIds()[i]; - LMixture += Y[i]*this->liquids().properties()[gid].hl(p, T); + LMixture += Y[i]*thermo_.liquids().properties()[gid].hl(p, T); } break; } @@ -659,7 +642,7 @@ Foam::scalar Foam::CompositionModel::L "const scalar, " "const scalar" ") const" - ) << "Unknown phase enumeration" << nl << abort(FatalError); + ) << "Unknown phase enumeration" << abort(FatalError); } } diff --git a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H index 3c05f8e261..bff960c2ed 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H +++ b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H @@ -43,10 +43,7 @@ SourceFiles #include "runTimeSelectionTables.H" #include "PtrList.H" -#include "multiComponentMixture.H" - -#include "liquidMixture.H" -#include "solidMixture.H" +#include "SLGThermo.H" #include "phasePropertiesList.H" @@ -73,14 +70,8 @@ class CompositionModel //- The coefficients dictionary const dictionary& coeffDict_; - //- Reference to the multi-component carrier phase thermo - multiComponentMixture& mcCarrierThermo_; - - //- Global (additional) liquid properties data - autoPtr liquids_; - - //- Global (additional) solid properties data - autoPtr solids_; + //- Reference to the thermo database + const SLGThermo& thermo_; //- List of phase properties phasePropertiesList phaseProps_; @@ -141,13 +132,15 @@ public: //- Return the coefficients dictionary const dictionary& coeffDict() const; - //- Return the carrier phase thermo package - const multiComponentMixture& - mcCarrierThermo() const; + //- Return the thermo database + const SLGThermo& thermo() const; // Composition lists + //- Return the carrier components (wrapper function) + const basicMultiComponentMixture& carrier() const; + //- Return the global (additional) liquids const liquidMixture& liquids() const; @@ -197,11 +190,7 @@ public: //- Return the list of phase phaseI volume fractions fractions // based on supplied mass fractions Y - scalarField X - ( - const label phaseI, - const scalarField& Y - ) const; + scalarField X(const label phaseI, const scalarField& Y) const; // Mixture properties @@ -293,18 +282,13 @@ public: ); -#define makeCompositionModelThermoType(SS, CloudType, ParcelType, ThermoType) \ +#define makeCompositionModelType(SS, CloudType, ParcelType) \ \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ + defineNamedTemplateTypeNameAndDebug(SS >, 0); \ \ - CompositionModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; + CompositionModel >:: \ + adddictionaryConstructorToTable > > \ + add##SS##CloudType##ParcelType##ConstructorToTable_; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.C b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.C index 16f577f7a7..76abdaf2ff 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.C +++ b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.C @@ -64,19 +64,19 @@ void Foam::SingleMixtureFraction::constructIds() { FatalErrorIn("Foam::SingleMixtureFraction::constructIds()") << "No gas phase found in phase list:" << nl - << this->phaseTypes() << nl << endl; + << this->phaseTypes() << exit(FatalError); } if (idLiquid_ < 0) { FatalErrorIn("Foam::SingleMixtureFraction::constructIds()") << "No liquid phase found in phase list:" << nl - << this->phaseTypes() << nl << endl; + << this->phaseTypes() << exit(FatalError); } if (idSolid_ < 0) { FatalErrorIn("Foam::SingleMixtureFraction::constructIds()") << "No solid phase found in phase list:" << nl - << this->phaseTypes() << nl << endl; + << this->phaseTypes() << exit(FatalError); } } @@ -111,7 +111,7 @@ Foam::SingleMixtureFraction::SingleMixtureFraction "CloudType&" ")" ) << "Incorrect numebr of phases: " << nl - << " Please specify 1 gas, 1 liquid and 1 solid" << nl + << " Please specify 1 gas, 1 liquid and 1 solid" << exit(FatalError); } @@ -130,7 +130,7 @@ Foam::SingleMixtureFraction::SingleMixtureFraction "CloudType&" ")" ) << "Sum of phases should be 1. Phase fractions:" << nl - << YMixture0_ << nl << exit(FatalError); + << YMixture0_ << exit(FatalError); } } diff --git a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SinglePhaseMixture/SinglePhaseMixture.C b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SinglePhaseMixture/SinglePhaseMixture.C index 4c0f3f332e..f1fd80384d 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SinglePhaseMixture/SinglePhaseMixture.C +++ b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SinglePhaseMixture/SinglePhaseMixture.C @@ -35,14 +35,14 @@ void Foam::SinglePhaseMixture::constructIds() FatalErrorIn ( "void Foam::SinglePhaseMixture::constructIds()" - ) << "Phase list is empty" << nl << exit(FatalError); + ) << "Phase list is empty" << exit(FatalError); } else if (this->phaseProps().size() > 1) { FatalErrorIn ( "void Foam::SinglePhaseMixture::constructIds()" - ) << "Only one phase permitted" << nl << exit(FatalError); + ) << "Only one phase permitted" << exit(FatalError); } switch (this->phaseProps()[0].phase()) @@ -67,7 +67,7 @@ void Foam::SinglePhaseMixture::constructIds() FatalErrorIn ( "void Foam::SinglePhaseMixture::constructIds()" - ) << "Unknown phase enumeration" << nl << abort(FatalError); + ) << "Unknown phase enumeration" << abort(FatalError); } } } diff --git a/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/LiquidEvaporation/LiquidEvaporation.C b/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/LiquidEvaporation/LiquidEvaporation.C index 45a8b67d55..fc7673f8a2 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/LiquidEvaporation/LiquidEvaporation.C +++ b/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/LiquidEvaporation/LiquidEvaporation.C @@ -37,13 +37,13 @@ Foam::scalarField Foam::LiquidEvaporation::calcXc const label cellI ) const { - scalarField Xc(this->owner().mcCarrierThermo().Y().size()); + scalarField Xc(this->owner().thermo().carrier().Y().size()); forAll(Xc, i) { Xc[i] = - this->owner().mcCarrierThermo().Y()[i][cellI] - /this->owner().mcCarrierThermo().speciesData()[i].W(); + this->owner().thermo().carrier().Y()[i][cellI] + /this->owner().thermo().carrier().W(i); } return Xc/sum(Xc); @@ -71,16 +71,7 @@ Foam::LiquidEvaporation::LiquidEvaporation ) : PhaseChangeModel(dict, owner, typeName), - liquids_ - ( - liquidMixture::New - ( - owner.mesh().objectRegistry::lookupObject - ( - owner.carrierThermo().name() - ) - ) - ), + liquids_(owner.thermo().liquids()), activeLiquids_(this->coeffDict().lookup("activeLiquids")), liqToCarrierMap_(activeLiquids_.size(), -1), liqToLiqMap_(activeLiquids_.size(), -1) @@ -158,7 +149,7 @@ void Foam::LiquidEvaporation::calculate label lid = liqToLiqMap_[i]; // vapour diffusivity [m2/s] - scalar Dab = liquids_->properties()[lid].D(pc, Ts); + scalar Dab = liquids_.properties()[lid].D(pc, Ts); // saturation pressure for species i [pa] // - carrier phase pressure assumed equal to the liquid vapour pressure @@ -166,7 +157,7 @@ void Foam::LiquidEvaporation::calculate // NOTE: if pSat > pc then particle is superheated // calculated evaporation rate will be greater than that of a particle // at boiling point, but this is not a boiling model - scalar pSat = liquids_->properties()[lid].pv(pc, T); + scalar pSat = liquids_.properties()[lid].pv(pc, T); // Schmidt number scalar Sc = nu/(Dab + ROOTVSMALL); @@ -187,7 +178,7 @@ void Foam::LiquidEvaporation::calculate scalar Ni = max(kc*(Cs - Cinf), 0.0); // mass transfer [kg] - dMassPC[lid] += Ni*A*liquids_->properties()[lid].W()*dt; + dMassPC[lid] += Ni*A*liquids_.properties()[lid].W()*dt; } } diff --git a/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/LiquidEvaporation/LiquidEvaporation.H b/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/LiquidEvaporation/LiquidEvaporation.H index a7d7cdd3d1..bef4d3e888 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/LiquidEvaporation/LiquidEvaporation.H +++ b/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/LiquidEvaporation/LiquidEvaporation.H @@ -54,7 +54,7 @@ protected: // Protected data //- Global liquid properties data - autoPtr liquids_; + const liquidMixture& liquids_; //- List of active liquid names List activeLiquids_; diff --git a/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/PhaseChangeModel/PhaseChangeModel.H b/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/PhaseChangeModel/PhaseChangeModel.H index 99e39651f7..a216409d33 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/PhaseChangeModel/PhaseChangeModel.H +++ b/src/lagrangian/intermediate/submodels/Reacting/PhaseChangeModel/PhaseChangeModel/PhaseChangeModel.H @@ -191,18 +191,13 @@ public: ); -#define makePhaseChangeModelThermoType(SS, CloudType, ParcelType, ThermoType) \ +#define makePhaseChangeModelType(SS, CloudType, ParcelType) \ \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ + defineNamedTemplateTypeNameAndDebug(SS >, 0); \ \ - PhaseChangeModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; + PhaseChangeModel >:: \ + adddictionaryConstructorToTable > > \ + add##SS##CloudType##ParcelType##ConstructorToTable_; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/lagrangian/intermediate/submodels/ReactingMultiphase/DevolatilisationModel/DevolatilisationModel/DevolatilisationModel.H b/src/lagrangian/intermediate/submodels/ReactingMultiphase/DevolatilisationModel/DevolatilisationModel/DevolatilisationModel.H index e5572dd884..21c6b79594 100644 --- a/src/lagrangian/intermediate/submodels/ReactingMultiphase/DevolatilisationModel/DevolatilisationModel/DevolatilisationModel.H +++ b/src/lagrangian/intermediate/submodels/ReactingMultiphase/DevolatilisationModel/DevolatilisationModel/DevolatilisationModel.H @@ -159,18 +159,13 @@ public: ); -#define makeDevolatilisationModelThermoType(SS, CloudType, ParcelType, ThermoType)\ +#define makeDevolatilisationModelType(SS, CloudType, ParcelType) \ \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ + defineNamedTemplateTypeNameAndDebug(SS >, 0); \ \ - DevolatilisationModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; + DevolatilisationModel >:: \ + adddictionaryConstructorToTable > > \ + add##SS##CloudType##ParcelType##ConstructorToTable_; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H b/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H index a2a0d3c1eb..8ee2fb1874 100644 --- a/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H +++ b/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H @@ -171,18 +171,13 @@ public: ); -#define makeSurfaceReactionModelThermoType(SS, CloudType, ParcelType, ThermoType)\ +#define makeSurfaceReactionModelType(SS, CloudType, ParcelType) \ \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ + defineNamedTemplateTypeNameAndDebug(SS >, 0); \ \ - SurfaceReactionModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; + SurfaceReactionModel >:: \ + adddictionaryConstructorToTable > > \ + add##SS##CloudType##ParcelType##ConstructorToTable_; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H index a71af0d37e..de10004531 100644 --- a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H +++ b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H @@ -179,20 +179,6 @@ public: add##SS##CloudType##ParcelType##ConstructorToTable_; -#define makeHeatTransferModelThermoType(SS, CloudType, ParcelType, ThermoType)\ - \ - defineNamedTemplateTypeNameAndDebug \ - ( \ - SS > >, \ - 0 \ - ); \ - \ - HeatTransferModel > >:: \ - adddictionaryConstructorToTable \ - > > > \ - add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_; - - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #ifdef NoRepository diff --git a/src/lagrangian/intermediate/submodels/Thermodynamic/SurfaceFilmModel/ThermoSurfaceFilm/ThermoSurfaceFilmI.H b/src/lagrangian/intermediate/submodels/Thermodynamic/SurfaceFilmModel/ThermoSurfaceFilm/ThermoSurfaceFilmI.H deleted file mode 100644 index aeebf2c418..0000000000 --- a/src/lagrangian/intermediate/submodels/Thermodynamic/SurfaceFilmModel/ThermoSurfaceFilm/ThermoSurfaceFilmI.H +++ /dev/null @@ -1,135 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2009-2010 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 3 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, see . - -\*---------------------------------------------------------------------------*/ - -#include "ThermoSurfaceFilm.H" -#include "DimensionedFields.H" - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -template -inline const Foam::word& -Foam::ThermoSurfaceFilm::filmRegionName() const -{ - return filmRegionName_; -} - - -template -inline const Foam::wordList& -Foam::ThermoSurfaceFilm::patchNames() const -{ - return patchNames_; -} - - -template -inline const Foam::polyMesh& -Foam::ThermoSurfaceFilm::filmRegion() const -{ - return filmRegion_; -} - - -template -inline const Foam::volScalarField& -Foam::ThermoSurfaceFilm::hf() const -{ - return hf_; -} - - -template -inline const Foam::volScalarField& -Foam::ThermoSurfaceFilm::rho() const -{ - return rho_; -} - - -template -inline const Foam::volVectorField& -Foam::ThermoSurfaceFilm::U() const -{ - return U_; -} - - -template -inline const Foam::volScalarField& -Foam::ThermoSurfaceFilm::p() const -{ - return p_; -} - - -template -inline const Foam::volScalarField& -Foam::ThermoSurfaceFilm::h() const -{ - return h_; -} - - -template -inline const Foam::volScalarField& -Foam::ThermoSurfaceFilm::mu() const -{ - return mu_; -} - - -template -inline Foam::DimensionedField& -Foam::ThermoSurfaceFilm::rhoSp() -{ - return rhoSp_; -} - - -template -inline Foam::DimensionedField& -Foam::ThermoSurfaceFilm::USp() -{ - return USp_; -} - - -template -inline Foam::DimensionedField& -Foam::ThermoSurfaceFilm::hSp() -{ - return hSp_; -} - - -template -inline Foam::DimensionedField& -Foam::ThermoSurfaceFilm::pSp() -{ - return pSp_; -} - - -// ************************************************************************* // diff --git a/src/thermophysicalModels/SLGThermo/SLGThermo/SLGThermo.C b/src/thermophysicalModels/SLGThermo/SLGThermo/SLGThermo.C index 468b870d86..53587d1eb4 100644 --- a/src/thermophysicalModels/SLGThermo/SLGThermo/SLGThermo.C +++ b/src/thermophysicalModels/SLGThermo/SLGThermo/SLGThermo.C @@ -46,10 +46,10 @@ Foam::SLGThermo::SLGThermo(const fvMesh& mesh, basicThermo& thermo) { Info<< "Creating component thermo properties:" << endl; - if (isA(thermo)) + if (isA(thermo)) { - basicMultiComponentMixtureNew& mcThermo = - dynamic_cast(thermo); + basicMultiComponentMixture& mcThermo = + dynamic_cast(thermo); carrier_ = &mcThermo; Info<< " multi-component carrier - " << mcThermo.species().size() @@ -98,13 +98,13 @@ const Foam::basicThermo& Foam::SLGThermo::thermo() const } -const Foam::basicMultiComponentMixtureNew& Foam::SLGThermo::carrier() const +const Foam::basicMultiComponentMixture& Foam::SLGThermo::carrier() const { if (carrier_ == NULL) { FatalErrorIn ( - "const Foam::basicMultiComponentMixtureNew& " + "const Foam::basicMultiComponentMixture& " "Foam::SLGThermo::carrier() const" ) << "carrier requested, but object is not allocated" << abort(FatalError); diff --git a/src/thermophysicalModels/SLGThermo/SLGThermo/SLGThermo.H b/src/thermophysicalModels/SLGThermo/SLGThermo/SLGThermo.H index 91989a0123..7a3b520171 100644 --- a/src/thermophysicalModels/SLGThermo/SLGThermo/SLGThermo.H +++ b/src/thermophysicalModels/SLGThermo/SLGThermo/SLGThermo.H @@ -48,7 +48,7 @@ SourceFiles #include "MeshObject.H" #include "basicThermo.H" -#include "basicMultiComponentMixtureNew.H" +#include "basicMultiComponentMixture.H" #include "liquidMixture.H" #include "solidMixture.H" @@ -71,7 +71,7 @@ class SLGThermo basicThermo& thermo_; //- Reference to the multi-component carrier phase thermo - basicMultiComponentMixtureNew* carrier_; + basicMultiComponentMixture* carrier_; //- Additional liquid properties data autoPtr liquids_; @@ -103,7 +103,7 @@ public: const basicThermo& thermo() const; //- Return reference to the gaseous components - const basicMultiComponentMixtureNew& carrier() const; + const basicMultiComponentMixture& carrier() const; //- Return reference to the global (additional) liquids const liquidMixture& liquids() const;