31#include "twoPhaseSystem.H"
32#include "virtualMassModel.H"
44template<
class BasicTurbulenceModel>
45continuousGasKEpsilon<BasicTurbulenceModel>::continuousGasKEpsilon
53 const word& propertiesName,
57 kEpsilon<BasicTurbulenceModel>
69 liquidTurbulencePtr_(
nullptr),
76 this->runTime_.timeName(),
96 this->printCoeffs(
type);
103template<
class BasicTurbulenceModel>
108 alphaInversion_.readIfPresent(this->coeffDict());
117template<
class BasicTurbulenceModel>
137 exp(
min(thetal/thetag, scalar(50))),
148template<
class BasicTurbulenceModel>
152 if (!liquidTurbulencePtr_)
161 liquidTurbulencePtr_ =
172 return *liquidTurbulencePtr_;
176template<
class BasicTurbulenceModel>
186 (this->alpha_ - scalar(0.5))/(alphaInversion_ - 0.5),
199 + (1.0 - blend)*rhoEff()*nutEff_/this->transport().
rho()
206template<
class BasicTurbulenceModel>
228template<
class BasicTurbulenceModel>
233 const alphaField&
alpha = this->alpha_;
234 const rhoField&
rho = this->rho_;
240 max(alphaInversion_ -
alpha, scalar(0))
244 liquidTurbulence.
epsilon()/liquidTurbulence.
k(),
245 1.0/
U.time().deltaT()
251template<
class BasicTurbulenceModel>
256 const volScalarField phaseTransferCoeff(this->phaseTransferCoeff());
264template<
class BasicTurbulenceModel>
269 const volScalarField phaseTransferCoeff(this->phaseTransferCoeff());
277template<
class BasicTurbulenceModel>
290 this->runTime_.timeName(),
296 tk().boundaryField().types()
@ NO_READ
Nothing to be read.
@ READ_IF_PRESENT
Reading is optional [identical to LAZY_READ].
@ NO_WRITE
Ignore writing from objectRegistry::writeObject().
@ AUTO_WRITE
Automatically write from objectRegistry::writeObject().
Defines the attributes of an object for which implicit objectRegistry management is supported,...
static word group(const word &name)
Return group (extension part of name).
static word groupName(StringType base, const word &group)
Create dot-delimited name.group string.
BasicTurbulenceModel::alphaField alphaField
virtual tmp< fvScalarMatrix > epsilonSource() const
const turbulenceModel & liquidTurbulence() const
Return the turbulence model for the liquid phase.
BasicTurbulenceModel::rhoField rhoField
virtual tmp< volScalarField > nuEff() const
Return the effective viscosity.
dimensionedScalar alphaInversion_
tmp< volScalarField > phaseTransferCoeff() const
virtual tmp< volScalarField > rhoEff() const
Return the effective density for the stress.
virtual tmp< volSymmTensorField > R() const
Return the Reynolds stress tensor.
virtual void correctNut()
virtual tmp< fvScalarMatrix > kSource() const
BasicTurbulenceModel::transportModel transportModel
virtual bool read()
Re-read model coefficients if they have changed.
virtual void correctNut()
virtual bool read()
Re-read model coefficients if they have changed.
Generic dimensioned Type class.
static dimensioned< Type > getOrAddToDict(const word &name, dictionary &dict, const dimensionSet &dims=dimless, const Type &deflt=Type(Zero))
Construct dimensioned from dictionary, with default value.
void correct(GeometricField< Type, PatchField, GeoMesh > &field)
Apply correction to field.
static options & New(const fvMesh &mesh)
Construct fvOptions and register to database if not present otherwise lookup and return.
Generic thermophysical properties class for a liquid in which the functions and coefficients for each...
scalar rho(scalar p, scalar T) const
Liquid density [kg/m^3].
A class for managing temporary objects.
Base-class for all transport models used by the incompressible turbulence models.
Abstract base class for turbulence models (RAS, LES and laminar).
static const word propertiesName
Default name of the turbulence properties dictionary.
virtual tmp< volScalarField > k() const =0
Return the turbulence kinetic energy.
virtual tmp< volScalarField > epsilon() const =0
Return the turbulence kinetic energy dissipation rate.
Class which solves the volume fraction equations for two phases.
virtual tmp< volScalarField > Cvm() const =0
Return the virtual mass coefficient.
A class for handling words, derived from Foam::string.
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > grad(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
zeroField Sp(const Foam::zero, const GeometricField< Type, fvPatchField, volMesh > &)
A no-op source.
Type & refCast(U &obj)
A dynamic_cast (for references) to Type reference.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
dimensionedScalar exp(const dimensionedScalar &ds)
GeometricField< vector, fvPatchField, volMesh > volVectorField
dimensionedSymmTensor sqr(const dimensionedVector &dv)
GeometricField< scalar, fvPatchField, volMesh > volScalarField
SymmTensor< Cmpt > devTwoSymm(const SymmTensor< Cmpt > &st)
Return the deviatoric part of twice the symmetric part of a SymmTensor.
static const Identity< scalar > I
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
const word GlobalIOList< Tuple2< scalar, vector > >::typeName("scalarVectorTable")
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
GeometricField< symmTensor, fvPatchField, volMesh > volSymmTensorField