40 template<
class BasicMomentumTransportModel>
43 omega_ =
max(omega_, k_/(this->nutMaxCoeff_*this->nu()));
47 template<
class BasicMomentumTransportModel>
50 this->nut_ = k_/omega_;
51 this->nut_.correctBoundaryConditions();
56 template<
class BasicMomentumTransportModel>
64 dimVolume*this->rho_.dimensions()*k_.dimensions()
71 template<
class BasicMomentumTransportModel>
87 template<
class BasicMomentumTransportModel>
110 betaStar_(
"betaStar", this->typeDict(
type), 0.09),
111 beta_(
"beta", this->typeDict(
type), 0.072),
112 gamma_(
"gamma", this->typeDict(
type), 0.52),
113 alphaK_(
"alphaK", this->typeDict(
type), 0.5),
114 alphaOmega_(
"alphaOmega", this->typeDict(
type), 0.5),
120 this->groupName(
"k"),
121 this->runTime_.
name(),
133 this->groupName(
"omega"),
134 this->runTime_.
name(),
150 template<
class BasicMomentumTransportModel>
155 betaStar_.readIfPresent(this->typeDict());
156 beta_.readIfPresent(this->typeDict());
157 gamma_.readIfPresent(this->typeDict());
158 alphaK_.readIfPresent(this->typeDict());
159 alphaOmega_.readIfPresent(this->typeDict());
170 template<
class BasicMomentumTransportModel>
173 if (!this->turbulence_)
206 omega_.boundaryFieldRef().updateCoeffs();
222 omegaEqn.
ref().relax();
224 omegaEqn.
ref().boundaryManipulate(omega_.boundaryFieldRef());
248 bound(k_, this->kMin_);
Bound the given scalar field where it is below the specified minimum.
static fvConstraints & New(const word &name, const fvMesh &mesh)
Construct and return the named DemandDrivenMeshObject.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Generic GeometricField class.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
Templated abstract base class for RAS turbulence models.
void boundOmega()
Bound omega.
virtual void correct()
Solve the turbulence equations and correct the turbulence viscosity.
kOmega(const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const viscosity &viscosity, const word &type=typeName)
Construct from components.
virtual tmp< fvScalarMatrix > omegaSource() const
Source term for the omega equation.
virtual void correctNut()
Correct the eddy-viscosity nut.
virtual tmp< fvScalarMatrix > kSource() const
Source term for the k equation.
virtual bool read()
Read RASProperties dictionary.
Eddy viscosity turbulence model base class.
Finite volume constraints.
bool constrain(fvMatrix< Type > &eqn) const
Apply constraints to an equation.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
tmp< fvMatrix< Type > > source(const VolField< Type > &field) const
Return source for an equation.
BasicMomentumTransportModel::alphaField alphaField
BasicMomentumTransportModel::rhoField rhoField
A class for managing temporary objects.
void clear() const
If object pointer points to valid object:
T & ref() const
Return non-const reference or generate a fatal error.
Abstract base class for all fluid physical properties.
A class for handling words, derived from string.
Foam::fvConstraints & fvConstraints(Foam::fvConstraints::New(mesh))
Foam::fvModels & fvModels(Foam::fvModels::New(mesh))
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
void correct(const RdeltaTType &rDeltaT, const RhoType &rho, volScalarField &psi, const surfaceScalarField &phiCorr, const SpType &Sp)
const dimensionedScalar G
Newtonian constant of gravitation.
const dimensionSet turbulentKineticEnergy
const dimensionSet turbulentOmega
tmp< VolField< typename outerProduct< vector, Type >::type > > grad(const SurfaceField< Type > &ssf)
tmp< VolField< Type > > div(const SurfaceField< Type > &ssf)
tmp< surfaceScalarField > absolute(const tmp< surfaceScalarField > &tphi, const volVectorField &U)
Return the given relative flux in absolute form.
tmp< fvMatrix< Type > > laplacian(const VolField< Type > &vf, const word &name)
tmp< fvMatrix< Type > > div(const surfaceScalarField &flux, const VolField< Type > &vf, const word &name)
tmp< fvMatrix< Type > > Sp(const volScalarField::Internal &, const VolField< Type > &)
tmp< fvMatrix< Type > > SuSp(const volScalarField::Internal &, const VolField< Type > &)
tmp< fvMatrix< Type > > ddt(const VolField< Type > &vf)
bool read(const char *, int32_t &)
const dimensionSet & dimVolume
const dimensionSet & dimTime
void dev(pointPatchField< tensor > &, const pointPatchField< tensor > &)
bool bound(volScalarField &, const dimensionedScalar &min)
Bound the given scalar field where it is below the specified min value.
word name(const LagrangianState state)
Return a string representation of a Lagrangian state enumeration.
void twoSymm(pointPatchField< tensor > &, const pointPatchField< tensor > &)
dimensioned< Type > max(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
SolverPerformance< Type > solve(fvMatrix< Type > &, const word &)
Solve returning the solution statistics given convergence tolerance.