diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H index 5f1093b36d..98febeb510 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H @@ -124,7 +124,6 @@ public: const scalar Cp0, const scalar epsilon0, const scalar f0, - const scalar Pr, const scalar pMin, const Switch& constantVolume, const scalar TDevol diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H index 0b062a6426..844766abd0 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H @@ -100,7 +100,6 @@ constantProperties const scalar Cp0, const scalar epsilon0, const scalar f0, - const scalar Pr, const scalar pMin, const Switch& constantVolume, const scalar TDevol @@ -120,7 +119,6 @@ constantProperties Cp0, epsilon0, f0, - Pr, pMin, constantVolume ), diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H index 2edffd92be..2abf01ad16 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H @@ -113,7 +113,6 @@ public: const scalar Cp0, const scalar epsilon0, const scalar f0, - const scalar Pr, const scalar pMin, const Switch& constantVolume ); diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H index fd5700f05b..c78e89cb45 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H @@ -85,7 +85,6 @@ inline Foam::ReactingParcel::constantProperties::constantProperties const scalar Cp0, const scalar epsilon0, const scalar f0, - const scalar Pr, const scalar pMin, const Switch& constantVolume ) @@ -103,8 +102,7 @@ inline Foam::ReactingParcel::constantProperties::constantProperties TMax, Cp0, epsilon0, - f0, - Pr + f0 ), pMin_(pMin), constantVolume_(constantVolume) diff --git a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.C b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.C index 5c1dd3566a..74ece70250 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.C +++ b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.C @@ -151,12 +151,10 @@ void Foam::ThermoParcel::calcSurfaceValues tetIndices tetIs = this->currentTetIndices(); mus = td.muInterp().interpolate(this->position(), tetIs)/TRatio; + kappas = td.kappaInterp().interpolate(this->position(), tetIs)/TRatio; - Pr = td.cloud().constProps().Pr(); + Pr = Cpc_*mus/kappas; Pr = max(ROOTVSMALL, Pr); - - kappas = Cpc_*mus/Pr; - kappas = max(ROOTVSMALL, kappas); } diff --git a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H index bf02ee1183..f5afc1506a 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H @@ -94,9 +94,6 @@ public: //- Particle scattering factor [] (radiation) scalar f0_; - //- Default carrier Prandtl number [] - scalar Pr_; - public: @@ -129,8 +126,7 @@ public: const scalar TMax, const scalar Cp0, const scalar epsilon0, - const scalar f0, - const scalar Pr + const scalar f0 ); @@ -161,9 +157,6 @@ public: //- Return const access to the particle scattering factor [] // Active for radiation only inline scalar f0() const; - - //- Return const access to the default carrier Prandtl number [] - inline scalar Pr() const; }; @@ -180,6 +173,10 @@ public: // Cp not stored on carrier thermo, but returned as tmp<...> const volScalarField Cp_; + //- Local copy of carrier thermal conductivity field + // kappa not stored on carrier thermo, but returned as tmp<...> + const volScalarField kappa_; + // Interpolators for continuous phase fields @@ -189,11 +186,13 @@ public: //- Specific heat capacity field interpolator autoPtr > CpInterp_; + //- Thermal conductivity field interpolator + autoPtr > kappaInterp_; + //- Radiation field interpolator autoPtr > GInterp_; - public: typedef typename ParcelType::template TrackingData::trackPart @@ -215,6 +214,9 @@ public: //- Return access to the locally stored carrier Cp field inline const volScalarField& Cp() const; + //- Return access to the locally stored carrier kappa field + inline const volScalarField& kappa() const; + //- Return const access to the interpolator for continuous // phase temperature field inline const interpolation& TInterp() const; @@ -223,6 +225,10 @@ public: // phase specific heat capacity field inline const interpolation& CpInterp() const; + //- Return const access to the interpolator for continuous + // phase thermal conductivity field + inline const interpolation& kappaInterp() const; + //- Return const access to the interpolator for continuous // radiation field inline const interpolation& GInterp() const; diff --git a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H index 73456a5519..05e9e68c17 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H +++ b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H @@ -34,8 +34,7 @@ inline Foam::ThermoParcel::constantProperties::constantProperties() TMax_(VGREAT), Cp0_(0.0), epsilon0_(0.0), - f0_(0.0), - Pr_(0.0) + f0_(0.0) {} @@ -51,8 +50,7 @@ inline Foam::ThermoParcel::constantProperties::constantProperties TMax_(cp.TMax_), Cp0_(cp.Cp0_), epsilon0_(cp.epsilon0_), - f0_(cp.f0_), - Pr_(cp.Pr_) + f0_(cp.f0_) {} @@ -69,8 +67,7 @@ inline Foam::ThermoParcel::constantProperties::constantProperties TMax_(5000), Cp0_(0.0), epsilon0_(0.0), - f0_(0.0), - Pr_(0.0) + f0_(0.0) { if (readFields) { @@ -87,7 +84,6 @@ inline Foam::ThermoParcel::constantProperties::constantProperties this->dict().lookup("Cp0") >> Cp0_; this->dict().lookup("epsilon0") >> epsilon0_; this->dict().lookup("f0") >> f0_; - this->dict().lookup("Pr") >> Pr_; } } @@ -106,8 +102,7 @@ inline Foam::ThermoParcel::constantProperties::constantProperties const scalar TMax, const scalar Cp0, const scalar epsilon0, - const scalar f0, - const scalar Pr + const scalar f0 ) : ParcelType::constantProperties @@ -124,8 +119,7 @@ inline Foam::ThermoParcel::constantProperties::constantProperties TMax_(TMax), Cp0_(Cp0), epsilon0_(epsilon0), - f0_(f0), - Pr_(Pr) + f0_(f0) {} @@ -248,14 +242,6 @@ Foam::ThermoParcel::constantProperties::f0() const } -template -inline Foam::scalar -Foam::ThermoParcel::constantProperties::Pr() const -{ - return Pr_; -} - - // * * * * * * * * * * ThermoParcel Member Functions * * * * * * * * * * * * // template diff --git a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelTrackingDataI.H b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelTrackingDataI.H index 34c30dd356..5b0c42ed87 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelTrackingDataI.H +++ b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelTrackingDataI.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -33,6 +33,7 @@ inline Foam::ThermoParcel::TrackingData::TrackingData : ParcelType::template TrackingData(cloud, part), Cp_(cloud.thermo().thermo().Cp()), + kappa_(cloud.thermo().thermo().kappa()), TInterp_ ( interpolation::New @@ -49,6 +50,14 @@ inline Foam::ThermoParcel::TrackingData::TrackingData Cp_ ) ), + kappaInterp_ + ( + interpolation::New + ( + cloud.solution().interpolationSchemes(), + kappa_ + ) + ), GInterp_(NULL) { if (cloud.radiation()) @@ -75,6 +84,15 @@ Foam::ThermoParcel::TrackingData::Cp() const } +template +template +inline const Foam::volScalarField& +Foam::ThermoParcel::TrackingData::kappa() const +{ + return kappa_; +} + + template template inline const Foam::interpolation& @@ -93,6 +111,15 @@ Foam::ThermoParcel::TrackingData::CpInterp() const } +template +template +inline const Foam::interpolation& +Foam::ThermoParcel::TrackingData::kappaInterp() const +{ + return kappaInterp_(); +} + + template template inline const Foam::interpolation&