43#include "phaseCompressibleTurbulenceModelFwd.H"
66 const phaseSystem& fluid_;
82 autoPtr<diameterModel> diameterModel_;
100 const word& phaseName,
112 const word& phaseName,
125 const word& phaseName,
134 mutable label indexCounter_;
244 virtual bool pure()
const = 0;
const Internal & operator()() const
Return a const-reference to the dimensioned internal field.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
static autoPtr< Time > New()
Construct (dummy) Time - no functionObjects or libraries.
A list of pointers to objects of type <T>, without allocation/deallocation management of the pointers...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Return a pointer to a new phase created on freestore.
iNew(const phaseSystem &fluid)
autoPtr< phaseModel > operator()(Istream &is) const
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
virtual void correctKinematics()
Correct the kinematics.
virtual void correctEnergyTransport()
Correct the energy transport.
virtual tmp< fvVectorMatrix > UfEqn()=0
Return the momentum equation for the face-based algorithm.
virtual tmp< volScalarField > continuityError() const =0
Return the continuity error.
virtual tmp< volScalarField > divU() const =0
Return the phase dilatation rate (d(alpha)/dt + div(alpha*phi))
const volVectorField & U() const
ClassName("phaseModel")
Runtime type information.
const phaseSystem & fluid() const
Return the system to which this phase belongs.
virtual PtrList< volScalarField > & YRef()=0
Access the species mass fractions.
virtual tmp< volScalarField > k() const =0
Return the turbulent kinetic energy.
virtual tmp< volScalarField > mut() const =0
Return the turbulent dynamic viscosity.
virtual bool pure() const =0
Return whether the phase is pure (i.e., not multi-component)
virtual tmp< volScalarField > K() const =0
Return the phase kinetic energy.
virtual surfaceScalarField & alphaPhiRef()=0
Access the volumetric flux of the phase.
virtual void divU(tmp< volScalarField > divU)=0
Set the phase dilatation rate (d(alpha)/dt + div(alpha*phi))
const dimensionedScalar & residualAlpha() const
Return the residual phase-fraction for given phase.
virtual tmp< volScalarField > kappa() const =0
Thermal diffusivity for temperature of mixture [J/m/s/K].
virtual surfaceScalarField & alphaRhoPhiRef()=0
Access the mass flux of the phase.
virtual tmp< volScalarField > nu() const =0
Return the laminar kinematic viscosity.
static autoPtr< phaseModel > New(const phaseSystem &fluid, const word &phaseName, const label index)
tmp< volScalarField > d() const
Return the Sauter-mean diameter.
virtual tmp< surfaceScalarField > alphaRhoPhi() const =0
Return the mass flux of the phase.
virtual void correctThermo()
Correct the thermodynamics.
void correct()
Correct the phase properties.
declareRunTimeSelectionTable(autoPtr, phaseModel, phaseSystem,(const phaseSystem &fluid, const word &phaseName, const label index),(fluid, phaseName, index))
virtual ~phaseModel()
Destructor.
virtual const UPtrList< volScalarField > & YActive() const =0
Return the active species mass fractions.
virtual tmp< volScalarField > alphaEff(const volScalarField &alphat) const =0
Effective thermal turbulent diffusivity of mixture [kg/m/s].
virtual tmp< volScalarField > continuityErrorFlow() const =0
Return the continuity error due to the flow field.
const surfaceScalarField & phi() const
virtual tmp< volScalarField > alphahe() const =0
Thermal diffusivity for energy of mixture [kg/m/s].
const word & name() const
Return the name of this phase.
virtual tmp< scalarField > nu(const label patchi) const =0
Return the laminar kinematic viscosity on a patch.
virtual tmp< volScalarField > nut() const =0
Return the turbulent kinematic viscosity.
virtual tmp< volScalarField > rho() const =0
Return the density field.
scalar alphaMax() const
Return the maximum phase-fraction (e.g. packing limit)
const dimensionedScalar & rho() const
virtual bool stationary() const =0
Return whether the phase is stationary.
virtual bool compressible() const =0
Return true if the phase is compressible otherwise false.
virtual tmp< volScalarField > alpha() const =0
Thermal diffusivity for enthalpy of mixture [kg/m/s].
virtual const PtrList< volScalarField > & Y() const =0
Return the species mass fractions.
virtual tmp< volScalarField > continuityErrorSources() const =0
Return the continuity error due to any sources.
const dimensionedScalar & nu() const
Return the laminar viscosity.
tmp< volScalarField > d() const
virtual rhoThermo & thermoRef()=0
Access the thermophysical model.
virtual void correctTurbulence()
Correct the turbulence.
virtual tmp< volVectorField > DUDt() const =0
Return the substantive acceleration.
virtual tmp< volScalarField > nuEff() const =0
Return the effective kinematic viscosity.
autoPtr< phaseModel > clone() const
Return clone.
const surfaceScalarField & alphaPhi() const
virtual tmp< fvVectorMatrix > UEqn()=0
Return the momentum equation.
label index() const
Return the index of the phase.
virtual tmp< scalarField > alphahe(const label patchi) const =0
Thermal diffusivity for energy of mixture for patch [kg/m/s].
const word & keyword() const
Return the name of the phase for use as the keyword in PtrDictionary.
virtual void correct()
Correct the phase properties.
virtual tmp< surfaceScalarField > DUDtf() const =0
Return the substantive acceleration on the faces.
virtual tmp< volVectorField > U() const =0
Return the velocity.
const word & keyword() const
virtual const volScalarField & Y(const word &name) const =0
Return a species mass fraction by name.
virtual tmp< volScalarField > kappaEff() const =0
Effective thermal turbulent diffusivity for temperature.
virtual tmp< surfaceScalarField > alphaPhi() const =0
Return the volumetric flux of the phase.
const autoPtr< diameterModel > & dPtr() const
Return const-reference to diameterModel of the phase.
virtual surfaceScalarField & phiRef()=0
Access the volumetric flux.
autoPtr< phaseModel > clone() const
Return clone.
virtual bool isothermal() const =0
Return whether the phase is isothermal.
virtual tmp< surfaceScalarField > phi() const =0
Return the volumetric flux.
virtual tmp< volScalarField > pPrime() const =0
Return the phase-pressure'.
virtual tmp< volScalarField > muEff() const =0
Return the effective dynamic viscosity.
void correctInflowOutflow(surfaceScalarField &alphaPhi) const
Ensure that the flux at inflow/outflow BCs is preserved.
virtual ~phaseModel()
Destructor.
const word & name() const
virtual tmp< scalarField > alpha(const label patchi) const =0
Thermal diffusivity for enthalpy of mixture for patch [kg/m/s].
virtual tmp< fvScalarMatrix > heEqn()=0
Return the enthalpy equation.
virtual tmp< scalarField > mu(const label patchi) const =0
Return the laminar dynamic viscosity on a patch.
virtual UPtrList< volScalarField > & YActiveRef()=0
Access the active species mass fractions.
virtual const rhoThermo & thermo() const =0
Return the thermophysical model.
virtual tmp< volScalarField > alphaEff() const =0
Effective thermal turbulent diffusivity of mixture [kg/m/s].
virtual tmp< volScalarField > mu() const =0
Return the laminar dynamic viscosity.
virtual tmp< fvScalarMatrix > YiEqn(volScalarField &Yi)=0
Return the species fraction equation.
virtual bool read()
Read phase properties dictionary.
virtual volVectorField & URef()=0
Access the velocity.
const dimensionedScalar & kappa() const
Class to represent a system of phases and model interfacial transfers between them.
Basic thermodynamic properties based on density.
A class for managing temporary objects.
A class for handling words, derived from Foam::string.
#define ClassName(TypeNameString)
Add typeName information from argument TypeNameString to a class.
Forward declarations of fvMatrix specializations.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
Macros to ease declaration of run-time selection tables.
#define declareRunTimeSelectionTable(ptrWrapper, baseType, argNames, argList, parList)
Declare a run-time selection (variables and adder classes)