From 95b15ba21c200149fa6ff2e4d2da64996b220ff6 Mon Sep 17 00:00:00 2001 From: andy Date: Fri, 16 May 2008 11:16:51 +0100 Subject: [PATCH] Cleaned up usage for submodel coeffDicts and comments in headers --- .../IO/DataEntry/DataEntry/DataEntry.H | 3 ++ .../DispersionRASModel/DispersionRASModel.H | 13 +------ .../GradientDispersionRAS.H | 2 ++ .../NoDispersion/NoDispersion.H | 2 ++ .../StochasticDispersionRAS.H | 4 ++- .../Kinematic/DragModel/NoDrag/NoDrag.H | 2 ++ .../DragModel/SphereDrag/SphereDrag.H | 2 ++ .../WallInteractionModel/Rebound/Rebound.C | 9 +++-- .../WallInteractionModel/Rebound/Rebound.H | 8 +++++ .../StandardWallInteraction.C | 7 ++-- .../StandardWallInteraction.H | 5 ++- .../WallInteractionModel.C | 14 ++++++-- .../WallInteractionModel.H | 13 +++++-- .../CompositionModel/CompositionModel.C | 11 +++++- .../CompositionModel/CompositionModel.H | 13 +++++-- .../SingleMixtureFraction.C | 36 ++++++++++++------- .../SingleMixtureFraction.H | 22 ++++++++++-- .../ConstantRateDevolatilisation.C | 7 ++-- .../ConstantRateDevolatilisation.H | 7 ++-- .../MassTransferModel/MassTransferModel.C | 13 +++++-- .../MassTransferModel/MassTransferModel.H | 11 ++++-- .../NoMassTransfer/NoMassTransfer.C | 2 +- .../NoMassTransfer/NoMassTransfer.H | 3 ++ .../SingleKineticRateDevolatilisation.C | 9 +++-- .../SingleKineticRateDevolatilisation.H | 7 ++-- .../NoSurfaceReaction/NoSurfaceReaction.C | 2 +- .../NoSurfaceReaction/NoSurfaceReaction.H | 2 ++ .../SurfaceReactionModel.C | 13 +++++-- .../SurfaceReactionModel.H | 12 +++++-- .../HeatTransferModel/HeatTransferModel.C | 13 +++++-- .../HeatTransferModel/HeatTransferModel.H | 11 ++++-- .../NoHeatTransfer/NoHeatTransfer.C | 2 +- .../NoHeatTransfer/NoHeatTransfer.H | 3 ++ .../RanzMarshall/RanzMarshall.C | 5 ++- .../RanzMarshall/RanzMarshall.H | 6 ++-- 35 files changed, 208 insertions(+), 86 deletions(-) diff --git a/src/lagrangian/intermediate/submodels/IO/DataEntry/DataEntry/DataEntry.H b/src/lagrangian/intermediate/submodels/IO/DataEntry/DataEntry/DataEntry.H index ec9aee03e1..6c8959f96d 100644 --- a/src/lagrangian/intermediate/submodels/IO/DataEntry/DataEntry/DataEntry.H +++ b/src/lagrangian/intermediate/submodels/IO/DataEntry/DataEntry/DataEntry.H @@ -120,6 +120,9 @@ public: //- Return the dictionary const dictionary& dict() const; + + // Evaluation + //- Return value as a function of (scalar) independent variable virtual Type value(const scalar x) const = 0; diff --git a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionRASModel/DispersionRASModel.H b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionRASModel/DispersionRASModel.H index 1caab64203..4dbf3b67ee 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionRASModel/DispersionRASModel.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/DispersionRASModel/DispersionRASModel.H @@ -80,22 +80,11 @@ public: // Member Functions + //- Return const access to the turbulence model const compressible::turbulenceModel& turbulence() const { return turbulence_; } - - virtual bool active() const = 0; - - virtual vector update - ( - const scalar dt, - const label celli, - const vector& U, - const vector& Uc, - vector& UTurb, - scalar& tTurb - ) = 0; }; diff --git a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/GradientDispersionRAS/GradientDispersionRAS.H b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/GradientDispersionRAS/GradientDispersionRAS.H index 31bfdc4ad0..8771600330 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/GradientDispersionRAS/GradientDispersionRAS.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/GradientDispersionRAS/GradientDispersionRAS.H @@ -75,8 +75,10 @@ public: // Member Functions + //- Flag to indicate whether model activates injection model bool active() const; + //- Update (disperse particles) vector update ( const scalar dt, diff --git a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/NoDispersion/NoDispersion.H b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/NoDispersion/NoDispersion.H index e9fcc2a445..a942ebbfb1 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/NoDispersion/NoDispersion.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/NoDispersion/NoDispersion.H @@ -73,8 +73,10 @@ public: // Member Functions + //- Flag to indicate whether model activates injection model bool active() const; + //- Update (disperse particles) vector update ( const scalar dt, diff --git a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/StochasticDispersionRAS/StochasticDispersionRAS.H b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/StochasticDispersionRAS/StochasticDispersionRAS.H index f704a5daba..4f2bf2cc1d 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/StochasticDispersionRAS/StochasticDispersionRAS.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/DispersionModel/StochasticDispersionRAS/StochasticDispersionRAS.H @@ -28,7 +28,7 @@ Class Description The velocity is perturbed in random direction, with a Gaussian random number distribution with variance sigma. - where sigma is defined below + where sigma is defined below \*---------------------------------------------------------------------------*/ @@ -75,8 +75,10 @@ public: // Member Functions + //- Flag to indicate whether model activates injection model bool active() const; + //- Update (disperse particles) vector update ( const scalar dt, diff --git a/src/lagrangian/intermediate/submodels/Kinematic/DragModel/NoDrag/NoDrag.H b/src/lagrangian/intermediate/submodels/Kinematic/DragModel/NoDrag/NoDrag.H index ae8385a204..40d7de6341 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/DragModel/NoDrag/NoDrag.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/DragModel/NoDrag/NoDrag.H @@ -72,8 +72,10 @@ public: // Member Functions + //- Flag to indicate whether model activates drag model bool active() const; + //- Return drag coefficient scalar Cd(const scalar) const; }; diff --git a/src/lagrangian/intermediate/submodels/Kinematic/DragModel/SphereDrag/SphereDrag.H b/src/lagrangian/intermediate/submodels/Kinematic/DragModel/SphereDrag/SphereDrag.H index 935bd07c48..5e01ed7462 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/DragModel/SphereDrag/SphereDrag.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/DragModel/SphereDrag/SphereDrag.H @@ -72,8 +72,10 @@ public: // Member Functions + //- Flag to indicate whether model activates drag model bool active() const; + //- Return drag coefficient scalar Cd(const scalar Re) const; }; diff --git a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/Rebound/Rebound.C b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/Rebound/Rebound.C index 7a92891670..0d4873b884 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/Rebound/Rebound.C +++ b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/Rebound/Rebound.C @@ -24,8 +24,6 @@ License \*---------------------------------------------------------------------------*/ -#include "error.H" - #include "Rebound.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -37,7 +35,8 @@ Foam::Rebound::Rebound CloudType& cloud ) : - WallInteractionModel(dict, cloud) + WallInteractionModel(dict, cloud, typeName), + UFactor_(readScalar(this->coeffDict().lookup("UFactor"))) {} @@ -71,9 +70,9 @@ void Foam::Rebound::correct scalar Un = U & nw; vector Ut = U - Un*nw; - if (Un > 0) + if (Un > 0.0) { - U -= 2.0*Un*nw; + U -= UFactor_*2.0*Un*nw; } U -= Ut; diff --git a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/Rebound/Rebound.H b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/Rebound/Rebound.H index a92ee9008d..603f910a9c 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/Rebound/Rebound.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/Rebound/Rebound.H @@ -48,6 +48,12 @@ class Rebound : public WallInteractionModel { + // Private data + + //- Factor applied to velocity on rebound + // Normal rebound = 1 + scalar UFactor_; + public: @@ -72,8 +78,10 @@ public: // Member Functions + //- Flag to indicate whether model activates heat transfer model bool active() const; + //- Apply wall correction virtual void correct ( const wallPolyPatch& wpp, diff --git a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/StandardWallInteraction/StandardWallInteraction.C b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/StandardWallInteraction/StandardWallInteraction.C index 282fc0b323..349aa27019 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/StandardWallInteraction/StandardWallInteraction.C +++ b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/StandardWallInteraction/StandardWallInteraction.C @@ -37,10 +37,9 @@ Foam::StandardWallInteraction::StandardWallInteraction CloudType& cloud ) : - WallInteractionModel(dict, cloud), - coeffDict_(dict.subDict(typeName + "Coeffs")), - e_(dimensionedScalar(coeffDict_.lookup("e")).value()), - mu_(dimensionedScalar(coeffDict_.lookup("mu")).value()) + WallInteractionModel(dict, cloud, typeName), + e_(dimensionedScalar(this->coeffDict().lookup("e")).value()), + mu_(dimensionedScalar(this->coeffDict().lookup("mu")).value()) {} diff --git a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/StandardWallInteraction/StandardWallInteraction.H b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/StandardWallInteraction/StandardWallInteraction.H index fedd5f5aa9..977371370f 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/StandardWallInteraction/StandardWallInteraction.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/StandardWallInteraction/StandardWallInteraction.H @@ -51,9 +51,6 @@ class StandardWallInteraction // Private data - //- Coefficient dictionary - dictionary coeffDict_; - //- Elasticity const scalar e_; @@ -84,8 +81,10 @@ public: // Member Functions + //- Flag to indicate whether model activates heat transfer model bool active() const; + //- Apply wall correction virtual void correct ( const wallPolyPatch& wpp, diff --git a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/WallInteractionModel/WallInteractionModel.C b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/WallInteractionModel/WallInteractionModel.C index 8125f12d7f..af366c3c6b 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/WallInteractionModel/WallInteractionModel.C +++ b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/WallInteractionModel/WallInteractionModel.C @@ -32,10 +32,12 @@ template Foam::WallInteractionModel::WallInteractionModel ( const dictionary& dict, - CloudType& owner + CloudType& owner, + const word& type ) : dict_(dict), - owner_(owner) + owner_(owner), + coeffDict_(dict.subDict(type + "Coeffs")) {} @@ -63,6 +65,14 @@ const Foam::dictionary& Foam::WallInteractionModel::dict() const } +template +const Foam::dictionary& +Foam::WallInteractionModel::coeffDict() const +{ + return coeffDict_; +} + + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #include "NewWallInteractionModel.C" diff --git a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/WallInteractionModel/WallInteractionModel.H b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/WallInteractionModel/WallInteractionModel.H index 0c6c5a851a..014a6e835f 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/WallInteractionModel/WallInteractionModel.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/WallInteractionModel/WallInteractionModel/WallInteractionModel.H @@ -63,6 +63,9 @@ class WallInteractionModel // reference to the owner cloud class CloudType& owner_; + //- The coefficients dictionary + const dictionary coeffDict_; + public: @@ -89,7 +92,8 @@ public: WallInteractionModel ( const dictionary& dict, - CloudType& owner + CloudType& owner, + const word& type ); @@ -109,11 +113,14 @@ public: // Access + //- Return the owner cloud object + const CloudType& owner() const; + //- Return the dictionary const dictionary& dict() const; - //- Return the owner cloud object - const CloudType& owner() const; + //- Return the coefficients dictionary + const dictionary& coeffDict() const; // Member Functions diff --git a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C index da638a66c4..1cde137d9f 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C +++ b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.C @@ -32,10 +32,12 @@ template Foam::CompositionModel::CompositionModel ( const dictionary& dict, - CloudType& owner + CloudType& owner, + const word& type ) : dict_(dict), owner_(owner), + coeffDict_(dict.subDict(type + "Coeffs")), carrierThermo_(owner.carrierThermo()), gases_(owner.gases()), liquids_ @@ -84,6 +86,13 @@ const Foam::dictionary& Foam::CompositionModel::dict() const } +template +const Foam::dictionary& Foam::CompositionModel::coeffDict() const +{ + return coeffDict_; +} + + template const Foam::hCombustionThermo& Foam::CompositionModel::carrierThermo() const diff --git a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H index 470549c916..ada5d2e380 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H +++ b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/CompositionModel/CompositionModel.H @@ -70,6 +70,9 @@ class CompositionModel //- Reference to the owner injection class CloudType& owner_; + //- The coefficients dictionary + const dictionary& coeffDict_; + //- Reference to the carrier phase thermo package hCombustionThermo& carrierThermo_; @@ -108,7 +111,8 @@ public: CompositionModel ( const dictionary& dict, - CloudType& owner + CloudType& owner, + const word& type ); @@ -133,9 +137,12 @@ public: //- Return the cloud object const CloudType& owner() const; - //- Return the dictionary + //- Return the cloud dictionary const dictionary& dict() const; + //- Return the coefficients dictionary + const dictionary& coeffDict() const; + //- Return the carrier phase thermo package const hCombustionThermo& carrierThermo() const; @@ -216,6 +223,7 @@ public: const scalar T ) const = 0; + //- Return specific heat caparcity for the liquid mixture virtual const scalar cpLiquid ( const scalarField& YLiquid, @@ -223,6 +231,7 @@ public: const scalar T ) const = 0; + //- Return specific heat caparcity for the solid mixture virtual const scalar cpSolid ( const scalarField& YSolid diff --git a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.C b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.C index 564b7cf5a6..39bc2bf76b 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.C +++ b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.C @@ -35,23 +35,22 @@ Foam::SingleMixtureFraction::SingleMixtureFraction CloudType& owner ) : - CompositionModel(dict, owner), - coeffDict_(dict.subDict(typeName + "Coeffs")), + CompositionModel(dict, owner, typeName), - gasNames_(coeffDict_.lookup("gasNames")), + gasNames_(this->coeffDict().lookup("gasNames")), gasGlobalIds_(gasNames_.size(), -1), - YGas0_(coeffDict_.lookup("YGas0")), - YGasTot0_(readScalar(coeffDict_.lookup("YGasTot0"))), + YGas0_(this->coeffDict().lookup("YGas0")), + YGasTot0_(readScalar(this->coeffDict().lookup("YGasTot0"))), - liquidNames_(coeffDict_.lookup("liquidNames")), + liquidNames_(this->coeffDict().lookup("liquidNames")), liquidGlobalIds_(liquidNames_.size(), -1), - YLiquid0_(coeffDict_.lookup("YLiquid0")), - YLiquidTot0_(readScalar(coeffDict_.lookup("YLiquidTot0"))), + YLiquid0_(this->coeffDict().lookup("YLiquid0")), + YLiquidTot0_(readScalar(this->coeffDict().lookup("YLiquidTot0"))), - solidNames_(coeffDict_.lookup("solidNames")), + solidNames_(this->coeffDict().lookup("solidNames")), solidGlobalIds_(solidNames_.size(), -1), - YSolid0_(coeffDict_.lookup("YSolid0")), - YSolidTot0_(readScalar(coeffDict_.lookup("YSolidTot0"))), + YSolid0_(this->coeffDict().lookup("YSolid0")), + YSolidTot0_(readScalar(this->coeffDict().lookup("YSolidTot0"))), YMixture0_(3) { @@ -73,7 +72,8 @@ Foam::SingleMixtureFraction::SingleMixtureFraction Info<< "\nThermo package species composition comprises:" << endl; forAll (this->carrierThermo().composition().Y(), k) { - Info<< this->carrierThermo().composition().Y()[k].name() << endl; + Info<< this->carrierThermo().composition().Y()[k].name() + << endl; } FatalErrorIn @@ -255,12 +255,14 @@ Foam::SingleMixtureFraction::gasLocalId(const word& gasName) const return i; } } + WarningIn ( "Foam::label SingleMixtureFraction::" "gasLocalId(const word& gasName) const" )<< "Gas name " << gasName << " not found in gasNames_" << endl; + return -1; } @@ -276,12 +278,14 @@ Foam::SingleMixtureFraction::gasGlobalId(const word& gasName) const return gasGlobalIds_[i]; } } + WarningIn ( "Foam::label SingleMixtureFraction::" "gasGlobalId(const word& gasName) const" )<< "Gas name " << gasName << " not found in gasNames_" << endl; + return -1; } @@ -329,12 +333,14 @@ Foam::SingleMixtureFraction::liquidLocalId(const word& liquidName) co return i; } } + WarningIn ( "Foam::label SingleMixtureFraction::" "liquidLocalId(const word& liquidName) const" )<< "Liquid name " << liquidName << " not found in liquidNames_" << endl; + return -1; } @@ -350,12 +356,14 @@ Foam::SingleMixtureFraction::liquidGlobalId(const word& liquidName) c return liquidGlobalIds_[i]; } } + WarningIn ( "Foam::label SingleMixtureFraction::" "liquidGlobalId(const word& liquidName) const" )<< "Liquid name " << liquidName << " not found in liquidNames_" << endl; + return -1; } @@ -403,12 +411,14 @@ Foam::SingleMixtureFraction::solidLocalId(const word& solidName) cons return i; } } + WarningIn ( "Foam::label SingleMixtureFraction::" "SolididLocalId(const word& solidName) const" )<< "Solid name " << solidName << " not found in solidNames_" << endl; + return -1; } @@ -424,12 +434,14 @@ Foam::SingleMixtureFraction::solidGlobalId(const word& solidName) con return solidGlobalIds_[i]; } } + WarningIn ( "Foam::label SingleMixtureFraction::" "solidGlobalId(const word& solidName) const" )<< "Solid name " << solidName << " not found in solidNames_" << endl; + return -1; } diff --git a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.H b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.H index 1269c98306..070e41e727 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.H +++ b/src/lagrangian/intermediate/submodels/Reacting/CompositionModel/SingleMixtureFraction/SingleMixtureFraction.H @@ -57,9 +57,6 @@ class SingleMixtureFraction // Private data - //- The coefficient dictionary - const dictionary& coeffDict_; - //- Parcel properties //- List of gas names @@ -146,40 +143,58 @@ public: // Access + //- Return the list of composition names const wordList compositionNames() const; + //- Return the list of gas names const wordList& gasNames() const; + //- Return the list indices of gases in global thermo list const labelList& gasGlobalIds() const; + //- Return the list of gas mass fractions const scalarField& YGas0() const; + //- Return the total gas mass fraction const scalar YGasTot0() const; + //- Return the list of liquid names const wordList& liquidNames() const; + //- Return the list indices of liquid in global thermo list const labelList& liquidGlobalIds() const; + //- Return the list of liquid mass fractions const scalarField& YLiquid0() const; + //- Return the total liquid mass fraction const scalar YLiquidTot0() const; + //- Return the list of solid names const wordList& solidNames() const; + //- Return the list indices of solids in global thermo list const labelList& solidGlobalIds() const; + //- Return the list of solid mass fractions const scalarField& YSolid0() const; + //- Return the total solid mass fraction const scalar YSolidTot0() const; + //- Return the list of mixture mass fractions const scalarField& YMixture0() const; + //- Return the gas constant for the gas mixture const scalar RGas(const scalarField& YGas) const; + //- Return enthalpy for the gas mixture const scalar HGas(const scalarField& YGas, const scalar T) const; + //- Return specific heat caparcity for the gas mixture const scalar cpGas(const scalarField& YGas, const scalar T) const; + //- Return specific heat caparcity for the liquid mixture const scalar cpLiquid ( const scalarField& YLiquid, @@ -187,6 +202,7 @@ public: const scalar T ) const; + //- Return specific heat caparcity for the solid mixture const scalar cpSolid(const scalarField& YSolid) const; }; diff --git a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/ConstantRateDevolatilisation/ConstantRateDevolatilisation.C b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/ConstantRateDevolatilisation/ConstantRateDevolatilisation.C index b24dfd0500..3d29eab791 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/ConstantRateDevolatilisation/ConstantRateDevolatilisation.C +++ b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/ConstantRateDevolatilisation/ConstantRateDevolatilisation.C @@ -35,12 +35,11 @@ Foam::ConstantRateDevolatilisation::ConstantRateDevolatilisation CloudType& owner ) : - MassTransferModel(dict, owner), - coeffDict_(dict.subDict(typeName + "Coeffs")), - A0_(dimensionedScalar(coeffDict_.lookup("A0")).value()), + MassTransferModel(dict, owner, typeName), + A0_(dimensionedScalar(this->coeffDict().lookup("A0")).value()), volatileResidualCoeff_ ( - readScalar(coeffDict_.lookup("volatileResidualCoeff")) + readScalar(this->coeffDict().lookup("volatileResidualCoeff")) ) {} diff --git a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/ConstantRateDevolatilisation/ConstantRateDevolatilisation.H b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/ConstantRateDevolatilisation/ConstantRateDevolatilisation.H index 1f425868ad..a2490e6472 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/ConstantRateDevolatilisation/ConstantRateDevolatilisation.H +++ b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/ConstantRateDevolatilisation/ConstantRateDevolatilisation.H @@ -52,10 +52,6 @@ class ConstantRateDevolatilisation // Private data - //- Coefficients dictionary - dictionary coeffDict_; - - // Model constants //- Rate constant (suggested default = 12) [1/s] @@ -90,10 +86,13 @@ public: // Member Functions + //- Flag to indicate whether model activates mass transfer model bool active() const; + //- Flag to indicate whether model changes particle volume bool changesVolume() const; + //- Update model scalar calculate ( const scalar dt, diff --git a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/MassTransferModel/MassTransferModel.C b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/MassTransferModel/MassTransferModel.C index 00c5be1c46..8e0fb5e0a0 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/MassTransferModel/MassTransferModel.C +++ b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/MassTransferModel/MassTransferModel.C @@ -32,10 +32,12 @@ template Foam::MassTransferModel::MassTransferModel ( const dictionary& dict, - CloudType& owner + CloudType& owner, + const word& type ) : dict_(dict), - owner_(owner) + owner_(owner), + coeffDict_(dict.subDict(type + "Coeffs")) {} @@ -61,6 +63,13 @@ const Foam::dictionary& Foam::MassTransferModel::dict() const } +template +const Foam::dictionary& Foam::MassTransferModel::coeffDict() const +{ + return coeffDict_; +} + + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #include "NewMassTransferModel.C" diff --git a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/MassTransferModel/MassTransferModel.H b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/MassTransferModel/MassTransferModel.H index cb5164782a..81967a640f 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/MassTransferModel/MassTransferModel.H +++ b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/MassTransferModel/MassTransferModel.H @@ -65,6 +65,9 @@ protected: //- Reference to the owner cloud class CloudType& owner_; + //- The coefficient dictionary + const dictionary coeffDict_; + public: @@ -91,7 +94,8 @@ public: MassTransferModel ( const dictionary& dict, - CloudType& owner + CloudType& owner, + const word& type ); @@ -114,9 +118,12 @@ public: //- Return the owner cloud object const CloudType& owner() const; - //- Return the dictionary + //- Return the cloud dictionary const dictionary& dict() const; + //- Return the coefficient dictionary + const dictionary& coeffDict() const; + // Member Functions diff --git a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/NoMassTransfer/NoMassTransfer.C b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/NoMassTransfer/NoMassTransfer.C index 3e7c5a796b..f490b0d6cf 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/NoMassTransfer/NoMassTransfer.C +++ b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/NoMassTransfer/NoMassTransfer.C @@ -35,7 +35,7 @@ Foam::NoMassTransfer::NoMassTransfer CloudType& cloud ) : - MassTransferModel(dict, cloud) + MassTransferModel(dict, cloud, typeName) {} diff --git a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/NoMassTransfer/NoMassTransfer.H b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/NoMassTransfer/NoMassTransfer.H index 78a538f57b..18be1809e4 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/NoMassTransfer/NoMassTransfer.H +++ b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/NoMassTransfer/NoMassTransfer.H @@ -72,10 +72,13 @@ public: // Member Functions + //- Flag to indicate whether model activates mass transfer model bool active() const; + //- Flag to indicate whether model changes particle volume bool changesVolume() const; + //- Update model scalar calculate ( const scalar, diff --git a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/SingleKineticRateDevolatilisation/SingleKineticRateDevolatilisation.C b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/SingleKineticRateDevolatilisation/SingleKineticRateDevolatilisation.C index 3da409fa23..b6d2581a71 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/SingleKineticRateDevolatilisation/SingleKineticRateDevolatilisation.C +++ b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/SingleKineticRateDevolatilisation/SingleKineticRateDevolatilisation.C @@ -35,13 +35,12 @@ Foam::SingleKineticRateDevolatilisation::SingleKineticRateDevolatilis CloudType& owner ) : - MassTransferModel(dict, owner), - coeffDict_(dict.subDict(typeName + "Coeffs")), - A1_(dimensionedScalar(coeffDict_.lookup("A1")).value()), - E_(dimensionedScalar(coeffDict_.lookup("E")).value()), + MassTransferModel(dict, owner, typeName), + A1_(dimensionedScalar(this->coeffDict().lookup("A1")).value()), + E_(dimensionedScalar(this->coeffDict().lookup("E")).value()), volatileResidualCoeff_ ( - readScalar(coeffDict_.lookup("volatileResidualCoeff")) + readScalar(this->coeffDict().lookup("volatileResidualCoeff")) ) {} diff --git a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/SingleKineticRateDevolatilisation/SingleKineticRateDevolatilisation.H b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/SingleKineticRateDevolatilisation/SingleKineticRateDevolatilisation.H index 39b8bdf5c3..fea51bffae 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/SingleKineticRateDevolatilisation/SingleKineticRateDevolatilisation.H +++ b/src/lagrangian/intermediate/submodels/Reacting/MassTransferModel/SingleKineticRateDevolatilisation/SingleKineticRateDevolatilisation.H @@ -51,10 +51,6 @@ class SingleKineticRateDevolatilisation // Private data - //- Coefficients dictionary - dictionary coeffDict_; - - // Model constants //- Activation energy @@ -92,10 +88,13 @@ public: // Member Functions + //- Flag to indicate whether model activates mass transfer model bool active() const; + //- Flag to indicate whether model changes particle volume bool changesVolume() const; + //- Update model scalar calculate ( const scalar dt, diff --git a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.C b/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.C index 388e07a13e..a4bc12aa40 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.C +++ b/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.C @@ -35,7 +35,7 @@ Foam::NoSurfaceReaction::NoSurfaceReaction CloudType& owner ) : - SurfaceReactionModel(dict, owner) + SurfaceReactionModel(dict, owner, typeName) {} diff --git a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.H b/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.H index 36056ac183..f07228bc59 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.H +++ b/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/NoSurfaceReaction/NoSurfaceReaction.H @@ -72,8 +72,10 @@ public: // Member Functions + //- Flag to indicate whether model activates devolatisation model bool active() const; + //- Update surface reactions void calculate ( const scalar dt, diff --git a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.C b/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.C index 5004c4436d..616dccd20b 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.C +++ b/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.C @@ -32,10 +32,12 @@ template Foam::SurfaceReactionModel::SurfaceReactionModel ( const dictionary& dict, - CloudType& owner + CloudType& owner, + const word& type ) : dict_(dict), - owner_(owner) + owner_(owner), + coeffDict_(dict.subDict(type + "Coeffs")) {} @@ -61,6 +63,13 @@ const Foam::dictionary& Foam::SurfaceReactionModel::dict() const } +template +const Foam::dictionary& Foam::SurfaceReactionModel::coeffDict() const +{ + return coeffDict_; +} + + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #include "NewSurfaceReactionModel.C" diff --git a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H b/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H index c6ab5c1225..61c870d44e 100644 --- a/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H +++ b/src/lagrangian/intermediate/submodels/Reacting/SurfaceReactionModel/SurfaceReactionModel/SurfaceReactionModel.H @@ -66,6 +66,9 @@ class SurfaceReactionModel // reference to the owner cloud class CloudType& owner_; + //- The coefficients dictionary + const dictionary coeffDict_; + public: @@ -93,7 +96,8 @@ public: SurfaceReactionModel ( const dictionary& dict, - CloudType& cloud + CloudType& cloud, + const word& type ); @@ -116,15 +120,19 @@ public: //- Return the owner cloud object const CloudType& owner() const; - //- Return the dictionary + //- Return the cloud dictionary const dictionary& dict() const; + //- Return the coefficients dictionary + const dictionary& coeffDict() const; + // Member Functions //- Flag to indicate whether model activates devolatisation model virtual bool active() const = 0; + //- Update surface reactions virtual void calculate ( const scalar dt, diff --git a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.C b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.C index 5f352cfc98..f2b4fc9299 100644 --- a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.C +++ b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.C @@ -32,10 +32,12 @@ template Foam::HeatTransferModel::HeatTransferModel ( const dictionary& dict, - CloudType& owner + CloudType& owner, + const word& type ) : dict_(dict), - owner_(owner) + owner_(owner), + coeffDict_(dict.subDict(type + "Coeffs")) {} @@ -62,6 +64,13 @@ const Foam::dictionary& Foam::HeatTransferModel::dict() const } +template +const Foam::dictionary& Foam::HeatTransferModel::coeffDict() const +{ + return coeffDict_; +} + + template Foam::scalar Foam::HeatTransferModel::h ( diff --git a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H index e1ae0b7383..ee76337418 100644 --- a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H +++ b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H @@ -63,6 +63,9 @@ class HeatTransferModel //- Reference to the owner cloud class CloudType& owner_; + //- The coefficents dictionary + const dictionary coeffDict_; + public: @@ -89,7 +92,8 @@ public: HeatTransferModel ( const dictionary& dict, - CloudType& owner + CloudType& owner, + const word& type ); @@ -109,9 +113,12 @@ public: // Access - //- Return the dictionary + //- Return the cloud dictionary const dictionary& dict() const; + //- Return the coefficients dictionary + const dictionary& coeffDict() const; + //- Return the owner cloud object const CloudType& owner() const; diff --git a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/NoHeatTransfer/NoHeatTransfer.C b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/NoHeatTransfer/NoHeatTransfer.C index 4edf1d50ba..0d2d424863 100644 --- a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/NoHeatTransfer/NoHeatTransfer.C +++ b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/NoHeatTransfer/NoHeatTransfer.C @@ -35,7 +35,7 @@ Foam::NoHeatTransfer::NoHeatTransfer CloudType& cloud ) : - HeatTransferModel(dict, cloud) + HeatTransferModel(dict, cloud, typeName) {} diff --git a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/NoHeatTransfer/NoHeatTransfer.H b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/NoHeatTransfer/NoHeatTransfer.H index b3076d74d5..95206b3865 100644 --- a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/NoHeatTransfer/NoHeatTransfer.H +++ b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/NoHeatTransfer/NoHeatTransfer.H @@ -72,14 +72,17 @@ public: // Member Functions + //- Flag to indicate whether model activates heat transfer model bool active() const; + //- Nusselt number scalar Nu ( const scalar, const scalar ) const; + //- Prandtl number scalar Pr() const; }; diff --git a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/RanzMarshall/RanzMarshall.C b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/RanzMarshall/RanzMarshall.C index 223f509d39..b568517b1c 100644 --- a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/RanzMarshall/RanzMarshall.C +++ b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/RanzMarshall/RanzMarshall.C @@ -37,9 +37,8 @@ Foam::RanzMarshall::RanzMarshall CloudType& cloud ) : - HeatTransferModel(dict, cloud), - coeffDict_(dict.subDict(typeName + "Coeffs")), - Pr_(dimensionedScalar(coeffDict_.lookup("Pr")).value()) + HeatTransferModel(dict, cloud, typeName), + Pr_(dimensionedScalar(this->coeffDict().lookup("Pr")).value()) {} diff --git a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/RanzMarshall/RanzMarshall.H b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/RanzMarshall/RanzMarshall.H index 13c79acc91..223bfc186f 100644 --- a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/RanzMarshall/RanzMarshall.H +++ b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/RanzMarshall/RanzMarshall.H @@ -51,9 +51,6 @@ class RanzMarshall // Private data - // Coefficients dictionary - dictionary coeffDict_; - // Prandtl number const scalar Pr_; @@ -81,14 +78,17 @@ public: // Member Functions + //- Flag to indicate whether model activates heat transfer model bool active() const; + //- Nusselt number scalar Nu ( const scalar Re, const scalar Pr ) const; + //- Prandtl number scalar Pr() const; };