Commit 60a9a6db authored by andy's avatar andy
Browse files

ENH: ThermoParcel - updated thermal conductivity at particle positon - mantis #958

parent 29f483b5
......@@ -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
......
......@@ -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
),
......
......@@ -113,7 +113,6 @@ public:
const scalar Cp0,
const scalar epsilon0,
const scalar f0,
const scalar Pr,
const scalar pMin,
const Switch& constantVolume
);
......
......@@ -85,7 +85,6 @@ inline Foam::ReactingParcel<ParcelType>::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<ParcelType>::constantProperties::constantProperties
TMax,
Cp0,
epsilon0,
f0,
Pr
f0
),
pMin_(pMin),
constantVolume_(constantVolume)
......
......@@ -151,12 +151,10 @@ void Foam::ThermoParcel<ParcelType>::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);
}
......
......@@ -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<interpolation<scalar> > CpInterp_;
//- Thermal conductivity field interpolator
autoPtr<interpolation<scalar> > kappaInterp_;
//- Radiation field interpolator
autoPtr<interpolation<scalar> > GInterp_;
public:
typedef typename ParcelType::template TrackingData<CloudType>::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<scalar>& TInterp() const;
......@@ -223,6 +225,10 @@ public:
// phase specific heat capacity field
inline const interpolation<scalar>& CpInterp() const;
//- Return const access to the interpolator for continuous
// phase thermal conductivity field
inline const interpolation<scalar>& kappaInterp() const;
//- Return const access to the interpolator for continuous
// radiation field
inline const interpolation<scalar>& GInterp() const;
......
......@@ -34,8 +34,7 @@ inline Foam::ThermoParcel<ParcelType>::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<ParcelType>::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<ParcelType>::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<ParcelType>::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<ParcelType>::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<ParcelType>::constantProperties::constantProperties
TMax_(TMax),
Cp0_(Cp0),
epsilon0_(epsilon0),
f0_(f0),
Pr_(Pr)
f0_(f0)
{}
......@@ -248,14 +242,6 @@ Foam::ThermoParcel<ParcelType>::constantProperties::f0() const
}
template<class ParcelType>
inline Foam::scalar
Foam::ThermoParcel<ParcelType>::constantProperties::Pr() const
{
return Pr_;
}
// * * * * * * * * * * ThermoParcel Member Functions * * * * * * * * * * * * //
template<class ParcelType>
......
......@@ -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<ParcelType>::TrackingData<CloudType>::TrackingData
:
ParcelType::template TrackingData<CloudType>(cloud, part),
Cp_(cloud.thermo().thermo().Cp()),
kappa_(cloud.thermo().thermo().kappa()),
TInterp_
(
interpolation<scalar>::New
......@@ -49,6 +50,14 @@ inline Foam::ThermoParcel<ParcelType>::TrackingData<CloudType>::TrackingData
Cp_
)
),
kappaInterp_
(
interpolation<scalar>::New
(
cloud.solution().interpolationSchemes(),
kappa_
)
),
GInterp_(NULL)
{
if (cloud.radiation())
......@@ -75,6 +84,15 @@ Foam::ThermoParcel<ParcelType>::TrackingData<CloudType>::Cp() const
}
template<class ParcelType>
template<class CloudType>
inline const Foam::volScalarField&
Foam::ThermoParcel<ParcelType>::TrackingData<CloudType>::kappa() const
{
return kappa_;
}
template<class ParcelType>
template<class CloudType>
inline const Foam::interpolation<Foam::scalar>&
......@@ -93,6 +111,15 @@ Foam::ThermoParcel<ParcelType>::TrackingData<CloudType>::CpInterp() const
}
template<class ParcelType>
template<class CloudType>
inline const Foam::interpolation<Foam::scalar>&
Foam::ThermoParcel<ParcelType>::TrackingData<CloudType>::kappaInterp() const
{
return kappaInterp_();
}
template<class ParcelType>
template<class CloudType>
inline const Foam::interpolation<Foam::scalar>&
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment