thermophysicalModels: Added laminar thermal diffusivity for energy, alphahe

Needed for laminar transport of he (h or e)

Resolves bug-report https://bugs.openfoam.org/view.php?id=3025
This commit is contained in:
Henry Weller
2018-08-05 11:29:28 +01:00
parent 5c6e283b35
commit 1a0c91b3ba
15 changed files with 292 additions and 141 deletions

View File

@ -350,6 +350,25 @@ Foam::tmp<Foam::scalarField> Foam::twoPhaseMixtureThermo::kappa
} }
Foam::tmp<Foam::volScalarField> Foam::twoPhaseMixtureThermo::alphahe() const
{
return
alpha1()*thermo1_->alphahe()
+ alpha2()*thermo2_->alphahe();
}
Foam::tmp<Foam::scalarField> Foam::twoPhaseMixtureThermo::alphahe
(
const label patchi
) const
{
return
alpha1().boundaryField()[patchi]*thermo1_->alphahe(patchi)
+ alpha2().boundaryField()[patchi]*thermo2_->alphahe(patchi);
}
Foam::tmp<Foam::volScalarField> Foam::twoPhaseMixtureThermo::kappaEff Foam::tmp<Foam::volScalarField> Foam::twoPhaseMixtureThermo::kappaEff
( (
const volScalarField& alphat const volScalarField& alphat

View File

@ -266,6 +266,12 @@ public:
const label patchi const label patchi
) const; ) const;
//- Thermal diffusivity for energy of mixture [kg/m/s]
virtual tmp<volScalarField> alphahe() const;
//- Thermal diffusivity for energy of mixture for patch [kg/m/s]
virtual tmp<scalarField> alphahe(const label patchi) const;
//- Effective thermal diffusivity of mixture [J/m/s/K] //- Effective thermal diffusivity of mixture [J/m/s/K]
virtual tmp<volScalarField> kappaEff virtual tmp<volScalarField> kappaEff
( (

View File

@ -603,6 +603,45 @@ Foam::tmp<Foam::scalarField> Foam::multiphaseMixtureThermo::kappa
} }
Foam::tmp<Foam::volScalarField> Foam::multiphaseMixtureThermo::alphahe() const
{
PtrDictionary<phaseModel>::const_iterator phasei = phases_.begin();
tmp<volScalarField> talphaEff(phasei()*phasei().thermo().alphahe());
for (++phasei; phasei != phases_.end(); ++phasei)
{
talphaEff.ref() += phasei()*phasei().thermo().alphahe();
}
return talphaEff;
}
Foam::tmp<Foam::scalarField> Foam::multiphaseMixtureThermo::alphahe
(
const label patchi
) const
{
PtrDictionary<phaseModel>::const_iterator phasei = phases_.begin();
tmp<scalarField> talphaEff
(
phasei().boundaryField()[patchi]
*phasei().thermo().alphahe(patchi)
);
for (++phasei; phasei != phases_.end(); ++phasei)
{
talphaEff.ref() +=
phasei().boundaryField()[patchi]
*phasei().thermo().alphahe(patchi);
}
return talphaEff;
}
Foam::tmp<Foam::volScalarField> Foam::multiphaseMixtureThermo::kappaEff Foam::tmp<Foam::volScalarField> Foam::multiphaseMixtureThermo::kappaEff
( (
const volScalarField& alphat const volScalarField& alphat

View File

@ -397,6 +397,12 @@ public:
const label patchi const label patchi
) const; ) const;
//- Thermal diffusivity for energy of mixture [kg/m/s]
virtual tmp<volScalarField> alphahe() const;
//- Thermal diffusivity for energy of mixture for patch [kg/m/s]
virtual tmp<scalarField> alphahe(const label patchi) const;
//- Effective thermal diffusivity of mixture [J/m/s/K] //- Effective thermal diffusivity of mixture [J/m/s/K]
virtual tmp<volScalarField> kappaEff virtual tmp<volScalarField> kappaEff
( (

View File

@ -201,15 +201,6 @@ public:
virtual void divU(tmp<volScalarField> divU); virtual void divU(tmp<volScalarField> divU);
// Transport (prevents compiler warnings)
//- Return the effective thermal conductivity
using BasePhaseModel::kappaEff;
//- Return the effective thermal conductivity for enthalpy
using BasePhaseModel::alphaEff;
// Turbulence // Turbulence
//- Return the turbulent dynamic viscosity //- Return the turbulent dynamic viscosity
@ -224,17 +215,23 @@ public:
//- Return the effective kinematic viscosity //- Return the effective kinematic viscosity
virtual tmp<volScalarField> nuEff() const; virtual tmp<volScalarField> nuEff() const;
//- Effective thermal turbulent diffusivity for temperature
// of mixture for patch [J/m/s/K]
using BasePhaseModel::kappaEff;
//- Return the effective thermal conductivity //- Return the effective thermal conductivity
virtual tmp<volScalarField> kappaEff() const; virtual tmp<volScalarField> kappaEff() const;
//- Return the effective thermal conductivity on a patch //- Return the effective thermal conductivity on a patch
virtual tmp<scalarField> kappaEff(const label patchi) const; virtual tmp<scalarField> kappaEff(const label patchi) const;
//- Return the effective thermal diffusivity for enthalpy //- Effective thermal turbulent diffusivity of mixture [kg/m/s]
using BasePhaseModel::alphaEff;
//- Return the effective thermal diffusivity
virtual tmp<volScalarField> alphaEff() const; virtual tmp<volScalarField> alphaEff() const;
//- Return the effective thermal conductivity for enthalpy on a //- Return the effective thermal conductivity on a patch
// patch
virtual tmp<scalarField> alphaEff(const label patchi) const; virtual tmp<scalarField> alphaEff(const label patchi) const;
//- Return the turbulent kinetic energy //- Return the turbulent kinetic energy

View File

@ -171,15 +171,6 @@ public:
virtual void divU(tmp<volScalarField> divU); virtual void divU(tmp<volScalarField> divU);
// Transport (prevents compiler warnings)
//- Return the effective thermal conductivity
using BasePhaseModel::kappaEff;
//- Return the effective thermal conductivity for enthalpy
using BasePhaseModel::alphaEff;
// Turbulence // Turbulence
//- Return the turbulent dynamic viscosity //- Return the turbulent dynamic viscosity
@ -194,17 +185,23 @@ public:
//- Return the effective kinematic viscosity //- Return the effective kinematic viscosity
virtual tmp<volScalarField> nuEff() const; virtual tmp<volScalarField> nuEff() const;
//- Effective thermal turbulent diffusivity for temperature
// of mixture for patch [J/m/s/K]
using BasePhaseModel::kappaEff;
//- Return the effective thermal conductivity //- Return the effective thermal conductivity
virtual tmp<volScalarField> kappaEff() const; virtual tmp<volScalarField> kappaEff() const;
//- Return the effective thermal conductivity on a patch //- Return the effective thermal conductivity on a patch
virtual tmp<scalarField> kappaEff(const label patchi) const; virtual tmp<scalarField> kappaEff(const label patchi) const;
//- Return the effective thermal diffusivity for enthalpy //- Effective thermal turbulent diffusivity of mixture [kg/m/s]
using BasePhaseModel::alphaEff;
//- Return the effective thermal diffusivity
virtual tmp<volScalarField> alphaEff() const; virtual tmp<volScalarField> alphaEff() const;
//- Return the effective thermal conductivity for enthalpy on a //- Return the effective thermal conductivity on a patch
// patch
virtual tmp<scalarField> alphaEff(const label patchi) const; virtual tmp<scalarField> alphaEff(const label patchi) const;
//- Return the turbulent kinetic energy //- Return the turbulent kinetic energy

View File

@ -153,6 +153,25 @@ Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::kappa
} }
template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::volScalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::alphahe() const
{
return thermo_->alphahe();
}
template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::scalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::alphahe
(
const label patchi
) const
{
return thermo_->alphahe(patchi);
}
template<class BasePhaseModel, class ThermoType> template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::volScalarField> Foam::tmp<Foam::volScalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::kappaEff Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::kappaEff

View File

@ -112,56 +112,63 @@ public:
//- Return the laminar kinematic viscosity on a patch //- Return the laminar kinematic viscosity on a patch
virtual tmp<scalarField> nu(const label patchi) const; virtual tmp<scalarField> nu(const label patchi) const;
//- Return the laminar thermal conductivity //- Thermal diffusivity for enthalpy of mixture [kg/m/s]
virtual tmp<volScalarField> alpha() const;
//- Thermal diffusivity for enthalpy of mixture for patch [kg/m/s]
virtual tmp<scalarField> alpha(const label patchi) const;
//- Thermal diffusivity for temperature of mixture [J/m/s/K]
virtual tmp<volScalarField> kappa() const; virtual tmp<volScalarField> kappa() const;
//- Return the laminar thermal conductivity on a patch //- Thermal diffusivity for temperature of mixture
// for patch [J/m/s/K]
virtual tmp<scalarField> kappa(const label patchi) const; virtual tmp<scalarField> kappa(const label patchi) const;
//- Return the laminar thermal conductivity, given the turbulent //- Thermal diffusivity for energy of mixture [kg/m/s]
// thermal diffusivity virtual tmp<volScalarField> alphahe() const;
//- Thermal diffusivity for energy of mixture for patch [kg/m/s]
virtual tmp<scalarField> alphahe(const label patchi) const;
// Turbulence
//- Effective thermal turbulent diffusivity for temperature
// of mixture for patch [J/m/s/K]
using BasePhaseModel::kappaEff;
//- Effective thermal turbulent diffusivity for temperature
// of mixture [J/m/s/K]
virtual tmp<volScalarField> kappaEff virtual tmp<volScalarField> kappaEff
( (
const volScalarField& alphat const volScalarField& alphat
) const; ) const;
//- Return the laminar thermal conductivity on a patch, given the //- Effective thermal turbulent diffusivity for temperature
// turbulent thermal diffusivity // of mixture for patch [J/m/s/K]
virtual tmp<scalarField> kappaEff virtual tmp<scalarField> kappaEff
( (
const scalarField& alphat, const scalarField& alphat,
const label patchi const label patchi
) const; ) const;
//- Return the thermal diffusivity for enthalpy //- Effective thermal turbulent diffusivity of mixture [kg/m/s]
virtual tmp<volScalarField> alpha() const; using BasePhaseModel::alphaEff;
//- Return the thermal diffusivity for enthalpy on a patch //- Effective thermal turbulent diffusivity of mixture [kg/m/s]
virtual tmp<scalarField> alpha(const label patchi) const;
//- Return the effective thermal diffusivity for enthalpy, given the
// turbulent thermal diffusivity
virtual tmp<volScalarField> alphaEff virtual tmp<volScalarField> alphaEff
( (
const volScalarField& alphat const volScalarField& alphat
) const; ) const;
//- Return the effective thermal diffusivity for enthalpy on a //- Effective thermal turbulent diffusivity of mixture
// patch, given the turbulent thermal diffusivity // for patch [kg/m/s]
virtual tmp<scalarField> alphaEff virtual tmp<scalarField> alphaEff
( (
const scalarField& alphat, const scalarField& alphat,
const label patchi const label patchi
) const; ) const;
// Turbulence (prevents compiler warnings)
//- Return the effective thermal conductivity
using BasePhaseModel::kappaEff;
//- Return the effective thermal conductivity for enthalpy
using BasePhaseModel::alphaEff;
}; };

View File

@ -327,42 +327,48 @@ public:
//- Return the laminar kinematic viscosity on a patch //- Return the laminar kinematic viscosity on a patch
virtual tmp<scalarField> nu(const label patchi) const = 0; virtual tmp<scalarField> nu(const label patchi) const = 0;
//- Return the laminar thermal conductivity //- Thermal diffusivity for enthalpy of mixture [kg/m/s]
virtual tmp<volScalarField> alpha() const = 0;
//- Thermal diffusivity for enthalpy of mixture for patch [kg/m/s]
virtual tmp<scalarField> alpha(const label patchi) const = 0;
//- Thermal diffusivity for temperature of mixture [J/m/s/K]
virtual tmp<volScalarField> kappa() const = 0; virtual tmp<volScalarField> kappa() const = 0;
//- Return the laminar thermal conductivity on a patch //- Thermal diffusivity for temperature of mixture
// for patch [J/m/s/K]
virtual tmp<scalarField> kappa(const label patchi) const = 0; virtual tmp<scalarField> kappa(const label patchi) const = 0;
//- Return the effective thermal conductivity, given the turbulent //- Thermal diffusivity for energy of mixture [kg/m/s]
// thermal diffusivity virtual tmp<volScalarField> alphahe() const = 0;
//- Thermal diffusivity for energy of mixture for patch [kg/m/s]
virtual tmp<scalarField> alphahe(const label patchi) const = 0;
//- Effective thermal turbulent diffusivity for temperature
// of mixture [J/m/s/K]
virtual tmp<volScalarField> kappaEff virtual tmp<volScalarField> kappaEff
( (
const volScalarField& alphat const volScalarField& alphat
) const = 0; ) const = 0;
//- Return the effective thermal conductivity on a patch, given the //- Effective thermal turbulent diffusivity for temperature
// turbulent thermal diffusivity // of mixture for patch [J/m/s/K]
virtual tmp<scalarField> kappaEff virtual tmp<scalarField> kappaEff
( (
const scalarField& alphat, const scalarField& alphat,
const label patchi const label patchi
) const = 0; ) const = 0;
//- Return the laminar thermal diffusivity for enthalpy //- Effective thermal turbulent diffusivity of mixture [kg/m/s]
virtual tmp<volScalarField> alpha() const = 0;
//- Return the laminar thermal diffusivity for enthalpy on a patch
virtual tmp<scalarField> alpha(const label patchi) const = 0;
//- Return the effective thermal diffusivity for enthalpy, given the
// turbulent thermal diffusivity
virtual tmp<volScalarField> alphaEff virtual tmp<volScalarField> alphaEff
( (
const volScalarField& alphat const volScalarField& alphat
) const = 0; ) const = 0;
//- Return the effective thermal diffusivity for enthalpy on a //- Effective thermal turbulent diffusivity of mixture
// patch, given the turbulent thermal diffusivity // for patch [kg/m/s]
virtual tmp<scalarField> alphaEff virtual tmp<scalarField> alphaEff
( (
const scalarField& alphat, const scalarField& alphat,
@ -384,17 +390,19 @@ public:
//- Return the effective kinematic viscosity //- Return the effective kinematic viscosity
virtual tmp<volScalarField> nuEff() const = 0; virtual tmp<volScalarField> nuEff() const = 0;
//- Return the effective thermal conductivity //- Effective thermal turbulent diffusivity for temperature
// of mixture [J/m/s/K]
virtual tmp<volScalarField> kappaEff() const = 0; virtual tmp<volScalarField> kappaEff() const = 0;
//- Return the effective thermal conductivity on a patch //- Effective thermal turbulent diffusivity for temperature
// of mixture for patch [J/m/s/K]
virtual tmp<scalarField> kappaEff(const label patchi) const = 0; virtual tmp<scalarField> kappaEff(const label patchi) const = 0;
//- Return the effective thermal diffusivity for enthalpy //- Effective thermal turbulent diffusivity of mixture [kg/m/s]
virtual tmp<volScalarField> alphaEff() const = 0; virtual tmp<volScalarField> alphaEff() const = 0;
//- Return the effective thermal conductivity for enthalpy on a //- Effective thermal turbulent diffusivity of mixture
// patch // for patch [kg/m/s]
virtual tmp<scalarField> alphaEff(const label patchi) const = 0; virtual tmp<scalarField> alphaEff(const label patchi) const = 0;
//- Return the turbulent kinetic energy //- Return the turbulent kinetic energy

View File

@ -196,19 +196,45 @@ public:
return thermo_->mu(patchi); return thermo_->mu(patchi);
} }
//- Return the thermal conductivity on a patch //- Thermal diffusivity for enthalpy of mixture [kg/m/s]
tmp<volScalarField> alpha() const
{
return thermo_->alpha();
}
//- Thermal diffusivity for enthalpy of mixture for patch [kg/m/s]
tmp<scalarField> alpha(const label patchi) const
{
return thermo_->alpha(patchi);
}
//- Thermal diffusivity for temperature of mixture [J/m/s/K]
tmp<scalarField> kappa(const label patchi) const tmp<scalarField> kappa(const label patchi) const
{ {
return thermo_->kappa(patchi); return thermo_->kappa(patchi);
} }
//- Return the thermal conductivity //- Thermal diffusivity for temperature of mixture
// for patch [J/m/s/K]
tmp<volScalarField> kappa() const tmp<volScalarField> kappa() const
{ {
return thermo_->kappa(); return thermo_->kappa();
} }
//- Return the laminar thermal conductivity //- Thermal diffusivity for energy of mixture [kg/m/s]
tmp<volScalarField> alphahe() const
{
return thermo_->alphahe();
}
//- Thermal diffusivity for energy of mixture for patch [kg/m/s]
tmp<scalarField> alphahe(const label patchi) const
{
return thermo_->alphahe(patchi);
}
//- Effective thermal turbulent diffusivity for temperature
// of mixture [J/m/s/K]
tmp<volScalarField> kappaEff tmp<volScalarField> kappaEff
( (
const volScalarField& alphat const volScalarField& alphat
@ -217,7 +243,8 @@ public:
return thermo_->kappaEff(alphat); return thermo_->kappaEff(alphat);
} }
//- Return the laminar thermal conductivity on a patch //- Effective thermal turbulent diffusivity for temperature
// of mixture for patch [J/m/s/K]
tmp<scalarField> kappaEff tmp<scalarField> kappaEff
( (
const scalarField& alphat, const scalarField& alphat,
@ -227,19 +254,7 @@ public:
return thermo_->kappaEff(alphat, patchi); return thermo_->kappaEff(alphat, patchi);
} }
//- Return the laminar thermal diffusivity for enthalpy //- Effective thermal turbulent diffusivity of mixture [kg/m/s]
tmp<volScalarField> alpha() const
{
return thermo_->alpha();
}
//- Return the laminar thermal diffusivity for enthalpy on a patch
tmp<scalarField> alpha(const label patchi) const
{
return thermo_->alpha(patchi);
}
//- Return the effective thermal diffusivity for enthalpy
tmp<volScalarField> alphaEff tmp<volScalarField> alphaEff
( (
const volScalarField& alphat const volScalarField& alphat
@ -248,7 +263,8 @@ public:
return thermo_->alphaEff(alphat); return thermo_->alphaEff(alphat);
} }
//- Return the effective thermal diffusivity for enthalpy on a patch //- Effective thermal turbulent diffusivity of mixture
// for patch [kg/m/s]
tmp<scalarField> alphaEff tmp<scalarField> alphaEff
( (
const scalarField& alphat, const scalarField& alphat,

View File

@ -102,42 +102,40 @@ public:
//- Re-read model coefficients if they have changed //- Re-read model coefficients if they have changed
virtual bool read(); virtual bool read();
//- Return the turbulent thermal diffusivity for enthalpy [kg/m/s] //- Turbulent thermal diffusivity for enthalpy [kg/m/s]
virtual tmp<volScalarField> alphat() const virtual tmp<volScalarField> alphat() const
{ {
return alphat_; return alphat_;
} }
//- Return the turbulent thermal diffusivity for enthalpy for a patch //- Turbulent thermal diffusivity for enthalpy for a patch [kg/m/s]
// [kg/m/s]
virtual tmp<scalarField> alphat(const label patchi) const virtual tmp<scalarField> alphat(const label patchi) const
{ {
return alphat()().boundaryField()[patchi]; return alphat()().boundaryField()[patchi];
} }
//- Return the effective turbulent thermal diffusivity for temperature //- Effective thermal turbulent diffusivity for temperature
// [J/m/s/K] // of mixture [J/m/s/K]
virtual tmp<volScalarField> kappaEff() const virtual tmp<volScalarField> kappaEff() const
{ {
return this->transport_.kappaEff(alphat()); return this->transport_.kappaEff(alphat());
} }
//- Return the effective turbulent thermal diffusivity for temperature //- Effective thermal turbulent diffusivity for temperature
// [J/m/s/K] // of mixture for patch [J/m/s/K]
virtual tmp<scalarField> kappaEff(const label patchi) const virtual tmp<scalarField> kappaEff(const label patchi) const
{ {
return this->transport_.kappaEff(alphat(patchi), patchi); return this->transport_.kappaEff(alphat(patchi), patchi);
} }
//- Return the effective turbulent thermal diffusivity for enthalpy //- Effective thermal turbulent diffusivity of mixture [kg/m/s]
// [kg/m/s]
virtual tmp<volScalarField> alphaEff() const virtual tmp<volScalarField> alphaEff() const
{ {
return this->transport_.alphaEff(alphat()); return this->transport_.alphaEff(alphat());
} }
//- Return the effective turbulent thermal diffusivity for enthalpy //- Effective thermal turbulent diffusivity of mixture
// for a patch [kg/m/s] // for patch [kg/m/s]
virtual tmp<scalarField> alphaEff(const label patchi) const virtual tmp<scalarField> alphaEff(const label patchi) const
{ {
return this->transport_.alphaEff(alphat(patchi), patchi); return this->transport_.alphaEff(alphat(patchi), patchi);

View File

@ -107,65 +107,62 @@ public:
// Member Functions // Member Functions
//- Return the thermal diffusivity for temperature [J/m/s/K] //- Thermal diffusivity for enthalpy of mixture [kg/m/s]
virtual tmp<volScalarField> kappa() const
{
return this->transport_.kappa();
}
//- Return the laminar thermal diffusivity for temperature on patch
// [J/m/s/K]
virtual tmp<scalarField> kappa(const label patchi) const
{
return this->transport_.kappa(patchi);
}
//- Return the laminar thermal diffusivity for enthalpy [kg/m/s]
virtual tmp<volScalarField> alpha() const virtual tmp<volScalarField> alpha() const
{ {
return this->transport_.alpha(); return this->transport_.alpha();
} }
//- Return the laminar thermal diffusivity for enthalpy on patch //- Thermal diffusivity for enthalpy of mixture for patch [kg/m/s]
// [kg/m/s]
virtual tmp<scalarField> alpha(const label patchi) const virtual tmp<scalarField> alpha(const label patchi) const
{ {
return this->transport_.alpha(patchi); return this->transport_.alpha(patchi);
} }
//- Return the turbulent thermal diffusivity for enthalpy [kg/m/s] //- Thermal diffusivity for temperature of mixture [J/m/s/K]
virtual tmp<volScalarField> kappa() const
{
return this->transport_.kappa();
}
//- Thermal diffusivity for temperature of mixture
// for patch [J/m/s/K]
virtual tmp<scalarField> kappa(const label patchi) const
{
return this->transport_.kappa(patchi);
}
//- Turbulent thermal diffusivity for enthalpy [kg/m/s]
virtual tmp<volScalarField> alphat() const; virtual tmp<volScalarField> alphat() const;
//- Return the turbulent thermal diffusivity for enthalpy for a patch //- Turbulent thermal diffusivity for enthalpy for a patch [kg/m/s]
// [kg/m/s]
virtual tmp<scalarField> alphat(const label patchi) const; virtual tmp<scalarField> alphat(const label patchi) const;
//- Return the effective turbulent thermal diffusivity for temperature //- Effective thermal turbulent diffusivity for temperature
// [J/m/s/K] // of mixture [J/m/s/K]
virtual tmp<volScalarField> kappaEff() const virtual tmp<volScalarField> kappaEff() const
{ {
return kappa(); return kappa();
} }
//- Return the effective turbulent thermal diffusivity for temperature //- Effective thermal turbulent diffusivity for temperature
// [J/m/s/K] // of mixture for patch [J/m/s/K]
virtual tmp<scalarField> kappaEff(const label patchi) const virtual tmp<scalarField> kappaEff(const label patchi) const
{ {
return kappa(patchi); return kappa(patchi);
} }
//- Return the effective turbulent thermal diffusivity for enthalpy //- Effective thermal turbulent diffusivity of mixture [kg/m/s]
// [kg/m/s]
virtual tmp<volScalarField> alphaEff() const virtual tmp<volScalarField> alphaEff() const
{ {
return alpha(); return this->transport_.alphahe();
} }
//- Return the effective turbulent thermal diffusivity for enthalpy //- Effective thermal turbulent diffusivity of mixture
// for a patch [kg/m/s] // for patch [kg/m/s]
virtual tmp<scalarField> alphaEff(const label patchi) const virtual tmp<scalarField> alphaEff(const label patchi) const
{ {
return alpha(patchi); return this->transport_.alphahe(patchi);
} }
}; };

View File

@ -422,21 +422,27 @@ public:
//- Thermal diffusivity for temperature of mixture [J/m/s/K] //- Thermal diffusivity for temperature of mixture [J/m/s/K]
virtual tmp<volScalarField> kappa() const = 0; virtual tmp<volScalarField> kappa() const = 0;
//- Thermal diffusivity for temperature //- Thermal diffusivity for temperature of mixture
// of mixture for patch [J/m/s/K] // for patch [J/m/s/K]
virtual tmp<scalarField> kappa virtual tmp<scalarField> kappa
( (
const label patchi const label patchi
) const = 0; ) const = 0;
//- Effective thermal diffusivity for temperature //- Thermal diffusivity for energy of mixture [kg/m/s]
virtual tmp<volScalarField> alphahe() const = 0;
//- Thermal diffusivity for energy of mixture for patch [kg/m/s]
virtual tmp<scalarField> alphahe(const label patchi) const = 0;
//- Effective thermal turbulent diffusivity for temperature
// of mixture [J/m/s/K] // of mixture [J/m/s/K]
virtual tmp<volScalarField> kappaEff virtual tmp<volScalarField> kappaEff
( (
const volScalarField& const volScalarField&
) const = 0; ) const = 0;
//- Effective thermal diffusivity for temperature //- Effective thermal turbulent diffusivity for temperature
// of mixture for patch [J/m/s/K] // of mixture for patch [J/m/s/K]
virtual tmp<scalarField> kappaEff virtual tmp<scalarField> kappaEff
( (
@ -444,13 +450,14 @@ public:
const label patchi const label patchi
) const = 0; ) const = 0;
//- Effective thermal diffusivity of mixture [kg/m/s] //- Effective thermal turbulent diffusivity of mixture [kg/m/s]
virtual tmp<volScalarField> alphaEff virtual tmp<volScalarField> alphaEff
( (
const volScalarField& alphat const volScalarField& alphat
) const = 0; ) const = 0;
//- Effective thermal diffusivity of mixture for patch [kg/m/s] //- Effective thermal turbulent diffusivity of mixture
// for patch [kg/m/s]
virtual tmp<scalarField> alphaEff virtual tmp<scalarField> alphaEff
( (
const scalarField& alphat, const scalarField& alphat,

View File

@ -794,6 +794,31 @@ Foam::tmp<Foam::scalarField> Foam::heThermo<BasicThermo, MixtureType>::kappa
} }
template<class BasicThermo, class MixtureType>
Foam::tmp<Foam::volScalarField>
Foam::heThermo<BasicThermo, MixtureType>::alphahe() const
{
tmp<Foam::volScalarField> alphaEff(this->CpByCpv()*this->alpha_);
alphaEff.ref().rename("alphahe");
return alphaEff;
}
template<class BasicThermo, class MixtureType>
Foam::tmp<Foam::scalarField>
Foam::heThermo<BasicThermo, MixtureType>::alphahe(const label patchi) const
{
return
this->CpByCpv
(
this->p_.boundaryField()[patchi],
this->T_.boundaryField()[patchi],
patchi
)
*this->alpha_.boundaryField()[patchi];
}
template<class BasicThermo, class MixtureType> template<class BasicThermo, class MixtureType>
Foam::tmp<Foam::volScalarField> Foam::tmp<Foam::volScalarField>
Foam::heThermo<BasicThermo, MixtureType>::kappaEff Foam::heThermo<BasicThermo, MixtureType>::kappaEff

View File

@ -268,18 +268,27 @@ public:
//- Thermal diffusivity for temperature of mixture [J/m/s/K] //- Thermal diffusivity for temperature of mixture [J/m/s/K]
virtual tmp<volScalarField> kappa() const; virtual tmp<volScalarField> kappa() const;
//- Thermal diffusivity for temperature //- Thermal diffusivity for temperature of mixture
// of mixture for patch [J/m/s/K] // for patch [J/m/s/K]
virtual tmp<scalarField> kappa virtual tmp<scalarField> kappa
( (
const label patchi const label patchi
) const; ) const;
//- Effective thermal diffusivity for temperature //- Thermal diffusivity for energy of mixture [kg/m/s]
// of mixture [J/m/s/K] virtual tmp<volScalarField> alphahe() const;
virtual tmp<volScalarField> kappaEff(const volScalarField&) const;
//- Effective thermal diffusivity for temperature //- Thermal diffusivity for energy of mixture for patch [kg/m/s]
virtual tmp<scalarField> alphahe(const label patchi) const;
//- Effective thermal turbulent diffusivity for temperature
// of mixture [J/m/s/K]
virtual tmp<volScalarField> kappaEff
(
const volScalarField&
) const;
//- Effective thermal turbulent diffusivity for temperature
// of mixture for patch [J/m/s/K] // of mixture for patch [J/m/s/K]
virtual tmp<scalarField> kappaEff virtual tmp<scalarField> kappaEff
( (
@ -287,13 +296,14 @@ public:
const label patchi const label patchi
) const; ) const;
//- Effective thermal diffusivity of mixture [kg/m/s] //- Effective thermal turbulent diffusivity of mixture [kg/m/s]
virtual tmp<volScalarField> alphaEff virtual tmp<volScalarField> alphaEff
( (
const volScalarField& alphat const volScalarField& alphat
) const; ) const;
//- Effective thermal diffusivity of mixture for patch [kg/m/s] //- Effective thermal turbulent diffusivity of mixture
// for patch [kg/m/s]
virtual tmp<scalarField> alphaEff virtual tmp<scalarField> alphaEff
( (
const scalarField& alphat, const scalarField& alphat,