31 #include "diameterModel.H" 47 const word& phaseName,
55 IOobject::groupName(
"alpha", phaseName),
72 fluid.subDict(phaseName)
74 alphaMax_(
fluid.subDict(phaseName).getOrDefault<scalar>(
"alphaMax", 1))
94 const word& phaseName,
102 Info<<
"Selecting phaseModel for " 103 << phaseName <<
": " << modelType <<
endl;
105 auto* ctorPtr = phaseSystemConstructorTable(modelType);
114 *phaseSystemConstructorTablePtr_
118 return ctorPtr(
fluid, phaseName, index);
156 return residualAlpha_;
168 return diameterModel_().d();
174 return diameterModel_;
180 diameterModel_->correct();
202 return diameterModel_->read(fluid_.subDict(name_));
212 forAll(alphaPhiBf, patchi)
216 if (!alphaPhip.coupled())
218 alphaPhip = phiBf[patchi]*alphaBf[patchi];
fvsPatchField< scalar > fvsPatchScalarField
void correctInflowOutflow(surfaceScalarField &alphaPhi) const
Ensure that the flux at inflow/outflow BCs is preserved.
A list of keyword definitions, which are a keyword followed by a number of values (eg...
autoPtr< phaseModel > clone() const
Return clone.
const phaseSystem & fluid() const
Return the system to which this phase belongs.
Ostream & endl(Ostream &os)
Add newline and flush stream.
const word & keyword() const
GeometricBoundaryField< scalar, fvsPatchField, surfaceMesh > Boundary
Type of boundary fields.
const dimensionSet dimless
Dimensionless.
T get(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Find and return a T. FatalIOError if not found, or if the number of tokens is incorrect.
const dictionary & subDict(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Find and return a sub-dictionary.
#define forAll(list, i)
Loop across all elements in list.
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)
A class for handling words, derived from Foam::string.
static autoPtr< diameterModel > New(const dictionary &diameterProperties, const phaseModel &phase)
static autoPtr< phaseModel > New(const phaseSystem &fluid, const word &phaseName, const label index)
errorManip< error > abort(error &err)
void correct()
Correct the phase properties.
defineRunTimeSelectionTable(reactionRateFlameArea, dictionary)
defineTypeNameAndDebug(combustionModel, 0)
virtual void correctThermo()
Correct the thermodynamics.
virtual void correctKinematics()
Correct the kinematics.
label index() const
Return the index of the phase.
const autoPtr< diameterModel > & dPtr() const
Return const-reference to diameterModel of the phase.
phaseModel(const word &phaseName, const dictionary &phaseDict, const fvMesh &mesh)
Boundary & boundaryFieldRef(const bool updateAccessTime=true)
Return a reference to the boundary field.
const dimensionedScalar & residualAlpha() const
Return the residual phase-fraction for given phase.
const word & name() const
messageStream Info
Information stream (stdout output on master, null elsewhere)
virtual void correctEnergyTransport()
Correct the energy transport.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
A class for managing temporary objects.
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
surfaceScalarField alphaPhi(phi.name()+alpha1.name(), fvc::flux(phi, alpha1, alphaScheme))
virtual bool read()
Read phase properties dictionary.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
Defines the attributes of an object for which implicit objectRegistry management is supported...
tmp< volScalarField > d() const
#define FatalIOErrorInLookup(ios, lookupTag, lookupName, lookupTable)
Report an error message using Foam::FatalIOError.
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
virtual void correctTurbulence()
Correct the turbulence.
virtual ~phaseModel()
Destructor.
IOerror FatalIOError
Error stream (stdout output on all processes), with additional 'FOAM FATAL IO ERROR' header text and ...