41 template<
class BasicTurbulenceModel>
48 BasicTurbulenceModel::correctNut();
52 template<
class BasicTurbulenceModel>
59 template<
class BasicTurbulenceModel>
69 min(nur/(
max(magGradU, eps)*
sqr(this->kappa_*this->y_)), scalar(10));
71 tr.ref().boundaryFieldRef() == 0;
77 template<
class BasicTurbulenceModel>
106 pos(dTilda - lengthScaleRAS)*S2
107 + (scalar(1) -
pos(dTilda - lengthScaleRAS))*
sqr(Ssigma);
114 template<
class BasicTurbulenceModel>
121 return min(lengthScaleLES(CDES), lengthScaleRAS());
125 template<
class BasicTurbulenceModel>
133 return sqrt(this->k_())/dTilda(
mag(gradU), CDES)()();
137 template<
class BasicTurbulenceModel>
154 template<
class BasicTurbulenceModel>
168 template<
class BasicTurbulenceModel>
171 const alphaField&
alpha,
177 const word& propertiesName,
234 if (
type == typeName)
237 <<
"This model is not recommended and will be deprecated in future " 238 <<
"releases. Please consider using the DDES/IDDES versions instead" 241 this->printCoeffs(
type);
248 template<
class BasicTurbulenceModel>
253 useSigma_.readIfPresent(
"useSigma", this->coeffDict());
254 kappa_.readIfPresent(this->coeffDict());
255 CDESkom_.readIfPresent(this->coeffDict());
256 CDESkeps_.readIfPresent(this->coeffDict());
265 template<
class BasicTurbulenceModel>
272 return sqrt(
k)/(this->betaStar_*omega);
276 template<
class BasicTurbulenceModel>
283 return CDES*this->
delta();
287 template<
class BasicTurbulenceModel>
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh >> grad(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
T & ref() const
Return non-const reference to the contents of a non-null managed pointer.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
virtual tmp< volScalarField::Internal > GbyNu0(const volTensorField &gradU, const volScalarField &S2) const
Return (G/nu)_0.
dimensionedScalar sqrt(const dimensionedScalar &ds)
Ostream & endl(Ostream &os)
Add newline and flush stream.
A simple wrapper around bool so that it can be read as a word: true/false, on/off, yes/no, any/none. Also accepts 0/1 as a string and shortcuts t/f, y/n.
Base class implementation of the k-omega-SST turbulence model for incompressible and compressible flo...
virtual tmp< volScalarField > dTilda(const volScalarField &magGradU, const volScalarField &CDES) const
Return length scale.
label k
Boltzmann constant.
virtual void correctNut()
dimensionedScalar neg(const dimensionedScalar &ds)
bool read(const char *buf, int32_t &val)
Same as readInt32.
virtual tmp< volScalarField::Internal > epsilonByk(const volScalarField &F1, const volTensorField &gradU) const
Return epsilon/k.
dimensionedScalar pos(const dimensionedScalar &ds)
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
static word scopedName(const std::string &scope, const word &name)
Create scope:name or scope_name string.
virtual tmp< volScalarField::Internal > GbyNu(const volScalarField::Internal &GbyNu0, const volScalarField::Internal &F2, const volScalarField::Internal &S2) const
Return G/nu.
virtual tmp< volScalarField > LESRegion() const
Return the LES field indicator.
A class for handling words, derived from Foam::string.
tmp< volScalarField > r(const volScalarField &nur, const volScalarField &magGradU) const
static tmp< T > New(Args &&... args)
Construct tmp with forwarding arguments.
dimensionedScalar tr(const dimensionedSphericalTensor &dt)
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
virtual tmp< volScalarField > lengthScaleRAS() const
RAS length scale.
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.
k-omega-SST DES turbulence model for incompressible and compressible flows.
#define WarningInFunction
Report a warning using Foam::Warning.
dimensionedSymmTensor symm(const dimensionedSymmTensor &dt)
Base-class for all transport models used by the incompressible turbulence models. ...
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
A class for managing temporary objects.
const dimensionedScalar alpha
Fine-structure constant: default SI units: [].
virtual tmp< volScalarField > lengthScaleLES(const volScalarField &CDES) const
LES length scale.
Templated abstract base class for DES models.
dimensioned< typename typeOfMag< Type >::type > magSqr(const dimensioned< Type > &dt)
virtual tmp< volScalarField > S2(const volTensorField &gradU) const
Return square of strain rate.
const dimensionSet & dimensions() const noexcept
Return dimensions.
virtual bool read()
Re-read model coefficients if they have changed.