62 const phaseSystem& fluid_;
78 autoPtr<diameterModel> diameterModel_;
95 const phaseSystem&
fluid,
96 const word& phaseName,
97 const bool referencePhase,
100 (fluid, phaseName, referencePhase, index)
108 const phaseSystem& fluid,
109 const word& phaseName,
110 const bool referencePhase,
115 autoPtr<phaseModel>
clone()
const;
120 static autoPtr<phaseModel>
New 122 const phaseSystem& fluid,
123 const word& phaseName,
124 const bool referencePhase,
132 const phaseSystem& fluid_;
133 const word& referencePhaseName_;
134 mutable label indexCounter_;
141 const word& referencePhaseName
145 referencePhaseName_(referencePhaseName),
153 const word phaseName(is);
161 phaseName == referencePhaseName_,
270 virtual bool pure()
const = 0;
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.
label index() const
Return the index of the phase.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
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 tmp< surfaceVectorField > Uf() const =0
Return the face velocity.
virtual bool incompressible() const =0
Return true if the phase is incompressible otherwise false.
static autoPtr< phaseModel > New(const phaseSystem &fluid, const word &phaseName, const bool referencePhase, const label index)
virtual tmp< fvScalarMatrix > R(volScalarField &Yi) const =0
Return the fuel consumption rate matrix.
virtual tmp< volVectorField > U() const =0
Return the velocity.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
declareRunTimeSelectionTable(autoPtr, phaseModel, phaseSystem,(const phaseSystem &fluid, const word &phaseName, const bool referencePhase, const label index),(fluid, phaseName, referencePhase, index))
autoPtr< phaseModel > operator()(Istream &is) const
virtual void correctKinematics()
Correct the kinematics.
virtual tmp< volScalarField > rho() const =0
Return the density field.
autoPtr< phaseModel > clone() const
Return clone.
const word & name() const
virtual tmp< volVectorField > DUDt() const =0
Return the substantive acceleration.
tmp< volScalarField > d() const
Return the Sauter-mean diameter.
phaseModel(const word &phaseName, const volScalarField &p, const volScalarField &T)
Construct from components.
virtual bool isothermal() const =0
Return whether the phase is isothermal.
iNew(const volScalarField &p, const volScalarField &T)
virtual tmp< fvScalarMatrix > YiEqn(volScalarField &Yi)=0
Return the species fraction equation.
virtual tmp< surfaceScalarField > alphaPhi() const =0
Return the volumetric flux of the phase.
virtual void correctSpecies()
Correct the species concentrations.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
virtual tmp< fvScalarMatrix > heEqn()=0
Return the enthalpy equation.
virtual tmp< surfaceScalarField > phi() const =0
Return the volumetric flux.
virtual ~phaseModel()
Destructor.
virtual tmp< scalarField > kappaEff(const label patchi) const =0
Effective thermal turbulent diffusivity for temperature.
virtual PtrList< volScalarField > & YRef()=0
Access the species mass fractions.
virtual bool read()
Read phase properties dictionary.
Class to represent a system of phases and model interfacial transfers between them.
virtual tmp< volScalarField > k() const =0
Return the turbulent kinetic energy.
A class for handling words, derived from string.
virtual const UPtrList< volScalarField > & YActive() const =0
Return the active species mass fractions.
const rhoThermo & thermo() const
Return const-access to phase rhoThermo.
virtual bool pure() const =0
Return whether the phase is pure (i.e., not multi-component)
virtual void correctUf()
Correct the face velocity for moving meshes.
const word & keyword() const
virtual tmp< volScalarField > K() const =0
Return the phase kinetic energy.
virtual tmp< volScalarField > pPrime() const =0
Return the phase-pressure'.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
const dimensionedScalar & residualAlpha() const
Return the residual phase-fraction for given phase.
virtual const PtrList< volScalarField > & Y() const =0
Return the species mass fractions.
scalar alphaMax() const
Return the maximum phase-fraction (e.g. packing limit)
virtual tmp< fvVectorMatrix > UEqn()=0
Return the momentum equation.
virtual tmp< surfaceScalarField > alphaRhoPhi() const =0
Return the mass flux of the phase.
virtual surfaceVectorField & UfRef()=0
Access the face velocity.
virtual tmp< surfaceScalarField > DUDtf() const =0
Return the substantive acceleration on the faces.
Forward declarations of fvMatrix specialisations.
virtual surfaceScalarField & alphaPhiRef()=0
Access the volumetric flux of the phase.
ClassName("phaseModel")
Runtime type information.
virtual bool isochoric() const =0
Return true if the phase is constant density otherwise false.
fvModels source(alpha1, mixture.thermo1().rho())
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
const phaseSystem & fluid() const
Return the system to which this phase belongs.
const autoPtr< diameterModel > & dPtr() const
Return const-reference to diameterModel of the phase.
virtual bool stationary() const =0
Return whether the phase is stationary.
Base-class for fluid thermodynamic properties based on density.
virtual void correctThermo()
Correct the thermodynamics.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Macros to ease declaration of run-time selection tables.
A class for managing temporary objects.
virtual void correctEnergyTransport()
Correct the energy transport.
virtual void correctTurbulence()
Correct the turbulence.
virtual void correctReactions()
Correct the reactions.
virtual tmp< fvVectorMatrix > UfEqn()=0
Return the momentum equation for the face-based algorithm.
virtual volVectorField & URef()=0
Access the velocity.
virtual void correctContinuityError(const volScalarField &source)
Correct the continuity error.
virtual rhoThermo & thermoRef()=0
Access the thermophysical model.