32 template<
class BasePhaseModel>
33 template<
class Type,
template<
class>
class PatchField,
class GeoMesh>
48 IOobject::groupName(
name, this->
name()),
59 template<
class BasePhaseModel>
73 template<
class BasePhaseModel>
89 template<
class BasePhaseModel>
93 const word& phaseName,
97 BasePhaseModel(
fluid, phaseName, index)
103 template<
class BasePhaseModel>
110 template<
class BasePhaseModel>
117 template<
class BasePhaseModel>
122 <<
"Cannot construct a momentum equation for a stationary phase" 129 template<
class BasePhaseModel>
134 <<
"Cannot construct a momentum equation for a stationary phase" 141 template<
class BasePhaseModel>
145 return zeroVolField<vector>(
"U",
dimVelocity,
true);
149 template<
class BasePhaseModel>
154 <<
"Cannot access the velocity of a stationary phase" 161 template<
class BasePhaseModel>
169 template<
class BasePhaseModel>
174 <<
"Cannot access the flux of a stationary phase" 181 template<
class BasePhaseModel>
189 template<
class BasePhaseModel>
194 <<
"Cannot access the volumetric flux of a stationary phase" 201 template<
class BasePhaseModel>
209 template<
class BasePhaseModel>
214 <<
"Cannot access the mass flux of a stationary phase" 221 template<
class BasePhaseModel>
229 template<
class BasePhaseModel>
237 template<
class BasePhaseModel>
245 template<
class BasePhaseModel>
253 template<
class BasePhaseModel>
261 template<
class BasePhaseModel>
269 template<
class BasePhaseModel>
277 template<
class BasePhaseModel>
284 <<
"Cannot set the dilatation rate of a stationary phase" 289 template<
class BasePhaseModel>
297 template<
class BasePhaseModel>
301 return this->
thermo().mu();
305 template<
class BasePhaseModel>
309 return zeroVolField<scalar>(
"continuityError",
dimViscosity);
313 template<
class BasePhaseModel>
317 return this->
thermo().nu();
321 template<
class BasePhaseModel>
325 return this->
thermo().kappa();
329 template<
class BasePhaseModel>
333 return this->
thermo().kappa(patchi);
337 template<
class BasePhaseModel>
341 return this->
thermo().alpha();
345 template<
class BasePhaseModel>
349 return this->
thermo().alpha(patchi);
353 template<
class BasePhaseModel>
361 template<
class BasePhaseModel>
365 return zeroVolField<scalar>(
"pPrime",
dimPressure);
virtual tmp< volScalarField > k() const
Return the turbulent kinetic energy.
virtual tmp< fvVectorMatrix > UfEqn()
Return the momentum equation for the face-based algorithm.
errorManipArg< error, int > exit(error &err, const int errNo=1)
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
virtual tmp< volScalarField > divU() const
Return the phase dilatation rate (d(alpha)/dt + div(alpha*phi))
virtual tmp< volScalarField > muEff() const
Return the effective dynamic viscosity.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
const dimensionSet dimViscosity
virtual tmp< volScalarField > continuityError() const
Return the continuity error.
virtual volVectorField & URef()
Access the velocity.
virtual surfaceScalarField & alphaRhoPhiRef()
Access the mass flux of the phase.
Generic GeometricField class.
Generic dimensioned Type class.
virtual tmp< volScalarField > K() const
Return the phase kinetic energy.
const dimensionSet dimDynamicViscosity
virtual tmp< volVectorField > DUDt() const
Return the substantive acceleration.
virtual tmp< volScalarField > continuityErrorSources() const
Return the continuity error due to any sources.
psiReactionThermo & thermo
virtual tmp< fvVectorMatrix > UEqn()
Return the momentum equation.
const dimensionSet dimVolume(pow3(dimLength))
Dimension set for the base types, which can be used to implement rigorous dimension checking for alge...
virtual tmp< surfaceScalarField > alphaRhoPhi() const
Return the mass flux of the phase.
Class which represents a stationary (and therefore probably solid) phase. Generates, but does not store, zero velocity and flux field and turbulent qauantities. Throws an error when non-const access is requested to the motion fields or when the momentum equation is requested. Usage must must protect against such calls.
virtual tmp< volScalarField > continuityErrorFlow() const
Return the continuity error due to the flow field.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for expressions::valueTypeCode::INVALID.
virtual surfaceScalarField & alphaPhiRef()
Access the volumetric flux of the phase.
Class to represent a system of phases and model interfacial transfers between them.
A class representing the concept of a field of 0 used to avoid unnecessary manipulations for objects ...
virtual surfaceScalarField & phiRef()
Access the volumetric flux.
virtual bool stationary() const
Return whether the phase is stationary.
A class for handling words, derived from Foam::string.
virtual tmp< volScalarField > nuEff() const
Return the effective kinematic viscosity.
virtual tmp< volScalarField > pPrime() const
Return the phase-pressure'.
const dimensionSet dimPressure
virtual tmp< surfaceScalarField > DUDtf() const
Return the substantive acceleration on the faces.
virtual ~StationaryPhaseModel()
Destructor.
virtual tmp< volVectorField > U() const
Return the velocity.
virtual tmp< volScalarField > nut() const
Return the turbulent kinematic viscosity.
virtual tmp< volScalarField > kappaEff() const
Return the effective thermal conductivity.
const dimensionSet dimDensity
virtual tmp< surfaceScalarField > phi() const
Return the volumetric flux.
virtual tmp< volScalarField > mut() const
Return the turbulent dynamic viscosity.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
virtual tmp< surfaceScalarField > alphaPhi() const
Return the volumetric flux of the phase.
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
Generic mesh wrapper used by volMesh, surfaceMesh, pointMesh etc.
A class for managing temporary objects.
virtual tmp< volScalarField > alphaEff() const
Return the effective thermal diffusivity.
Defines the attributes of an object for which implicit objectRegistry management is supported...
const dimensionSet dimArea(sqr(dimLength))
StationaryPhaseModel(const phaseSystem &fluid, const word &phaseName, const label index)
static constexpr const zero Zero
Global zero (0)
const dimensionSet dimVelocity