40 template<
class BasicTurbulenceModel>
41 const IDDESDelta& kOmegaSSTIDDES<BasicTurbulenceModel>::setDelta()
const 43 if (!isA<IDDESDelta>(this->delta_()))
46 <<
"The delta function must be set to a " << IDDESDelta::typeName
50 return refCast<const IDDESDelta>(this->delta_());
54 template<
class BasicTurbulenceModel>
55 tmp<volScalarField> kOmegaSSTIDDES<BasicTurbulenceModel>::alpha()
const 57 return max(0.25 - this->y_/IDDESDelta_.hmax(), scalar(-5));
61 template<
class BasicTurbulenceModel>
62 tmp<volScalarField> kOmegaSSTIDDES<BasicTurbulenceModel>::ft
67 return tanh(
pow3(
sqr(Ct_)*this->r(this->nut_, magGradU)));
71 template<
class BasicTurbulenceModel>
72 tmp<volScalarField> kOmegaSSTIDDES<BasicTurbulenceModel>::fl
77 return tanh(
pow(
sqr(Cl_)*this->r(this->
nu(), magGradU), 10));
81 template<
class BasicTurbulenceModel>
82 tmp<volScalarField> kOmegaSSTIDDES<BasicTurbulenceModel>::fdt
87 return 1 -
tanh(
pow(Cdt1_*this->r(this->nut_, magGradU), Cdt2_));
93 template<
class BasicTurbulenceModel>
119 fdTilda*(1 + fe)*lRAS + (1 - fdTilda)*lLES,
127 fdTilda*lRAS + (1 - fdTilda)*lLES,
135 template<
class BasicTurbulenceModel>
138 const alphaField&
alpha,
144 const word& propertiesName,
206 IDDESDelta_(setDelta())
208 if (
type == typeName)
210 this->printCoeffs(
type);
217 template<
class BasicTurbulenceModel>
222 Cdt1_.readIfPresent(this->coeffDict());
223 Cdt2_.readIfPresent(this->coeffDict());
224 Cl_.readIfPresent(this->coeffDict());
225 Ct_.readIfPresent(this->coeffDict());
234 template<
class BasicTurbulenceModel>
dimensionedScalar tanh(const dimensionedScalar &ds)
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh >> grad(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
virtual bool read()
Re-read model coefficients if they have changed.
errorManipArg< error, int > exit(error &err, const int errNo=1)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
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.
virtual tmp< volScalarField > fd() const
Return the shielding function.
Generic dimensioned Type class.
virtual tmp< volScalarField > dTilda(const volScalarField &magGradU, const volScalarField &CDES) const
Return the length scale.
dimensionedScalar neg(const dimensionedScalar &ds)
GeometricField< scalar, fvPatchField, volMesh > volScalarField
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
dimensionedScalar exp(const dimensionedScalar &ds)
A class for handling words, derived from Foam::string.
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
dimensionedScalar pos0(const dimensionedScalar &ds)
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
dimensionedScalar pow3(const dimensionedScalar &ds)
k-omega-SST DES turbulence model for incompressible and compressible flows.
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
Base-class for all transport models used by the incompressible turbulence models. ...
A class for managing temporary objects.
const dimensionedScalar alpha
Fine-structure constant: default SI units: [].
k-omega-SST IDDES turbulence model for incompressible and compressible flows.
virtual bool read()
Re-read model coefficients if they have changed.