54 const word& sourceName,
55 const word& modelType,
61 phaseName_(
dict.lookupOrDefault(
"phase",
word::null)),
83 fieldName_ = epsilonName;
87 fieldName_ = omegaName;
92 <<
"Cannot find either " << epsilonName <<
" or " << omegaName
119 mixture_.alpha1()()*
sqr(mixture_.nuModel1().nu()()())
120 + mixture_.alpha2()()*
sqr(mixture_.nuModel2().nu()()())
123 if (field.
name() ==
"epsilon")
125 eqn += mixture_.interfaceFraction()*C2_*aSqrnu*turbulence_.k()()
128 else if (field.
name() ==
"omega")
130 eqn += mixture_.interfaceFraction()*beta_*aSqrnu/(
sqr(betaStar_)
136 <<
"Support for field " << field.
name() <<
" is not implemented"
157 if (mixture_.alpha1().name() ==
alpha.name())
159 taSqrnu = mixture_.alpha1()()*
sqr(mixture_.nuModel1().nu()()());
161 else if (mixture_.alpha2().name() ==
alpha.name())
163 taSqrnu = mixture_.alpha2()()*
sqr(mixture_.nuModel2().nu()()());
168 <<
"Unknown phase-fraction " <<
alpha.name()
174 eqn += mixture_.interfaceFraction()*C2_*taSqrnu*turbulence_.k()()
179 eqn += mixture_.interfaceFraction()*beta_*taSqrnu
180 /(
sqr(betaStar_)*
pow4(delta_));
185 <<
"Support for field " << field.
name() <<
" is not implemented"
Macros for easy insertion into run-time selection tables.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Generic GeometricField class.
const word & name() const
Return name.
static word groupName(Name name, const word &group)
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
Mesh data needed to do the Finite Volume discretisation.
Finite volume model abstract base class.
const fvMesh & mesh() const
Return const access to the mesh database.
Free-surface turbulence damping function.
virtual bool movePoints()
Update for mesh motion.
virtual wordList addSupFields() const
Return the list of fields for which the option adds source term.
VoFTurbulenceDamping(const word &sourceName, const word &modelType, const fvMesh &mesh, const dictionary &dict)
Construct from explicit source name and mesh.
virtual void addSup(const volScalarField &field, fvMatrix< scalar > &eqn) const
Add explicit contribution to epsilon or omega equation.
virtual void topoChange(const polyTopoChangeMap &)
Update topology using the given map.
virtual void distribute(const polyDistributionMap &)
Redistribute or update using the given distribution map.
virtual void mapMesh(const polyMeshMap &)
Update from another mesh using the given map.
Base class for single-phase incompressible turbulence models.
Class to represent a mixture of two constant density phases.
bool foundObject(const word &name) const
Is the named Type in registry.
Class containing mesh-to-mesh mapping information after a mesh distribution where we send parts of me...
Class containing mesh-to-mesh mapping information.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
A class for managing temporary objects.
A class for handling words, derived from string.
Foam::fvMesh mesh(Foam::IOobject(regionName, runTime.name(), runTime, Foam::IOobject::MUST_READ), false)
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
addToRunTimeSelectionTable(fvConstraint, bound, dictionary)
defineTypeNameAndDebug(bound, 0)
errorManipArg< error, int > exit(error &err, const int errNo=1)
List< word > wordList
A List of words.
Ostream & endl(Ostream &os)
Add newline and flush stream.
const dimensionSet dimless
const dimensionSet dimLength
void pow4(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
void sqr(LagrangianPatchField< typename outerProduct< Type, Type >::type > &f, const LagrangianPatchField< Type > &f1)
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.