reactingTwoPhaseEulerFoam: Added support for thermal diffusivity and thermal wall-functions

This commit is contained in:
Henry Weller
2015-08-22 18:09:44 +01:00
parent c80e7cd4e5
commit 85c62fc1b7
30 changed files with 691 additions and 144 deletions

View File

@ -4,8 +4,8 @@ EXE_INC = \
-I$(LIB_SRC)/transportModels/compressible/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/transportModels/incompressible/transportModel \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/phaseCompressible/lnInclude \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/fvOptions/lnInclude \

View File

@ -41,7 +41,13 @@ Foam::RASModels::kineticTheoryModel::kineticTheoryModel
const word& type
)
:
eddyViscosity<RASModel<PhaseCompressibleTurbulenceModel<phaseModel> > >
eddyViscosity
<
RASModel<EddyDiffusivity<ThermalDiffusivity
<
PhaseCompressibleTurbulenceModel<phaseModel>
> > >
>
(
type,
alpha,
@ -183,7 +189,10 @@ bool Foam::RASModels::kineticTheoryModel::read()
(
eddyViscosity
<
RASModel<PhaseCompressibleTurbulenceModel<phaseModel> >
RASModel<EddyDiffusivity<ThermalDiffusivity
<
PhaseCompressibleTurbulenceModel<phaseModel>
> > >
>::read()
)
{

View File

@ -48,6 +48,8 @@ SourceFiles
#include "RASModel.H"
#include "eddyViscosity.H"
#include "PhaseCompressibleTurbulenceModel.H"
#include "ThermalDiffusivity.H"
#include "EddyDiffusivity.H"
#include "phaseModel.H"
#include "dragModel.H"
#include "viscosityModel.H"
@ -72,7 +74,10 @@ class kineticTheoryModel
:
public eddyViscosity
<
RASModel<PhaseCompressibleTurbulenceModel<phaseModel> >
RASModel<EddyDiffusivity<ThermalDiffusivity
<
PhaseCompressibleTurbulenceModel<phaseModel>
> > >
>
{
// Private data

View File

@ -29,6 +29,9 @@ License
#include "addToRunTimeSelectionTable.H"
#include "makeTurbulenceModel.H"
#include "ThermalDiffusivity.H"
#include "EddyDiffusivity.H"
#include "laminar.H"
#include "RASModel.H"
#include "LESModel.H"
@ -39,6 +42,7 @@ makeBaseTurbulenceModel
volScalarField,
compressibleTurbulenceModel,
PhaseCompressibleTurbulenceModel,
ThermalDiffusivity,
phaseModel
);

View File

@ -40,7 +40,13 @@ Foam::RASModels::phasePressureModel::phasePressureModel
const word& type
)
:
eddyViscosity<RASModel<PhaseCompressibleTurbulenceModel<phaseModel> > >
eddyViscosity
<
RASModel<EddyDiffusivity<ThermalDiffusivity
<
PhaseCompressibleTurbulenceModel<phaseModel>
> > >
>
(
type,
alpha,
@ -87,7 +93,10 @@ bool Foam::RASModels::phasePressureModel::read()
(
eddyViscosity
<
RASModel<PhaseCompressibleTurbulenceModel<phaseModel> >
RASModel<EddyDiffusivity<ThermalDiffusivity
<
PhaseCompressibleTurbulenceModel<phaseModel>
> > >
>::read()
)
{

View File

@ -54,6 +54,8 @@ SourceFiles
#include "RASModel.H"
#include "eddyViscosity.H"
#include "PhaseCompressibleTurbulenceModel.H"
#include "ThermalDiffusivity.H"
#include "EddyDiffusivity.H"
#include "phaseModel.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -71,7 +73,10 @@ class phasePressureModel
:
public eddyViscosity
<
RASModel<PhaseCompressibleTurbulenceModel<phaseModel> >
RASModel<EddyDiffusivity<ThermalDiffusivity
<
PhaseCompressibleTurbulenceModel<phaseModel>
> > >
>
{
// Private data

View File

@ -110,10 +110,10 @@ template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::scalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::mu
(
const label patchI
const label patchi
) const
{
return thermo_->mu(patchI);
return thermo_->mu(patchi);
}
@ -129,10 +129,10 @@ template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::scalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::nu
(
const label patchI
const label patchi
) const
{
return thermo_->nu(patchI);
return thermo_->nu(patchi);
}
@ -148,10 +148,75 @@ template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::scalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::kappa
(
const label patchI
const label patchi
) const
{
return thermo_->kappa(patchI);
return thermo_->kappa(patchi);
}
template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::volScalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::kappaEff
(
const volScalarField& alphat
) const
{
return thermo_->kappaEff(alphat);
}
template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::scalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::kappaEff
(
const scalarField& alphat,
const label patchi
) const
{
return thermo_->kappaEff(alphat, patchi);
}
template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::volScalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::alpha() const
{
return thermo_->alpha();
}
template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::scalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::alpha
(
const label patchi
) const
{
return thermo_->alpha(patchi);
}
template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::volScalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::alphaEff
(
const volScalarField& alphat
) const
{
return thermo_->alphaEff(alphat);
}
template<class BasePhaseModel, class ThermoType>
Foam::tmp<Foam::scalarField>
Foam::ThermoPhaseModel<BasePhaseModel, ThermoType>::alphaEff
(
const scalarField& alphat,
const label patchi
) const
{
return thermo_->alphaEff(alphat, patchi);
}

View File

@ -105,19 +105,51 @@ public:
virtual tmp<volScalarField> mu() const;
//- Access the laminar dynamic viscosity
virtual tmp<scalarField> mu(const label patchI) const;
virtual tmp<scalarField> mu(const label patchi) const;
//- Return the laminar kinematic viscosity
virtual tmp<volScalarField> nu() const;
//- Access the laminar kinematic viscosity
virtual tmp<scalarField> nu(const label patchI) const;
virtual tmp<scalarField> nu(const label patchi) const;
//- Return the laminar thermal conductivity
virtual tmp<volScalarField> kappa() const;
//- Access the laminar thermal conductivity
virtual tmp<scalarField> kappa(const label patchI) const;
virtual tmp<scalarField> kappa(const label patchi) const;
//- Return the laminar thermal conductivity
virtual tmp<volScalarField> kappaEff
(
const volScalarField& alphat
) const;
//- Access the laminar thermal conductivity
virtual tmp<scalarField> kappaEff
(
const scalarField& alphat,
const label patchi
) const;
//- Return the thermal diffusivity for enthalpy
virtual tmp<volScalarField> alpha() const;
//- Return the thermal diffusivity for enthalpy on a patch
virtual tmp<scalarField> alpha(const label patchi) const;
//- Return the thermal diffusivity for enthalpy
virtual tmp<volScalarField> alphaEff
(
const volScalarField& alphat
) const;
//- Return the thermal diffusivity for enthalpy on a patch
virtual tmp<scalarField> alphaEff
(
const scalarField& alphat,
const label patchi
) const;
};

View File

@ -246,19 +246,51 @@ public:
virtual tmp<volScalarField> mu() const = 0;
//- Return the laminar dynamic viscosity on a patch
virtual tmp<scalarField> mu(const label patchI) const = 0;
virtual tmp<scalarField> mu(const label patchi) const = 0;
//- Return the laminar kinematic viscosity
virtual tmp<volScalarField> nu() const = 0;
//- 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
virtual tmp<volScalarField> kappa() const = 0;
//- Return the laminar thermal conductivity on a patch
virtual tmp<scalarField> kappa(const label patchI) const = 0;
virtual tmp<scalarField> kappa(const label patchi) const = 0;
//- Return the laminar thermal conductivity
virtual tmp<volScalarField> kappaEff
(
const volScalarField& alphat
) const = 0;
//- Access the laminar thermal conductivity
virtual tmp<scalarField> kappaEff
(
const scalarField& alphat,
const label patchi
) const = 0;
//- Return the thermal diffusivity for enthalpy
virtual tmp<volScalarField> alpha() const = 0;
//- Return the thermal diffusivity for enthalpy on a patch
virtual tmp<scalarField> alpha(const label patchi) const = 0;
//- Return the thermal diffusivity for enthalpy
virtual tmp<volScalarField> alphaEff
(
const volScalarField& alphat
) const = 0;
//- Return the thermal diffusivity for enthalpy on a patch
virtual tmp<scalarField> alphaEff
(
const scalarField& alphat,
const label patchi
) const = 0;
// Turbulence

View File

@ -33,29 +33,17 @@ License
#include "perfectGas.H"
#include "perfectFluid.H"
#include "rhoConst.H"
#include "incompressiblePerfectGas.H"
#include "hConstThermo.H"
#include "janafThermo.H"
#include "sensibleEnthalpy.H"
#include "absoluteEnthalpy.H"
#include "absoluteInternalEnergy.H"
#include "thermo.H"
#include "constTransport.H"
#include "sutherlandTransport.H"
#include "pureMixture.H"
#include "homogeneousMixture.H"
#include "inhomogeneousMixture.H"
#include "veryInhomogeneousMixture.H"
#include "multiComponentMixture.H"
#include "reactingMixture.H"
#include "singleStepReactingMixture.H"
#include "thermoPhysicsTypes.H"
#include "hRefConstThermo.H"
#include "constTransport.H"
#include "pureMixture.H"
#include "multiComponentMixture.H"
#include "thermoPhysicsTypes.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -119,6 +107,19 @@ constTransport
>
> constRefFluidEThermoPhysics;
typedef
constTransport
<
species::thermo
<
hRefConstThermo
<
rhoConst<specie>
>,
sensibleInternalEnergy
>
> constRefRhoConstEThermoPhysics;
// pureMixture, sensibleEnthalpy:
@ -218,6 +219,15 @@ makeReactionMixtureThermo
constRefFluidEThermoPhysics
);
makeReactionMixtureThermo
(
rhoThermo,
rhoReactionThermo,
heRhoThermo,
multiComponentMixture,
constRefRhoConstEThermoPhysics
);
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //