diff --git a/dumux/freeflow/rans/oneeq/volumevariables.hh b/dumux/freeflow/rans/oneeq/volumevariables.hh index c37b1f502ccbb9e1ec34e7503beb7990054341b0..207233d82d465a82e8b0352a772d05e0686b4f33 100644 --- a/dumux/freeflow/rans/oneeq/volumevariables.hh +++ b/dumux/freeflow/rans/oneeq/volumevariables.hh @@ -234,11 +234,29 @@ public: //! \brief Returns a modified version of the stress tensor scalar product Scalar stressTensorScalarProductTilde() const { -// return std::max(0.3 * vorticityMagnitude(), -// vorticityMagnitude() -// + viscosityTilde() * fv2() -// / RANSParentType::karmanConstant() / RANSParentType::karmanConstant() -// / RANSParentType::wallDistance() / RANSParentType::wallDistance()); + + static const int sTildeTerm = getParamFromGroup<int>("", + "OneEq.STildeType", 0); + if (sTildeTerm == 1) + { + return std::max(0.3 * vorticityMagnitude(), + vorticityMagnitude() + + viscosityTilde() * fv2() + / RANSParentType::karmanConstant() / RANSParentType::karmanConstant() + / RANSParentType::wallDistance() / RANSParentType::wallDistance()); + } + else if (sTildeTerm == 2) + { + Scalar sBar = viscosityTilde() * fv2() + / RANSParentType::karmanConstant() / RANSParentType::karmanConstant() + / RANSParentType::wallDistance() / RANSParentType::wallDistance(); + return sBar < -c2() * vorticityMagnitude() + ? vorticityMagnitude() + + (vorticityMagnitude() * (c2() * c2() * vorticityMagnitude() + c3() * sBar)) + / ((c3() - 2.0 * c2()) * vorticityMagnitude() - sBar) + : vorticityMagnitude() + sBar; + } + return vorticityMagnitude() + viscosityTilde() * fv2() / RANSParentType::karmanConstant() / RANSParentType::karmanConstant() @@ -252,6 +270,14 @@ public: return sqrt(2.0 * vorticityTensorScalarProduct_); } + //! \brief Returns a model constant + Scalar c2() const + { return 0.7; } + + //! \brief Returns a model constant + Scalar c3() const + { return 0.9; } + //! \brief Returns a model constant Scalar sigma() const { return 2.0/3.0; } diff --git a/test/freeflow/rans/test_pipe_laufer.input b/test/freeflow/rans/test_pipe_laufer.input index 6f15f68d03f3eb72540b440379abc9e8fc07a208..aeb798c5709f74b81abd301e94caed09ec971a7d 100644 --- a/test/freeflow/rans/test_pipe_laufer.input +++ b/test/freeflow/rans/test_pipe_laufer.input @@ -20,6 +20,9 @@ InletVelocity = 2.5 # [m/s] EnableGravity = false SandGrainRoughness = 0.0 # [m] # not implemented for EddyViscosityModel = 3 +[OneEq] +STildeType = 2 + [RANS] EddyViscosityModel = "baldwinLomax" UseStoredEddyViscosity = false