From bb048ae1716a12135f0545fb3a79205ae6f5ed4b Mon Sep 17 00:00:00 2001 From: andy <andy> Date: Mon, 12 Aug 2013 15:51:28 +0100 Subject: [PATCH] ENH: lagrangian - renamed Tvap->TDevol in constant properties and moved to reacting multiphase variant --- .../ReactingMultiphaseParcel.C | 2 +- .../ReactingMultiphaseParcel.H | 26 +++++++++ .../ReactingMultiphaseParcelI.H | 56 +++++++++++++++++++ .../Templates/ReactingParcel/ReactingParcel.H | 9 +-- .../ReactingParcel/ReactingParcelI.H | 24 ++------ 5 files changed, 89 insertions(+), 28 deletions(-) diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C index aab07b4d7dd..9b4beff0eee 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C @@ -511,7 +511,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calcDevolatilisation if ( !td.cloud().devolatilisation().active() - || T < td.cloud().constProps().Tvap() + || T < td.cloud().constProps().TDevol() || canCombust == -1 ) { diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H index ff13d240b9a..5f1093b36d5 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H @@ -81,6 +81,9 @@ public: { // Private data + //- Devolatilisation activation temperature [K] + scalar TDevol_; + //- Latent heat of devolatilisation [J/kg] scalar LDevol_; @@ -106,9 +109,32 @@ public: const bool readFields = true ); + //- Construct from components + constantProperties + ( + const label parcelTypeId, + const scalar rhoMin, + const scalar rho0, + const scalar minParticleMass, + const scalar youngsModulus, + const scalar poissonsRatio, + const scalar T0, + const scalar TMin, + const scalar TMax, + const scalar Cp0, + const scalar epsilon0, + const scalar f0, + const scalar Pr, + const scalar pMin, + const Switch& constantVolume, + const scalar TDevol + ); // Access + //- Return const access to the devolatilisation temperature + inline scalar TDevol() const; + //- Return const access to the latent heat of devolatilisation inline scalar LDevol() const; diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H index 4a4a97eddfa..0b062a64262 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H @@ -30,6 +30,7 @@ inline Foam::ReactingMultiphaseParcel<ParcelType>::constantProperties:: constantProperties() : ParcelType::constantProperties(), + TDevol_(0.0), LDevol_(0.0), hRetentionCoeff_(0.0) {} @@ -43,6 +44,7 @@ constantProperties ) : ParcelType::constantProperties(cp), + TDevol_(cp.TDevol_), LDevol_(cp.LDevol_), hRetentionCoeff_(cp.hRetentionCoeff_) {} @@ -57,11 +59,13 @@ constantProperties ) : ParcelType::constantProperties(parentDict, readFields), + TDevol_(0.0), LDevol_(0.0), hRetentionCoeff_(0.0) { if (readFields) { + this->dict().lookup("TDevol") >> TDevol_; this->dict().lookup("LDevol") >> LDevol_; this->dict().lookup("hRetentionCoeff") >> hRetentionCoeff_; @@ -80,6 +84,50 @@ constantProperties } +template<class ParcelType> +inline Foam::ReactingMultiphaseParcel<ParcelType>::constantProperties:: +constantProperties +( + const label parcelTypeId, + const scalar rhoMin, + const scalar rho0, + const scalar minParticleMass, + const scalar youngsModulus, + const scalar poissonsRatio, + const scalar T0, + const scalar TMin, + const scalar TMax, + const scalar Cp0, + const scalar epsilon0, + const scalar f0, + const scalar Pr, + const scalar pMin, + const Switch& constantVolume, + const scalar TDevol +) +: + ParcelType::constantProperties + ( + parcelTypeId, + rhoMin, + rho0, + minParticleMass, + youngsModulus, + poissonsRatio, + T0, + TMin, + TMax, + Cp0, + epsilon0, + f0, + Pr, + pMin, + constantVolume + ), + TDevol_(TDevol) +{} + + template<class ParcelType> inline Foam::ReactingMultiphaseParcel<ParcelType>::ReactingMultiphaseParcel ( @@ -148,6 +196,14 @@ inline Foam::ReactingMultiphaseParcel<ParcelType>::ReactingMultiphaseParcel // * * * * * * * * * constantProperties Member Functions * * * * * * * * * * // +template<class ParcelType> +inline Foam::scalar +Foam::ReactingMultiphaseParcel<ParcelType>::constantProperties::TDevol() const +{ + return TDevol_; +} + + template<class ParcelType> inline Foam::scalar Foam::ReactingMultiphaseParcel<ParcelType>::constantProperties::LDevol() const diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H index 854e2f57301..2edffd92beb 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H @@ -80,9 +80,6 @@ public: //- Constant volume flag - e.g. during mass transfer Switch constantVolume_; - //- Vaporisation temperature [K] - scalar Tvap_; - public: @@ -118,8 +115,7 @@ public: const scalar f0, const scalar Pr, const scalar pMin, - const Switch& constantVolume, - const scalar Tvap + const Switch& constantVolume ); @@ -130,9 +126,6 @@ public: //- Return const access to the constant volume flag inline Switch constantVolume() const; - - //- Return const access to the vaporisation temperature - inline scalar Tvap() const; }; diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H index 1329741c455..fd5700f05b7 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H @@ -31,8 +31,7 @@ Foam::ReactingParcel<ParcelType>::constantProperties::constantProperties() : ParcelType::constantProperties(), pMin_(0.0), - constantVolume_(false), - Tvap_(0.0) + constantVolume_(false) {} @@ -44,8 +43,7 @@ inline Foam::ReactingParcel<ParcelType>::constantProperties::constantProperties : ParcelType::constantProperties(cp), pMin_(cp.pMin_), - constantVolume_(cp.constantVolume_), - Tvap_(cp.Tvap_) + constantVolume_(cp.constantVolume_) {} @@ -58,8 +56,7 @@ inline Foam::ReactingParcel<ParcelType>::constantProperties::constantProperties : ParcelType::constantProperties(parentDict, readFields), pMin_(1000.0), - constantVolume_(false), - Tvap_(0.0) + constantVolume_(false) { if (readFields) { @@ -69,7 +66,6 @@ inline Foam::ReactingParcel<ParcelType>::constantProperties::constantProperties } this->dict().lookup("constantVolume") >> constantVolume_; - this->dict().lookup("Tvap") >> Tvap_; } } @@ -91,8 +87,7 @@ inline Foam::ReactingParcel<ParcelType>::constantProperties::constantProperties const scalar f0, const scalar Pr, const scalar pMin, - const Switch& constantVolume, - const scalar Tvap + const Switch& constantVolume ) : ParcelType::constantProperties @@ -112,8 +107,7 @@ inline Foam::ReactingParcel<ParcelType>::constantProperties::constantProperties Pr ), pMin_(pMin), - constantVolume_(constantVolume), - Tvap_(Tvap) + constantVolume_(constantVolume) {} @@ -198,14 +192,6 @@ Foam::ReactingParcel<ParcelType>::constantProperties::constantVolume() const } -template<class ParcelType> -inline Foam::scalar -Foam::ReactingParcel<ParcelType>::constantProperties::Tvap() const -{ - return Tvap_; -} - - // * * * * * * * * * * ThermoParcel Member Functions * * * * * * * * * * * * // template<class ParcelType> -- GitLab