From 95b15ba21c200149fa6ff2e4d2da64996b220ff6 Mon Sep 17 00:00:00 2001 From: andy <a.heather@opencfd.co.uk> 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 ec9aee03e18..6c8959f96df 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 1caab64203d..4dbf3b67eee 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 31bfdc4ad0b..8771600330f 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 e9fcc2a445d..a942ebbfb17 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 f704a5daba6..4f2bf2cc1d4 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 ae8385a2045..40d7de63412 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 935bd07c48b..5e01ed74620 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 7a928916707..0d4873b8842 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<CloudType>::Rebound CloudType& cloud ) : - WallInteractionModel<CloudType>(dict, cloud) + WallInteractionModel<CloudType>(dict, cloud, typeName), + UFactor_(readScalar(this->coeffDict().lookup("UFactor"))) {} @@ -71,9 +70,9 @@ void Foam::Rebound<CloudType>::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 a92ee9008dd..603f910a9ca 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<CloudType> { + // 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 282fc0b3233..349aa270199 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<CloudType>::StandardWallInteraction CloudType& cloud ) : - WallInteractionModel<CloudType>(dict, cloud), - coeffDict_(dict.subDict(typeName + "Coeffs")), - e_(dimensionedScalar(coeffDict_.lookup("e")).value()), - mu_(dimensionedScalar(coeffDict_.lookup("mu")).value()) + WallInteractionModel<CloudType>(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 fedd5f5aa90..977371370f5 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 8125f12d7f6..af366c3c6bf 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<class CloudType> Foam::WallInteractionModel<CloudType>::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<CloudType>::dict() const } +template<class CloudType> +const Foam::dictionary& +Foam::WallInteractionModel<CloudType>::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 0c6c5a851ac..014a6e835fc 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 da638a66c4f..1cde137d9f7 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<class CloudType> Foam::CompositionModel<CloudType>::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<CloudType>::dict() const } +template<class CloudType> +const Foam::dictionary& Foam::CompositionModel<CloudType>::coeffDict() const +{ + return coeffDict_; +} + + template<class CloudType> const Foam::hCombustionThermo& Foam::CompositionModel<CloudType>::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 470549c9164..ada5d2e380e 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 564b7cf5a6e..39bc2bf76b2 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<CloudType>::SingleMixtureFraction CloudType& owner ) : - CompositionModel<CloudType>(dict, owner), - coeffDict_(dict.subDict(typeName + "Coeffs")), + CompositionModel<CloudType>(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<CloudType>::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<CloudType>::gasLocalId(const word& gasName) const return i; } } + WarningIn ( "Foam::label SingleMixtureFraction<CloudType>::" "gasLocalId(const word& gasName) const" )<< "Gas name " << gasName << " not found in gasNames_" << endl; + return -1; } @@ -276,12 +278,14 @@ Foam::SingleMixtureFraction<CloudType>::gasGlobalId(const word& gasName) const return gasGlobalIds_[i]; } } + WarningIn ( "Foam::label SingleMixtureFraction<CloudType>::" "gasGlobalId(const word& gasName) const" )<< "Gas name " << gasName << " not found in gasNames_" << endl; + return -1; } @@ -329,12 +333,14 @@ Foam::SingleMixtureFraction<CloudType>::liquidLocalId(const word& liquidName) co return i; } } + WarningIn ( "Foam::label SingleMixtureFraction<CloudType>::" "liquidLocalId(const word& liquidName) const" )<< "Liquid name " << liquidName << " not found in liquidNames_" << endl; + return -1; } @@ -350,12 +356,14 @@ Foam::SingleMixtureFraction<CloudType>::liquidGlobalId(const word& liquidName) c return liquidGlobalIds_[i]; } } + WarningIn ( "Foam::label SingleMixtureFraction<CloudType>::" "liquidGlobalId(const word& liquidName) const" )<< "Liquid name " << liquidName << " not found in liquidNames_" << endl; + return -1; } @@ -403,12 +411,14 @@ Foam::SingleMixtureFraction<CloudType>::solidLocalId(const word& solidName) cons return i; } } + WarningIn ( "Foam::label SingleMixtureFraction<CloudType>::" "SolididLocalId(const word& solidName) const" )<< "Solid name " << solidName << " not found in solidNames_" << endl; + return -1; } @@ -424,12 +434,14 @@ Foam::SingleMixtureFraction<CloudType>::solidGlobalId(const word& solidName) con return solidGlobalIds_[i]; } } + WarningIn ( "Foam::label SingleMixtureFraction<CloudType>::" "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 1269c983069..070e41e727f 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 b24dfd05005..3d29eab791c 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<CloudType>::ConstantRateDevolatilisation CloudType& owner ) : - MassTransferModel<CloudType>(dict, owner), - coeffDict_(dict.subDict(typeName + "Coeffs")), - A0_(dimensionedScalar(coeffDict_.lookup("A0")).value()), + MassTransferModel<CloudType>(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 1f425868ad7..a2490e64727 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 00c5be1c460..8e0fb5e0a07 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<class CloudType> Foam::MassTransferModel<CloudType>::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<CloudType>::dict() const } +template<class CloudType> +const Foam::dictionary& Foam::MassTransferModel<CloudType>::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 cb5164782a1..81967a640f5 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 3e7c5a796b2..f490b0d6cfa 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<CloudType>::NoMassTransfer CloudType& cloud ) : - MassTransferModel<CloudType>(dict, cloud) + MassTransferModel<CloudType>(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 78a538f57b1..18be1809e47 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 3da409fa233..b6d2581a718 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<CloudType>::SingleKineticRateDevolatilis CloudType& owner ) : - MassTransferModel<CloudType>(dict, owner), - coeffDict_(dict.subDict(typeName + "Coeffs")), - A1_(dimensionedScalar(coeffDict_.lookup("A1")).value()), - E_(dimensionedScalar(coeffDict_.lookup("E")).value()), + MassTransferModel<CloudType>(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 39b8bdf5c33..fea51bffae4 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 388e07a13ec..a4bc12aa40b 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<CloudType>::NoSurfaceReaction CloudType& owner ) : - SurfaceReactionModel<CloudType>(dict, owner) + SurfaceReactionModel<CloudType>(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 36056ac1830..f07228bc591 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 5004c4436db..616dccd20bb 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<class CloudType> Foam::SurfaceReactionModel<CloudType>::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<CloudType>::dict() const } +template<class CloudType> +const Foam::dictionary& Foam::SurfaceReactionModel<CloudType>::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 c6ab5c12253..61c870d44ec 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 5f352cfc98a..f2b4fc92990 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<class CloudType> Foam::HeatTransferModel<CloudType>::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<CloudType>::dict() const } +template<class CloudType> +const Foam::dictionary& Foam::HeatTransferModel<CloudType>::coeffDict() const +{ + return coeffDict_; +} + + template<class CloudType> Foam::scalar Foam::HeatTransferModel<CloudType>::h ( diff --git a/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H b/src/lagrangian/intermediate/submodels/Thermodynamic/HeatTransferModel/HeatTransferModel/HeatTransferModel.H index e1ae0b7383c..ee763374188 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 4edf1d50ba6..0d2d4248632 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<CloudType>::NoHeatTransfer CloudType& cloud ) : - HeatTransferModel<CloudType>(dict, cloud) + HeatTransferModel<CloudType>(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 b3076d74d54..95206b38658 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 223f509d39e..b568517b1c5 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<CloudType>::RanzMarshall CloudType& cloud ) : - HeatTransferModel<CloudType>(dict, cloud), - coeffDict_(dict.subDict(typeName + "Coeffs")), - Pr_(dimensionedScalar(coeffDict_.lookup("Pr")).value()) + HeatTransferModel<CloudType>(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 13c79acc917..223bfc186fa 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; }; -- GitLab