diff --git a/src/TurbulenceModels/turbulenceModels/DES/SpalartAllmarasDDES/SpalartAllmarasDDES.C b/src/TurbulenceModels/turbulenceModels/DES/SpalartAllmarasDDES/SpalartAllmarasDDES.C index ce6c40c0fe..b744117066 100644 --- a/src/TurbulenceModels/turbulenceModels/DES/SpalartAllmarasDDES/SpalartAllmarasDDES.C +++ b/src/TurbulenceModels/turbulenceModels/DES/SpalartAllmarasDDES/SpalartAllmarasDDES.C @@ -99,16 +99,11 @@ tmp SpalartAllmarasDDES::dTilda { const volScalarField& lRAS(this->y_); const volScalarField lLES(this->lengthScaleLES(chi, fv1)); + const dimensionedScalar l0(dimLength, Zero); return max ( - lRAS - - fd(mag(gradU)) - *max - ( - lRAS - lLES, - dimensionedScalar(dimLength, Zero) - ), + lRAS - fd(mag(gradU))*max(lRAS - lLES, l0), dimensionedScalar("small", dimLength, SMALL) ); } diff --git a/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDDES/kOmegaSSTDDES.C b/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDDES/kOmegaSSTDDES.C index 85360269ea..445c4de7fe 100644 --- a/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDDES/kOmegaSSTDDES.C +++ b/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDDES/kOmegaSSTDDES.C @@ -64,13 +64,12 @@ tmp kOmegaSSTDDES::S2 { volScalarField& S2 = tS2.ref(); const volScalarField CDES(this->CDES(F1)); - const volScalarField& k = this->k_; - const volScalarField& omega = this->omega_; const volScalarField Ssigma(this->Ssigma(gradU)); + S2 -= ( fd(mag(gradU)) - *pos(sqrt(k)/(this->betaStar_*omega) - CDES*this->delta()) + *pos(this->lengthScaleRAS() - this->lengthScaleLES(CDES)) *(S2 - sqr(Ssigma)) ); } @@ -86,21 +85,13 @@ tmp kOmegaSSTDDES::dTilda const volScalarField& CDES ) const { - const volScalarField& k = this->k_; - const volScalarField& omega = this->omega_; - - const volScalarField lRAS(sqrt(k)/(this->betaStar_*omega)); - const volScalarField lLES(CDES*this->delta()); + const volScalarField lRAS(this->lengthScaleRAS()); + const volScalarField lLES(this->lengthScaleLES(CDES)); + const dimensionedScalar l0(dimLength, Zero); return max ( - lRAS - - fd(magGradU) - *max - ( - lRAS - lLES, - dimensionedScalar(dimLength, Zero) - ), + lRAS - fd(magGradU)*max(lRAS - lLES, l0), dimensionedScalar("small", dimLength, SMALL) ); } @@ -119,14 +110,12 @@ tmp kOmegaSSTDDES::GbyNu0 if (useSigma_) { volScalarField::Internal& GbyNu0 = tGbyNu0.ref(); - const volScalarField::Internal CDES(this->CDES(F1)()()); - const volScalarField::Internal& k = this->k_(); - const volScalarField::Internal& omega = this->omega_(); + const volScalarField CDES(this->CDES(F1)); GbyNu0 -= fd(mag(gradU))()() - *pos(sqrt(k)/(this->betaStar_*omega) - CDES*this->delta()()) - *(GbyNu0 - S2); + *pos(this->lengthScaleRAS()()() - this->lengthScaleLES(CDES)()()) + *(GbyNu0 - S2()); } return tGbyNu0; diff --git a/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDES/kOmegaSSTDES.C b/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDES/kOmegaSSTDES.C index b6093839d4..7518509a30 100644 --- a/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDES/kOmegaSSTDES.C +++ b/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDES/kOmegaSSTDES.C @@ -82,10 +82,7 @@ tmp kOmegaSSTDES::dTilda const volScalarField& CDES ) const { - const volScalarField& k = this->k_; - const volScalarField& omega = this->omega_; - - return min(CDES*this->delta(), sqrt(k)/(this->betaStar_*omega)); + return min(lengthScaleLES(CDES), lengthScaleRAS()); } @@ -202,6 +199,28 @@ bool kOmegaSSTDES::read() } +template +Foam::tmp +kOmegaSSTDES::lengthScaleRAS() const +{ + const volScalarField& k = this->k_; + const volScalarField& omega = this->omega_; + + return sqrt(k)/(this->betaStar_*omega); +} + + +template +Foam::tmp +kOmegaSSTDES::lengthScaleLES +( + const volScalarField& CDES +) const +{ + return CDES*this->delta(); +} + + template tmp kOmegaSSTDES::LESRegion() const { @@ -219,15 +238,7 @@ tmp kOmegaSSTDES::LESRegion() const return tmp::New ( IOobject::scopedName("DES", "LESRegion"), - neg - ( - dTilda - ( - mag(fvc::grad(U)), - F1*CDESkom_ + (1 - F1)*CDESkeps_ - ) - - sqrt(k)/(this->betaStar_*omega) - ) + neg(dTilda(mag(fvc::grad(U)), CDES(F1)) - lengthScaleRAS()) ); } diff --git a/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDES/kOmegaSSTDES.H b/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDES/kOmegaSSTDES.H index 08eecbf236..fd7d9b7587 100644 --- a/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDES/kOmegaSSTDES.H +++ b/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTDES/kOmegaSSTDES.H @@ -169,6 +169,15 @@ public: //- Re-read model coefficients if they have changed virtual bool read(); + //- RAS length scale + virtual tmp lengthScaleRAS() const; + + //- LES length scale + virtual tmp lengthScaleLES + ( + const volScalarField& CDES + ) const; + //- Return the LES field indicator virtual tmp LESRegion() const; }; diff --git a/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTIDDES/kOmegaSSTIDDES.C b/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTIDDES/kOmegaSSTIDDES.C index 268935f45e..7340e3b9be 100644 --- a/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTIDDES/kOmegaSSTIDDES.C +++ b/src/TurbulenceModels/turbulenceModels/DES/kOmegaSSTIDDES/kOmegaSSTIDDES.C @@ -97,11 +97,8 @@ tmp kOmegaSSTIDDES::dTilda const volScalarField& CDES ) const { - const volScalarField& k = this->k_; - const volScalarField& omega = this->omega_; - - const volScalarField lRAS(sqrt(k)/(this->betaStar_*omega)); - const volScalarField lLES(CDES*this->delta()); + const volScalarField lRAS(this->lengthScaleRAS()); + const volScalarField lLES(this->lengthScaleLES(CDES)); const volScalarField alpha(this->alpha()); const volScalarField expTerm(exp(sqr(alpha)));