27 #include "surfaceInterpolate.H"
72 bool incompressible =
true;
77 incompressible && phases_[phasei].thermo().incompressible();
80 return incompressible;
89 for (
label phasei=1; phasei<phases_.size(); phasei++)
91 mu += phases_[phasei].Alpha()*phases_[phasei].thermo().mu();
105 phases_[0].Alpha().boundaryField()[
patchi]
109 for (
label phasei=1; phasei<phases_.size(); phasei++)
112 phases_[phasei].Alpha().boundaryField()[
patchi]
113 *phases_[phasei].thermo().mu().boundaryField()[
patchi];
116 return mu/rho_.boundaryField()[
patchi];
128 for (
label phasei=1; phasei<phases_.size(); phasei++)
131 phases_[phasei]*phases_[phasei].thermo().psi()
132 /phases_[phasei].thermo().rho();
153 for (
label phasei=1; phasei<phases_.size(); phasei++)
158 phases_[phasei].thermo().kappa()
159 + phases_[phasei].thermo().rho()*phases_[phasei].thermo().Cp()*
nut
172 for (
label phasei=1; phasei<phases_.size(); phasei++)
174 trCv.
ref() += phases_[phasei]/phases_[phasei].thermo().Cv();
185 phases_[phasei].correct(
p(),
T());
192 rho_ = phases_[0]*phases_[0].thermo().rho();
194 for (
label phasei=1; phasei<phases_.size(); phasei++)
196 rho_ += phases_[phasei]*phases_[phasei].thermo().rho();
201 phases_[phasei].Alpha() =
202 phases_[phasei]*phases_[phasei].thermo().rho()/rho_;
216 phases_[phasei].thermo().rho() += phases_[phasei].thermo().psi()*dp;
scalar Cp(const scalar p, const scalar T) const
scalar Cv(const scalar p, const scalar T) const
#define forAll(list, i)
Loop across all elements in list.
Generic GeometricField class.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
virtual const volScalarField & Cv() const =0
Heat capacity at constant volume [J/kg/K].
Compressible multiphase mixture for interface-capturing simulations.
tmp< volScalarField > rCv() const
Return the phase-averaged reciprocal Cv.
virtual void correctThermo()
Correct the thermodynamics of each phase.
virtual void correct()
Update properties.
virtual tmp< volScalarField > nu() const
Return the kinematic laminar viscosity.
virtual tmp< volScalarField > alphaEff(const volScalarField &nut) const
Return the effective temperature transport coefficient.
virtual tmp< volScalarField > psiByRho() const
Return the mixture compressibility/density.
compressibleMultiphaseVoFMixture(const fvMesh &mesh)
Construct from fvMesh.
void correctRho(const volScalarField &dp)
Update densities for given pressure change.
bool incompressible() const
Return true if all phases are incompressible.
Single compressible phase derived from the VoFphase.
Mesh data needed to do the Finite Volume discretisation.
Multiphase VoF mixture with support for interface properties.
A class for managing temporary objects.
T & ref() const
Return non-const reference or generate a fatal error.
const volScalarField & psi
const dimensionedScalar kappa
Coulomb constant: default SI units: [N.m2/C2].
const dimensionedScalar mu
Atomic mass unit.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
word name(const bool)
Return a word representation of a bool.
const dimensionSet dimDensity
defineTypeNameAndDebug(combustionModel, 0)
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
fluidMulticomponentThermo & thermo