diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C index aab07b4d7ddddcc284e4a9edc1b7cb2d3cf15ea5..9b4beff0eeeb1929458ad0d1d3a0a961d0e3dc91 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 ff13d240b9aacee8c20d35d96b59d70f6769f1ab..5f1093b36d5a6216bfc16e2578606fa94906975e 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 4a4a97eddfacaaa7333ffe1f79fdfb1daf099576..0b062a642622ac8fc734a62523712e0d0f12e31e 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 854e2f573010a998c485421f117c04b3fa27a12a..2edffd92beb77278c58e902a0f5f5cbe64e6d9f4 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 1329741c455680a5d9db514d40bae47db5171468..fd5700f05b7a2951732a041f6b9d3b1be9d045af 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>