diff --git a/src/lagrangian/intermediate/Make/files b/src/lagrangian/intermediate/Make/files index 44d371fdefa154b35a84bf3bc5ac81a7776f3432..7e2bd41a8ee8002979b2f967396f8f4845f1b627 100644 --- a/src/lagrangian/intermediate/Make/files +++ b/src/lagrangian/intermediate/Make/files @@ -22,44 +22,43 @@ clouds/derived/basicReactingMultiphaseCloud/basicReactingMultiphaseCloud.C /* kinematic parcel sub-models */ KINEMATICPARCEL=$(DERIVEDPARCELS)/basicKinematicParcel $(KINEMATICPARCEL)/defineBasicKinematicParcel.C -$(KINEMATICPARCEL)/makeBasicKinematicParcelDispersionModels.C -$(KINEMATICPARCEL)/makeBasicKinematicParcelDragModels.C -$(KINEMATICPARCEL)/makeBasicKinematicParcelInjectionModels.C -$(KINEMATICPARCEL)/makeBasicKinematicParcelWallInteractionModels.C +$(KINEMATICPARCEL)/submodels/makeBasicKinematicParcelDispersionModels.C +$(KINEMATICPARCEL)/submodels/makeBasicKinematicParcelDragModels.C +$(KINEMATICPARCEL)/submodels/makeBasicKinematicParcelInjectionModels.C +$(KINEMATICPARCEL)/submodels/makeBasicKinematicParcelWallInteractionModels.C /* thermo parcel sub-models */ THERMOPARCEL=$(DERIVEDPARCELS)/basicThermoParcel $(THERMOPARCEL)/defineBasicThermoParcel.C -$(THERMOPARCEL)/makeBasicThermoParcelDispersionModels.C -$(THERMOPARCEL)/makeBasicThermoParcelDragModels.C -$(THERMOPARCEL)/makeBasicThermoParcelHeatTransferModels.C -$(THERMOPARCEL)/makeBasicThermoParcelInjectionModels.C -$(THERMOPARCEL)/makeBasicThermoParcelWallInteractionModels.C +$(THERMOPARCEL)/submodels/makeBasicThermoParcelDispersionModels.C +$(THERMOPARCEL)/submodels/makeBasicThermoParcelDragModels.C +$(THERMOPARCEL)/submodels/makeBasicThermoParcelHeatTransferModels.C +$(THERMOPARCEL)/submodels/makeBasicThermoParcelInjectionModels.C +$(THERMOPARCEL)/submodels/makeBasicThermoParcelWallInteractionModels.C /* reacting parcel sub-models */ REACTINGPARCEL=$(DERIVEDPARCELS)/basicReactingParcel $(REACTINGPARCEL)/defineBasicReactingParcel.C -$(REACTINGPARCEL)/makeBasicReactingParcelCompositionModels.C -$(REACTINGPARCEL)/makeBasicReactingParcelDispersionModels.C -$(REACTINGPARCEL)/makeBasicReactingParcelDragModels.C -$(REACTINGPARCEL)/makeBasicReactingParcelHeatTransferModels.C -$(REACTINGPARCEL)/makeBasicReactingParcelInjectionModels.C -$(REACTINGPARCEL)/makeBasicReactingParcelPhaseChangeModels.C -$(REACTINGPARCEL)/makeBasicReactingParcelSurfaceReactionModels.C -$(REACTINGPARCEL)/makeBasicReactingParcelWallInteractionModels.C +$(REACTINGPARCEL)/submodels/makeBasicReactingParcelCompositionModels.C +$(REACTINGPARCEL)/submodels/makeBasicReactingParcelDispersionModels.C +$(REACTINGPARCEL)/submodels/makeBasicReactingParcelDragModels.C +$(REACTINGPARCEL)/submodels/makeBasicReactingParcelHeatTransferModels.C +$(REACTINGPARCEL)/submodels/makeBasicReactingParcelInjectionModels.C +$(REACTINGPARCEL)/submodels/makeBasicReactingParcelPhaseChangeModels.C +$(REACTINGPARCEL)/submodels/makeBasicReactingParcelWallInteractionModels.C /* reacting multiphase parcel sub-models */ REACTINGMPPARCEL=$(DERIVEDPARCELS)/basicReactingMultiphaseParcel $(REACTINGMPPARCEL)/defineBasicReactingMultiphaseParcel.C -$(REACTINGMPPARCEL)/makeBasicReactingMultiphaseParcelCompositionModels.C -$(REACTINGMPPARCEL)/makeBasicReactingMultiphaseParcelDevolatilisationModels.C -$(REACTINGMPPARCEL)/makeBasicReactingMultiphaseParcelDispersionModels.C -$(REACTINGMPPARCEL)/makeBasicReactingMultiphaseParcelDragModels.C -$(REACTINGMPPARCEL)/makeBasicReactingMultiphaseParcelHeatTransferModels.C -$(REACTINGMPPARCEL)/makeBasicReactingMultiphaseParcelInjectionModels.C -$(REACTINGMPPARCEL)/makeBasicReactingMultiphaseParcelPhaseChangeModels.C -$(REACTINGMPPARCEL)/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C -$(REACTINGMPPARCEL)/makeBasicReactingMultiphaseParcelWallInteractionModels.C +$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelCompositionModels.C +$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelDevolatilisationModels.C +$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelDispersionModels.C +$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelDragModels.C +$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelHeatTransferModels.C +$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelInjectionModels.C +$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelPhaseChangeModels.C +$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C +$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelWallInteractionModels.C /* bolt-on models */ submodels/addOns/radiation/absorptionEmission/cloudAbsorptionEmission/cloudAbsorptionEmission.C diff --git a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C index 3b92b98f0aa951087e4586eff6d084ae038e4590..6584495b637853554f99e2ea7d0d3a3d693778bb 100644 --- a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C @@ -253,8 +253,7 @@ void Foam::KinematicCloud<ParcelType>::info() const << " Current number of parcels = " << returnReduce(this->size(), sumOp<label>()) << nl << " Current mass in system = " - << returnReduce(massInSystem(), sumOp<scalar>()) << nl - << endl; + << returnReduce(massInSystem(), sumOp<scalar>()) << nl; } diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C index 640ce508d510a7e513b7784681bceb2da6195daf..15a088c000ba0613e58e5c03e32bb9b84cedb073 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.C @@ -28,7 +28,6 @@ License #include "CompositionModel.H" #include "PhaseChangeModel.H" -#include "SurfaceReactionModel.H" // * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * * // @@ -97,15 +96,8 @@ Foam::ReactingCloud<ParcelType>::ReactingCloud *this ) ), - surfaceReactionModel_ - ( - SurfaceReactionModel<ReactingCloud<ParcelType> >::New - ( - this->particleProperties(), - *this - ) - ), - rhoTrans_(thermo.composition().Y().size()) + rhoTrans_(thermo.composition().Y().size()), + dMassPhaseChange_(0.0) { // Set storage for mass source fields and initialise to zero forAll(rhoTrans_, i) @@ -224,4 +216,21 @@ void Foam::ReactingCloud<ParcelType>::evolve() } +template<class ParcelType> +void Foam::ReactingCloud<ParcelType>::info() const +{ + ThermoCloud<ParcelType>::info(); + + Info<< " Mass transfer phase change = " + << returnReduce(dMassPhaseChange_, sumOp<scalar>()) << nl; +} + + +template<class ParcelType> +void Foam::ReactingCloud<ParcelType>::addToMassPhaseChange(const scalar dMass) +{ + dMassPhaseChange_ += dMass; +} + + // ************************************************************************* // diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H index ee541dd6d9026ce563b5e17e7c5ccb6df13acf02..3af70b1904ee2bd8e733815b4d1948d9fb0b2bb5 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloud.H @@ -30,7 +30,6 @@ Description - Adds to thermodynamic cloud - Variable composition (single phase) - Phase change - - Surface reactions SourceFiles ReactingCloudI.H @@ -62,9 +61,6 @@ class CompositionModel; template<class CloudType> class PhaseChangeModel; -template<class CloudType> -class SurfaceReactionModel; - /*---------------------------------------------------------------------------*\ Class ReactingCloud Declaration \*---------------------------------------------------------------------------*/ @@ -97,13 +93,6 @@ class ReactingCloud autoPtr<PhaseChangeModel<ReactingCloud<ParcelType> > > phaseChangeModel_; - //- Reacting surface reaction model - autoPtr - < - SurfaceReactionModel<ReactingCloud<ParcelType> > - > - surfaceReactionModel_; - // Sources @@ -111,6 +100,12 @@ class ReactingCloud PtrList<DimensionedField<scalar, volMesh> > rhoTrans_; + // Check + + //- Total mass transferred to continuous phase via phase change + scalar dMassPhaseChange_; + + // Private Member Functions //- Disallow default bitwise copy construct @@ -168,10 +163,6 @@ public: inline const PhaseChangeModel<ReactingCloud<ParcelType> >& phaseChange() const; - //- Return reference to reacting surface reaction model - inline const SurfaceReactionModel<ReactingCloud<ParcelType> >& - surfaceReaction() const; - // Sources @@ -196,6 +187,15 @@ public: Srho1() const; + // Check + + //- Print cloud information + void info() const; + + //- Add to cumulative phase change mass transfer + void addToMassPhaseChange(const scalar dMass); + + // Cloud evolution functions //- Add new parcel diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H index 146db083cc0194a996636eb3704165ab818db803..4bf20a37a9c2cb70e64a6f197e11ece9277aacdd 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingCloud/ReactingCloudI.H @@ -66,14 +66,6 @@ Foam::ReactingCloud<ParcelType>::phaseChange() const } -template<class ParcelType> -inline const Foam::SurfaceReactionModel<Foam::ReactingCloud<ParcelType> >& -Foam::ReactingCloud<ParcelType>::surfaceReaction() const -{ - return surfaceReactionModel_; -} - - template<class ParcelType> inline Foam::DimensionedField<Foam::scalar, Foam::volMesh>& Foam::ReactingCloud<ParcelType>::rhoTrans(const label i) diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C index 79a0581acdef22ac302df6001644606739465b2f..708a3f72239ac43fc279246e82053839298ba241 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.C @@ -26,7 +26,6 @@ License #include "ReactingMultiphaseCloud.H" -#include "CompositionModel.H" #include "DevolatilisationModel.H" #include "SurfaceReactionModel.H" @@ -93,7 +92,16 @@ Foam::ReactingMultiphaseCloud<ParcelType>::ReactingMultiphaseCloud this->particleProperties(), *this ) - ) + ), + surfaceReactionModel_ + ( + SurfaceReactionModel<ReactingMultiphaseCloud<ParcelType> >::New + ( + this->particleProperties(), + *this + ) + ), + dMassDevolatilisation_(0.0) {} @@ -185,4 +193,35 @@ void Foam::ReactingMultiphaseCloud<ParcelType>::evolve() } +template<class ParcelType> +void Foam::ReactingMultiphaseCloud<ParcelType>::info() const +{ + ReactingCloud<ParcelType>::info(); + Info<< " Mass transfer devolatilisation = " + << returnReduce(dMassDevolatilisation_, sumOp<scalar>()) << nl; + Info<< " Mass transfer surface reaction = " + << returnReduce(dMassSurfaceReaction_, sumOp<scalar>()) << nl; +} + + +template<class ParcelType> +void Foam::ReactingMultiphaseCloud<ParcelType>::addToMassDevolatilisation +( + const scalar dMass +) +{ + dMassDevolatilisation_ += dMass; +} + + +template<class ParcelType> +void Foam::ReactingMultiphaseCloud<ParcelType>::addToMassSurfaceReaction +( + const scalar dMass +) +{ + dMassSurfaceReaction_ += dMass; +} + + // ************************************************************************* // diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H index 16e1140876c5f403b1faa355b67cf6b64d09b60d..b78a5c024262fa59c97ed3fa5e86544a634dc13e 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloud.H @@ -28,8 +28,9 @@ Class Description Templated base class for multiphase reacting cloud - Adds to reacting cloud - - Devolatilisatsion - multiphase composition + - devolatilisatsion + - surface reactions SourceFiles ReactingMultiphaseCloudI.H @@ -53,6 +54,9 @@ namespace Foam template<class CloudType> class DevolatilisationModel; +template<class CloudType> +class SurfaceReactionModel; + /*---------------------------------------------------------------------------*\ Class ReactingMultiphaseCloud Declaration \*---------------------------------------------------------------------------*/ @@ -78,6 +82,23 @@ class ReactingMultiphaseCloud > devolatilisationModel_; + //- Surface reaction model + autoPtr + < + SurfaceReactionModel<ReactingMultiphaseCloud<ParcelType> > + > + surfaceReactionModel_; + + + // Check + + //- Total mass transferred to continuous phase via devolatilisation + scalar dMassDevolatilisation_; + + //- Total mass transferred to continuous phase via surface + // reactions + scalar dMassSurfaceReaction_; + // Private Member Functions @@ -125,6 +146,25 @@ public: >& devolatilisation() const; + //- Return reference to reacting surface reaction model + inline const SurfaceReactionModel + < + ReactingMultiphaseCloud<ParcelType> + >& + surfaceReaction() const; + + + // Check + + //- Print cloud information + void info() const; + + //- Add to cumulative volatilisation mass transfer + void addToMassDevolatilisation(const scalar dMass); + + //- Add to cumulative surface reaction transfer + void addToMassSurfaceReaction(const scalar dMass); + // Cloud evolution functions diff --git a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloudI.H b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloudI.H index f27fae24eaf8cbb80843f6fbf4028f1a53581ffa..752f2b8ca3227be1259e380d1f6b01f5beb4dc9d 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloudI.H +++ b/src/lagrangian/intermediate/clouds/Templates/ReactingMultiphaseCloud/ReactingMultiphaseCloudI.H @@ -37,4 +37,15 @@ Foam::ReactingMultiphaseCloud<ParcelType>::devolatilisation() const } +template<class ParcelType> +inline const Foam::SurfaceReactionModel +< + Foam::ReactingMultiphaseCloud<ParcelType> +>& +Foam::ReactingMultiphaseCloud<ParcelType>::surfaceReaction() const +{ + return surfaceReactionModel_; +} + + // ************************************************************************* // diff --git a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C index 05a0b5f2aa4befbf23fd95c823b045c92cd1820e..b54624bb812417af3ee50c8b40e6d0ef205700b0 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C @@ -215,4 +215,11 @@ void Foam::ThermoCloud<ParcelType>::evolve() } +template<class ParcelType> +void Foam::ThermoCloud<ParcelType>::info() const +{ + KinematicCloud<ParcelType>::info(); +} + + // ************************************************************************* // diff --git a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.H b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.H index 13c560b152558657c161d2e4bd29cec4379a5751..d845b725b19d6e85213e6a7a5eb38decf2ec5701 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.H +++ b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.H @@ -197,6 +197,12 @@ public: inline tmp<volScalarField> sigmap() const; + // Check + + //- Print cloud information + void info() const; + + // Cloud evolution functions //- Add new parcel diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C index 0ab68ded742c8c3e17c2d0f93b3d8c14c9d4dafc..bc132bb6f345ed6d7a42919d8e02c1f2d0e77a89 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C @@ -402,6 +402,8 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calcDevolatilisation scalar volatileMass = YGas_[i]*dMassTot; dMassMT[id] += volatileMass; } + + td.cloud().addToMassDevolatilisation(dMassTot); } @@ -446,6 +448,8 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calcSurfaceReactions dMassSR, dhRet ); + + // TODO: td.cloud().addToMassDevolatilisation(sum(dMassSR)); } diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C index 266f6e25301424d1cf46a7cfee223abf78b2aa44..01fa099a9256bea336855cb42f4423a2a7edaee8 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C @@ -61,6 +61,7 @@ void Foam::ReactingParcel<ParcelType>::calcCoupled const scalar np0 = this->nParticle_; const scalar T0 = this->T_; + // ~~~~~~~~~~~~~~~~~~~~~~~~~ // Initialise transfer terms // ~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -75,11 +76,6 @@ void Foam::ReactingParcel<ParcelType>::calcCoupled // - components exist in particle already scalarList dMassMT(td.cloud().gases().size(), 0.0); - // Mass transfer due to surface reactions from particle to carrier phase - // - components do not necessarily exist in particle already - scalarList dMassSR(td.cloud().gases().size(), 0.0); - - // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Calculate velocity - update U // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -100,23 +96,8 @@ void Foam::ReactingParcel<ParcelType>::calcCoupled scalarField X = td.cliud().composition().X(0, YMixture_); calcPhaseChange(td, dt, T, X, dMassMT); - - // ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - // Calculate surface reactions - // ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - // Initialise enthalpy retention to zero - scalar dhRet = 0.0; - - calcSurfaceReactions(td, dt, celli, T0, T1, dMassMT, dMassSR, dhRet); - // New total mass - const scalar mass1 = mass0 - sum(dMassMT) - sum(dMassSR); - - // Add retained enthalpy from surface reaction to particle and remove - // from gas - T1 += dhRet/(0.5*(mass0 + mass1)*cp0); - dhTrans -= dhRet; + const scalar mass1 = mass0 - sum(dMassMT); // ~~~~~~~~~~~~~~~~~~~~~~~ @@ -126,7 +107,7 @@ void Foam::ReactingParcel<ParcelType>::calcCoupled // Transfer mass lost from particle to carrier mass source forAll(dMassMT, i) { - td.cloud().rhoTrans(i)[celli] += np0*(dMassMT[i] + dMassSR[i]); + td.cloud().rhoTrans(i)[celli] += np0*dMassMT[i]; } // Update momentum transfer @@ -194,6 +175,7 @@ void Foam::ReactingParcel<ParcelType>::calcUncoupled const scalar mass0 = this->mass(); const scalar cp0 = this->cp_; + // ~~~~~~~~~~~~~~~~~~~~~~~~~ // Initialise transfer terms // ~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -208,10 +190,6 @@ void Foam::ReactingParcel<ParcelType>::calcUncoupled // - components exist in particle already scalarList dMassMT(td.cloud().gases().size(), 0.0); - // Mass transfer due to surface reactions from particle to carrier phase - // - components do not necessarily exist in particle already - scalarList dMassSR(td.cloud().gases().size(), 0.0); - // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Calculate velocity - update U @@ -231,7 +209,8 @@ void Foam::ReactingParcel<ParcelType>::calcUncoupled // Calculate phase change // ~~~~~~~~~~~~~~~~~~~~~~ scalarField X = td.cloud().composition().X(0, YMixture_); - calcPhaseChange(td, dt, T, X, dMassMT); + scalar dMassPC = calcPhaseChange(td, dt, T, X, dMassMT); + T1 -= td.constProps().Lvap()*dMassPC/(0.5*mass0*cp0); // ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -241,10 +220,8 @@ void Foam::ReactingParcel<ParcelType>::calcUncoupled // Initialise enthalpy retention to zero scalar dhRet = 0.0; - calcSurfaceReactions(td, dt, celli, T0, T1, dMassMT, dMassSR, dhRet); - // New total mass - const scalar mass1 = mass0 - sum(dMassMT) - sum(dMassSR); + const scalar mass1 = mass0 - sum(dMassMT); // New specific heat capacity const scalar cp1 = cp0; // TODO: new cp1 @@ -312,6 +289,7 @@ void Foam::ReactingParcel<ParcelType>::calcPhaseChange dt ); + td.cloud().addToMassPhaseChange(dMassTot); // TODO: Re-calculate mass fractions diff --git a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelDispersionModels.C b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelDispersionModels.C similarity index 96% rename from src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelDispersionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelDispersionModels.C index 7a09f02321f62440099ab14329657fc7ae2915f2..f6444b1252fe479922e8b867a0ef06bf6629de33 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelDispersionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelDispersionModels.C @@ -31,6 +31,8 @@ License #include "GradientDispersionRAS.H" #include "StochasticDispersionRAS.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeDispersionModel(KinematicCloud<basicKinematicParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelDragModels.C b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelDragModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelDragModels.C rename to src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelDragModels.C index e88f4e1d37b79258a3cf30a645aff5ffc926b703..6b10e4efb0356ff4e8e1d200e26f760efcbbf95e 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelDragModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelDragModels.C @@ -30,6 +30,8 @@ License #include "NoDrag.H" #include "SphereDrag.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeDragModel(KinematicCloud<basicKinematicParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelInjectionModels.C b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelInjectionModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelInjectionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelInjectionModels.C index e5cc927c67d55dec0ecebe1cb76d549227e632c3..c722ac91fdf74d5123add48d14f3399d5f8f3c91 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelInjectionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelInjectionModels.C @@ -31,6 +31,8 @@ License #include "ManualInjection.H" #include "ConeInjection.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeInjectionModel(KinematicCloud<basicKinematicParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelWallInteractionModels.C b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelWallInteractionModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelWallInteractionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelWallInteractionModels.C index 95335509a6c280df7a2100678c058ed058557a88..544cddaf2ad164fd975e392223ba9eda0a0ff541 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/makeBasicKinematicParcelWallInteractionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicKinematicParcel/submodels/makeBasicKinematicParcelWallInteractionModels.C @@ -30,6 +30,8 @@ License #include "Rebound.H" #include "StandardWallInteraction.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeWallInteractionModel(KinematicCloud<basicKinematicParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelCompositionModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelCompositionModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelCompositionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelCompositionModels.C index b598be99396d914057b64034080ab9696db059e2..4dd31ffb585177c7b2655b86d44ec288c03e32af 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelCompositionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelCompositionModels.C @@ -29,6 +29,8 @@ License #include "SingleMixtureFraction.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeCompositionModel diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelDevolatilisationModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDevolatilisationModels.C similarity index 96% rename from src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelDevolatilisationModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDevolatilisationModels.C index 71c9d6e7c04639c151e3fac6ace62fc57a30702d..8704e48d801561ce3c543afc7e09d47090e50323 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelDevolatilisationModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDevolatilisationModels.C @@ -31,6 +31,8 @@ License #include "ConstantRateDevolatilisation.H" #include "SingleKineticRateDevolatilisation.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeDevolatilisationModel diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelDispersionModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDispersionModels.C similarity index 96% rename from src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelDispersionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDispersionModels.C index 5c96a859a796151fef9128ac72da7297c4ded499..8e4a77d5e3038ad65a0bf05d3ead1451bf64a6f9 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelDispersionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDispersionModels.C @@ -31,6 +31,8 @@ License #include "GradientDispersionRAS.H" #include "StochasticDispersionRAS.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeDispersionModel(KinematicCloud<basicReactingMultiphaseParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelDragModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDragModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelDragModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDragModels.C index 253d546b7bd77de904d77caa27886449795e6f92..5e56985952fa0a004e1b4d7d38a1cebe9445ec76 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelDragModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelDragModels.C @@ -30,6 +30,8 @@ License #include "NoDrag.H" #include "SphereDrag.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeDragModel(KinematicCloud<basicReactingMultiphaseParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelHeatTransferModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelHeatTransferModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelHeatTransferModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelHeatTransferModels.C index 1b6f4e06e1c149b8f7c51d7d3e040c11703328bf..f501421d8bb869808909eb53cad995167a36543f 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelHeatTransferModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelHeatTransferModels.C @@ -30,6 +30,8 @@ License #include "NoHeatTransfer.H" #include "RanzMarshall.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeHeatTransferModel(ThermoCloud<basicReactingMultiphaseParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelInjectionModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelInjectionModels.C similarity index 96% rename from src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelInjectionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelInjectionModels.C index 53bed2ed119c52fb9675c6c634b0feba01552922..6d8b5aeac9166c03c4569deb6b097e088a9a4088 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelInjectionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelInjectionModels.C @@ -31,6 +31,8 @@ License #include "ManualInjection.H" #include "ConeInjection.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeInjectionModel(KinematicCloud<basicReactingMultiphaseParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelPhaseChangeModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPhaseChangeModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelPhaseChangeModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPhaseChangeModels.C index 76383aaf1130fc8eb880877ecd46aeea3d90a352..88300dffb16b3e7b9d77172bbd85c4cc8748ce7d 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelPhaseChangeModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelPhaseChangeModels.C @@ -29,6 +29,8 @@ License #include "NoPhaseChange.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makePhaseChangeModel diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C similarity index 88% rename from src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C index 26c983dfac8bb4a105bcb22c30a6e331f6bca022..d0478807400a41a0d301e19faaffcc0be0bfa3a0 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C @@ -25,22 +25,24 @@ License \*---------------------------------------------------------------------------*/ #include "basicReactingMultiphaseParcel.H" -#include "ReactingCloud.H" +#include "ReactingMultiphaseCloud.H" #include "NoSurfaceReaction.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeSurfaceReactionModel ( - ReactingCloud<basicReactingMultiphaseParcel> + ReactingMultiphaseCloud<basicReactingMultiphaseParcel> ); // Add instances of surface reaction model to the table makeSurfaceReactionModelType ( NoSurfaceReaction, - ReactingCloud, + ReactingMultiphaseCloud, basicReactingMultiphaseParcel ); }; diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelWallInteractionModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelWallInteractionModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelWallInteractionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelWallInteractionModels.C index 19057c485ec2064e18e9902d28d6f7b92c8ba1d9..3e7d911f8f3fd5c1fe20c18dc94554967736fdb0 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/makeBasicReactingMultiphaseParcelWallInteractionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingMultiphaseParcel/submodels/makeBasicReactingMultiphaseParcelWallInteractionModels.C @@ -30,6 +30,8 @@ License #include "Rebound.H" #include "StandardWallInteraction.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeWallInteractionModel(KinematicCloud<basicReactingMultiphaseParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelSurfaceReactionModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelSurfaceReactionModels.C deleted file mode 100644 index 0cb133d8bab72efc283164d5fd0fec7e8081836e..0000000000000000000000000000000000000000 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelSurfaceReactionModels.C +++ /dev/null @@ -1,46 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 2 of the License, or (at your - option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM; if not, write to the Free Software Foundation, - Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -\*---------------------------------------------------------------------------*/ - -#include "basicReactingParcel.H" -#include "ReactingCloud.H" - -#include "NoSurfaceReaction.H" - -namespace Foam -{ - makeSurfaceReactionModel(ReactingCloud<basicReactingParcel>); - - // Add instances of surface reaction model to the table - makeSurfaceReactionModelType - ( - NoSurfaceReaction, - ReactingCloud, - basicReactingParcel - ); -}; - - -// ************************************************************************* // diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelCompositionModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelCompositionModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelCompositionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelCompositionModels.C index 786fa74ddc06c675eb66a01293b1a829036aba27..7010ab4f2cd60f267c18f9181262d873ce58453f 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelCompositionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelCompositionModels.C @@ -29,6 +29,8 @@ License #include "SinglePhaseMixture.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeCompositionModel(ReactingCloud<basicReactingParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelDispersionModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelDispersionModels.C similarity index 96% rename from src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelDispersionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelDispersionModels.C index 80a351c7bb20d31d6bf4693c2861943658e5a3f2..d2b6132bcaa1d945630db56ed4d49c2c952433ae 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelDispersionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelDispersionModels.C @@ -31,6 +31,8 @@ License #include "GradientDispersionRAS.H" #include "StochasticDispersionRAS.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeDispersionModel(KinematicCloud<basicReactingParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelDragModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelDragModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelDragModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelDragModels.C index 178569796d6cbc677bd432e3a3f57ba1187c8b2a..0c43e221b1a42eeb12dd8f5afc8505dcb6626ff0 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelDragModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelDragModels.C @@ -30,6 +30,8 @@ License #include "NoDrag.H" #include "SphereDrag.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeDragModel(KinematicCloud<basicReactingParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelHeatTransferModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelHeatTransferModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelHeatTransferModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelHeatTransferModels.C index e78caa71ec49c04380713ef94b0264f93b032edb..5bc2ea33a89138eae638d916392690bb8ba1b1b3 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelHeatTransferModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelHeatTransferModels.C @@ -30,6 +30,8 @@ License #include "NoHeatTransfer.H" #include "RanzMarshall.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeHeatTransferModel(ThermoCloud<basicReactingParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelInjectionModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelInjectionModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelInjectionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelInjectionModels.C index 77b71a75abf207bba9278568c9c724efda97460f..1af1e370884cf7f7f8b6c277ef19dea7b0bcbc4e 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelInjectionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelInjectionModels.C @@ -31,6 +31,8 @@ License #include "ManualInjection.H" #include "ConeInjection.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeInjectionModel(KinematicCloud<basicReactingParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelPhaseChangeModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelPhaseChangeModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelPhaseChangeModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelPhaseChangeModels.C index 537ff586faa8e502fa6484dffee437d99d72ecf2..65118fa8f7153df623633abee887dbebe9b1cee2 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelPhaseChangeModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelPhaseChangeModels.C @@ -29,6 +29,8 @@ License #include "NoPhaseChange.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makePhaseChangeModel(ReactingCloud<basicReactingParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelWallInteractionModels.C b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelWallInteractionModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelWallInteractionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelWallInteractionModels.C index 364d6f031e4e506f198abcf1925d5186716748b4..637fd92aaede265680644ad8224f85f9d4528286 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/makeBasicReactingParcelWallInteractionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicReactingParcel/submodels/makeBasicReactingParcelWallInteractionModels.C @@ -30,6 +30,8 @@ License #include "Rebound.H" #include "StandardWallInteraction.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeWallInteractionModel(KinematicCloud<basicReactingParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelDispersionModels.C b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelDispersionModels.C similarity index 96% rename from src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelDispersionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelDispersionModels.C index f1ab424f9bab6113a373e34b735d8f3a13ebbaa8..86bc63c72a7626294862f46bf281dd0848d37225 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelDispersionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelDispersionModels.C @@ -30,6 +30,8 @@ License #include "GradientDispersionRAS.H" #include "StochasticDispersionRAS.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeDispersionModel(KinematicCloud<basicThermoParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelDragModels.C b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelDragModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelDragModels.C rename to src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelDragModels.C index b477000cf52757a84ae0a148128eaf60800e4bff..aaeacca70c8c756689284602ed52ea9eb95e9598 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelDragModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelDragModels.C @@ -29,6 +29,8 @@ License #include "NoDrag.H" #include "SphereDrag.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeDragModel(KinematicCloud<basicThermoParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelHeatTransferModels.C b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelHeatTransferModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelHeatTransferModels.C rename to src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelHeatTransferModels.C index d8a3c67c97560553618be1ecb21cef4c8636fa22..afb3ae0833ba89d779c0ee14ba7c0d4544545f99 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelHeatTransferModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelHeatTransferModels.C @@ -29,6 +29,8 @@ License #include "NoHeatTransfer.H" #include "RanzMarshall.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeHeatTransferModel(ThermoCloud<basicThermoParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelInjectionModels.C b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelInjectionModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelInjectionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelInjectionModels.C index cb51b8685257ca1a7860fd0d30e7e421d21fd5e8..f2f433b0216ad9c4ab9b9542d016e11f42c8ae11 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelInjectionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelInjectionModels.C @@ -30,6 +30,8 @@ License #include "ManualInjection.H" #include "ConeInjection.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeInjectionModel(KinematicCloud<basicThermoParcel>); diff --git a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelWallInteractionModels.C b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelWallInteractionModels.C similarity index 95% rename from src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelWallInteractionModels.C rename to src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelWallInteractionModels.C index 03402510f6925d545dbbded33781f55c63d2bf14..361ffffdb10e8f21a636c54ca694e65054debe6e 100644 --- a/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/makeBasicThermoParcelWallInteractionModels.C +++ b/src/lagrangian/intermediate/parcels/derived/basicThermoParcel/submodels/makeBasicThermoParcelWallInteractionModels.C @@ -29,6 +29,8 @@ License #include "Rebound.H" #include "StandardWallInteraction.H" +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + namespace Foam { makeWallInteractionModel(KinematicCloud<basicThermoParcel>); diff --git a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.C b/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.C similarity index 100% rename from src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.C rename to src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.C diff --git a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.H b/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.H similarity index 97% rename from src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.H rename to src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.H index 65ff10c0f29d74e73f6a9ff82dc9674d7446cf48..edb919a62142118d579d5c177c41420b515b31d7 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.H +++ b/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.H @@ -71,10 +71,10 @@ public: // Member Functions //- Flag to indicate whether model activates devolatisation model - bool active() const; + virtual bool active() const; //- Update surface reactions - void calculate + virtual void calculate ( const scalar dt, const label celli, diff --git a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/NewSurfaceReactionModel.C b/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/NewSurfaceReactionModel.C similarity index 100% rename from src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/NewSurfaceReactionModel.C rename to src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/NewSurfaceReactionModel.C diff --git a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.C b/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.C similarity index 100% rename from src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.C rename to src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.C diff --git a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H b/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H similarity index 98% rename from src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H rename to src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H index 339af3560b1c67337962b2c0d53ccc41b8ae2b76..6b4f5be31cbe7161d420bc22be5a9b2895045ac7 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H +++ b/src/lagrangian/intermediate/submodels/ReactingMultiphase/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H @@ -56,7 +56,6 @@ namespace Foam template<class CloudType> class SurfaceReactionModel { - // Private data //- The cloud dictionary @@ -129,7 +128,7 @@ public: // Member Functions - //- Flag to indicate whether model activates devolatisation model + //- Flag to indicate whether model activates surface reaction model virtual bool active() const = 0; //- Update surface reactions