43 #include "phaseCompressibleTurbulenceModelFwd.H" 66 const phaseSystem& fluid_;
82 autoPtr<diameterModel> diameterModel_;
99 const phaseSystem&
fluid,
100 const word& phaseName,
111 const phaseSystem&
fluid,
112 const word& phaseName,
117 autoPtr<phaseModel>
clone()
const;
122 static autoPtr<phaseModel>
New 124 const phaseSystem&
fluid,
125 const word& phaseName,
133 const phaseSystem& fluid_;
134 mutable label indexCounter_;
140 const phaseSystem&
fluid 147 autoPtr<phaseModel>
operator()(Istream& is)
const 150 return autoPtr<phaseModel>
244 virtual bool pure()
const = 0;
virtual tmp< volScalarField > mut() const =0
Return the turbulent dynamic viscosity.
virtual surfaceScalarField & phiRef()=0
Access the volumetric flux.
virtual UPtrList< volScalarField > & YActiveRef()=0
Access the active species mass fractions.
void correctInflowOutflow(surfaceScalarField &alphaPhi) const
Ensure that the flux at inflow/outflow BCs is preserved.
virtual tmp< volScalarField > continuityError() const =0
Return the continuity error.
virtual surfaceScalarField & alphaRhoPhiRef()=0
Access the mass flux of the phase.
virtual tmp< volScalarField > divU() const =0
Return the phase dilatation rate (d(alpha)/dt + div(alpha*phi))
virtual bool compressible() const =0
Return true if the phase is compressible otherwise false.
autoPtr< phaseModel > clone() const
Return clone.
const phaseSystem & fluid() const
Return the system to which this phase belongs.
virtual tmp< volScalarField > alpha() const =0
Thermal diffusivity for enthalpy of mixture [kg/m/s].
virtual tmp< volScalarField > alphaEff() const =0
Effective thermal turbulent diffusivity of mixture [kg/m/s].
autoPtr< phaseModel > operator()(Istream &is) const
virtual tmp< volVectorField > DUDt() const =0
Return the substantive acceleration.
const word & keyword() const
virtual tmp< volScalarField > muEff() const =0
Return the effective dynamic viscosity.
virtual bool isothermal() const =0
Return whether the phase is isothermal.
const surfaceScalarField & phi() const
virtual tmp< volScalarField > continuityErrorSources() const =0
Return the continuity error due to any sources.
virtual tmp< fvScalarMatrix > YiEqn(volScalarField &Yi)=0
Return the species fraction equation.
const surfaceScalarField & alphaPhi() const
GeometricField< scalar, fvPatchField, volMesh > volScalarField
virtual tmp< fvScalarMatrix > heEqn()=0
Return the enthalpy equation.
const volVectorField & U() const
virtual tmp< volScalarField > mu() const =0
Return the laminar dynamic viscosity.
virtual PtrList< volScalarField > & YRef()=0
Access the species mass fractions.
Class to represent a system of phases and model interfacial transfers between them.
scalar alphaMax() const
Return the maximum phase-fraction (e.g. packing limit)
virtual tmp< volScalarField > k() const =0
Return the turbulent kinetic energy.
A class for handling words, derived from Foam::string.
virtual const UPtrList< volScalarField > & YActive() const =0
Return the active species mass fractions.
virtual bool pure() const =0
Return whether the phase is pure (i.e., not multi-component)
virtual tmp< volScalarField > continuityErrorFlow() const =0
Return the continuity error due to the flow field.
virtual tmp< volScalarField > K() const =0
Return the phase kinetic energy.
virtual tmp< volScalarField > pPrime() const =0
Return the phase-pressure'.
static autoPtr< phaseModel > New(const phaseSystem &fluid, const word &phaseName, const label index)
A list of pointers to objects of type <T>, without allocation/deallocation management of the pointers...
void correct()
Correct the phase properties.
virtual const PtrList< volScalarField > & Y() const =0
Return the species mass fractions.
const dimensionedScalar & kappa() const
const dimensionedScalar & nu() const
Return the laminar viscosity.
virtual tmp< fvVectorMatrix > UEqn()=0
Return the momentum equation.
virtual void correctThermo()
Correct the thermodynamics.
virtual tmp< surfaceScalarField > alphaRhoPhi() const =0
Return the mass flux of the phase.
virtual void correctKinematics()
Correct the kinematics.
label index() const
Return the index of the phase.
virtual tmp< surfaceScalarField > DUDtf() const =0
Return the substantive acceleration on the faces.
Forward declarations of fvMatrix specializations.
virtual surfaceScalarField & alphaPhiRef()=0
Access the volumetric flux of the phase.
ClassName("phaseModel")
Runtime type information.
const dimensionedScalar & rho() const
const autoPtr< diameterModel > & dPtr() const
Return const-reference to diameterModel of the phase.
phaseModel(const word &phaseName, const dictionary &phaseDict, const fvMesh &mesh)
virtual tmp< volScalarField > nuEff() const =0
Return the effective kinematic viscosity.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers...
virtual tmp< volScalarField > alphahe() const =0
Thermal diffusivity for energy of mixture [kg/m/s].
virtual tmp< volScalarField > kappaEff() const =0
Effective thermal turbulent diffusivity for temperature.
virtual bool stationary() const =0
Return whether the phase is stationary.
Basic thermodynamic properties based on density.
const dimensionedScalar & residualAlpha() const
Return the residual phase-fraction for given phase.
const word & name() const
virtual void correctEnergyTransport()
Correct the energy transport.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
Macros to ease declaration of run-time selection tables.
A class for managing temporary objects.
virtual tmp< volScalarField > nut() const =0
Return the turbulent kinematic viscosity.
virtual bool read()
Read phase properties dictionary.
tmp< volScalarField > d() const
declareRunTimeSelectionTable(autoPtr, phaseModel, phaseSystem,(const phaseSystem &fluid, const word &phaseName, const label index),(fluid, phaseName, index))
virtual void correctTurbulence()
Correct the turbulence.
virtual tmp< fvVectorMatrix > UfEqn()=0
Return the momentum equation for the face-based algorithm.
virtual const rhoThermo & thermo() const =0
Return the thermophysical model.
virtual volVectorField & URef()=0
Access the velocity.
virtual ~phaseModel()
Destructor.
virtual rhoThermo & thermoRef()=0
Access the thermophysical model.