CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Programming & Development (https://www.cfd-online.com/Forums/openfoam-programming-development/)
-   -   kOmegaSST: bounding of arg1 and arg2 (https://www.cfd-online.com/Forums/openfoam-programming-development/80413-komegasst-bounding-arg1-arg2.html)

FelixL September 24, 2010 14:54

kOmegaSST: bounding of arg1 and arg2
 
Hello, fellow Foamers,


I'm currently investigating the (incompressible) kOmegaSST turbulence model with respect to it's behaviour on different grid resolutions using a simple 2D zero pressure gradient flat plate testcase. While studying the implementation of said turbulence model in OpenFOAM 1.7.1 I stumbled across something I can't explain:

The arguments arg1 and arg2 are implemented as follows:

Code:

    volScalarField arg1 = min
    (
        min
        (
            max
            (
                (scalar(1)/betaStar_)*sqrt(k_)/(omega_*y_),
                scalar(500)*nu()/(sqr(y_)*omega_)
            ),
            (4*alphaOmega2_)*k_/(CDkOmegaPlus*sqr(y_))
        ),
        scalar(10)
    );

and

Code:

    volScalarField arg2 = min
    (
        max
        (
            (scalar(2)/betaStar_)*sqrt(k_)/(omega_*y_),
            scalar(500)*nu()/(sqr(y_)*omega_)
        ),
        scalar(100)
    );

Both arguments are used for the blending functions F1 and F2 respectively, which blend between the k-omega and k-epsilon turbulence models with increasing wall distance.


What puzzles me is that both arg1 and arg2 are being bounded to the minimum values 10 and 100 respectively, resulting in F1 and F2 always having the value 1 - regardless of the properties of the flow. This leads to the fact that the kOmegaSST-model implemented in OpenFOAM only uses the k-omega approach and forfeits the blending between k-omega and k-epsilon which was the original motivation of the SST turbulence model.

What's the reason for omitting the blending mechanism in OpenFOAM? Is this intended or am I missing something?

I'll be grateful for any kind of clarification.

Greetings,
Felix.

Simon Lapointe September 24, 2010 15:12

Hi,

arg1 and arg2 are not bounded to minimum values of 10 and 100 but rather to maximum values. The min(a,b) function returns the smallest value between "a" and "b", so the value arg1 can't be higher than 10 and that of arg2 can't be higher than 100.

FelixL September 24, 2010 15:16

Hey, there,


my bad, thank you very much for the explanation! All the mins and maxs must've gotten me confused. That makes much more sense, thanks again.


Greetings.


All times are GMT -4. The time now is 14:22.