From 1a1c6d392c867575b7303e5c9e8783cf522f1cc8 Mon Sep 17 00:00:00 2001 From: Henry <Henry> Date: Fri, 30 Nov 2012 13:24:52 +0000 Subject: [PATCH] =?UTF-8?q?RAS/kOmegaSST:=20Added=20F3=20coefficient=20for?= =?UTF-8?q?=20rough-walls=20from=20=20=20=20=20=20=20=20=20Hellsten,=20A.?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20"Some=20Improvements=20in=20Menter?= =?UTF-8?q?=E2=80=99s=20k-omega-SST=20turbulence=20model"=20=20=20=20=20?= =?UTF-8?q?=20=20=20=2029th=20AIAA=20Fluid=20Dynamics=20Conference,=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20AIAA-98-2554,=20=20=20=20=20=20=20=20=20Ju?= =?UTF-8?q?ne=201998.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../incompressible/RAS/kOmegaSST/kOmegaSST.C | 25 +++++++++++++++++-- .../incompressible/RAS/kOmegaSST/kOmegaSST.H | 21 +++++++++++----- 2 files changed, 38 insertions(+), 8 deletions(-) diff --git a/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.C b/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.C index 02899ec4c9b..e48bc0ae45f 100644 --- a/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.C +++ b/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.C @@ -85,6 +85,18 @@ tmp<volScalarField> kOmegaSST::F2() const } +tmp<volScalarField> kOmegaSST::F3() const +{ + tmp<volScalarField> arg3 = min + ( + 150*nu()/(omega_*sqr(y_)), + scalar(10) + ); + + return 1 - tanh(pow4(arg3)); +} + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // kOmegaSST::kOmegaSST @@ -188,6 +200,15 @@ kOmegaSST::kOmegaSST 0.31 ) ), + b1_ + ( + dimensioned<scalar>::lookupOrAddToDict + ( + "b1", + coeffDict_, + 1.0 + ) + ), c1_ ( dimensioned<scalar>::lookupOrAddToDict @@ -246,7 +267,7 @@ kOmegaSST::kOmegaSST / max ( a1_*omega_, - F2()*sqrt(2.0)*mag(symm(fvc::grad(U_))) + b1_*F2()*F3()*sqrt(2.0)*mag(symm(fvc::grad(U_))) ) ); nut_.correctBoundaryConditions(); @@ -416,7 +437,7 @@ void kOmegaSST::correct() // Re-calculate viscosity - nut_ = a1_*k_/max(a1_*omega_, F2()*sqrt(S2)); + nut_ = a1_*k_/max(a1_*omega_, b1_*F2()*F3()*sqrt(S2)); nut_.correctBoundaryConditions(); } diff --git a/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.H b/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.H index 7b2580094e1..88feb733bc1 100644 --- a/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.H +++ b/src/turbulenceModels/incompressible/RAS/kOmegaSST/kOmegaSST.H @@ -24,19 +24,25 @@ License Class Foam::incompressible::RASModels::kOmegaSST -Group - grpIcoRASTurbulence - Description Implementation of the k-omega-SST turbulence model for incompressible flows. Turbulence model described in: \verbatim - Menter, F., Esch, T. - "Elements of Industrial Heat Transfer Prediction" + Menter, F., Esch, T., + "Elements of Industrial Heat Transfer Prediction", 16th Brazilian Congress of Mechanical Engineering (COBEM), - Nov. 2001 + Nov. 2001. + \endverbatim + + with the addition of the F3 term for rough walls from + \verbatim + Hellsten, A. + "Some Improvements in Menter’s k-omega-SST turbulence model" + 29th AIAA Fluid Dynamics Conference, + AIAA-98-2554, + June 1998. \endverbatim Note that this implementation is written in terms of alpha diffusion @@ -69,6 +75,7 @@ Description gamma1 0.5532; gamma2 0.4403; a1 0.31; + b1 1.0; c1 10.0; } \endverbatim @@ -122,6 +129,7 @@ protected: dimensionedScalar betaStar_; dimensionedScalar a1_; + dimensionedScalar b1_; dimensionedScalar c1_; //- Wall distance field @@ -139,6 +147,7 @@ protected: tmp<volScalarField> F1(const volScalarField& CDkOmega) const; tmp<volScalarField> F2() const; + tmp<volScalarField> F3() const; tmp<volScalarField> blend ( -- GitLab