3.1-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Files | Classes | Typedefs

K-omega model. More...

Description

K-omega model.

Single-phase Reynolds-Averaged Navier-Stokes flow.

This model implements a single-phase, isothermal Reynolds-Averaged Navier-Stokes model, solving the momentum balance equation

\[ \frac{\partial (\varrho \textbf{v})}{\partial t} + \nabla \cdot (\varrho \textbf{v} \textbf{v}^{\textup{T}}) = \nabla \cdot (\mu_\textrm{eff} (\nabla \textbf{v} + \nabla \textbf{v}^{\textup{T}})) - \nabla p + \varrho \textbf{g} - \textbf{f} \]

The effective viscosity is composed of the fluid and the eddy viscosity:

\[ \mu_\textrm{eff} = \mu + \mu_\textrm{t} \]

.

Two additional PDEs, one for the turbulentKineticEnergy (k) and a second for the dissipation (omega) are used to calculate the eddy viscosity for this model. The model is taken from Wilcox, 2008 [78].

Turbulent Kinetic Energy balance:

\[ \frac{\partial \left( k \right)}{\partial t} + \nabla \cdot \left( \mathbf{v} k \right) - \nabla \cdot \left[ \left( \nu + \sigma_\textrm{k} \nu_\textrm{t} \right) \nabla k \right] - P + \beta_k^{*} k \omega = 0 \]

with \( P = 2 \nu_\textrm{t} \mathbf{S} \cdot \mathbf{S} \) and \( S_{ij} = \frac{1}{2} \left[ \frac{\partial}{\partial x_i} v_j + \frac{\partial}{\partial x_j} v_i \right] \) based on \( a_{ij} \cdot b_{ij} = \sum_{i,j} a_{ij} b_{ij} \).

Dissipation balance:

\[ \frac{\partial \left( \omega \right)}{\partial t} + \nabla \cdot \left( \mathbf{v} \omega \right) - \nabla \cdot \left[ \left( \nu + \sigma_{\omega} \nu_\textrm{t} \right) \nabla \omega \right] - \alpha \frac{\omega}{k} P + \beta_{\omega} \omega^2 - \frac{\sigma_d}{\omega} \nabla k \nabla \omega = 0 \]

The kinematic eddy viscosity \( \nu_\textrm{t} \) is calculated as follows:

\[ \nu_\textrm{t} = \frac{k}{\tilde{\omega}} \]

With a limited dissipation:

\[ \tilde{\omega} = \textrm{max} \left\{ \omega, 0.875 \sqrt{\frac{P}{\nu_\textrm{t} \beta_\textrm{k}}} \right\} \]

And a cross-diffusion coefficient \( \sigma_\textrm{d} \)

\[ \sigma_\text{d} = \begin{cases} 0 & \mbox{, if } \; \nabla k \cdot \nabla \omega \le 0 \\ 0.125 & \mbox{, if } \; \nabla k \cdot \nabla \omega > 0 \end{cases}. \]

Files

file  freeflow/rans/twoeq/komega/fluxvariables.hh
 
file  dumux/freeflow/rans/twoeq/komega/iofields.hh
 
file  freeflow/rans/twoeq/komega/localresidual.hh
 
file  freeflow/rans/twoeq/komega/model.hh
 A single-phase, isothermal k-omega 2-Eq. model.
 
file  dumux/freeflow/rans/twoeq/komega/problem.hh
 K-Omega turbulence model problem base class.
 
file  freeflow/rans/twoeq/komega/staggered/fluxvariables.hh
 
file  freeflow/rans/twoeq/komega/staggered/localresidual.hh
 

Classes

struct  Dumux::KOmegaIOFields
 Adds I/O fields for the Reynolds-Averaged Navier-Stokes model. More...
 
struct  Dumux::Properties::KOmegaModelTraits< dimension >
 Traits for the k-omega model. More...
 
class  Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::komega >
 K-Omega turbulence model problem base class. More...
 
class  Dumux::KOmegaFluxVariablesImpl< TypeTag, BaseFluxVariables, DiscretizationMethod::staggered >
 The flux variables class for the k-omega model using the staggered grid discretization. More...
 
class  Dumux::KOmegaResidualImpl< TypeTag, BaseLocalResidual, DiscretizationMethod::staggered >
 Element-wise calculation of the residual for k-omega models using the staggered discretization. More...
 

Typedefs

template<class TypeTag , class BaseFluxVariables >
using Dumux::KOmegaFluxVariables = KOmegaFluxVariablesImpl< TypeTag, BaseFluxVariables, GetPropType< TypeTag, Properties::GridGeometry >::discMethod >
 The flux variables class for the k-omega model. This is a convenience alias for that actual, discretization-specific flux variables. More...
 
template<class TypeTag , class BaseLocalResidual >
using Dumux::KOmegaResidual = KOmegaResidualImpl< TypeTag, BaseLocalResidual, GetPropType< TypeTag, Properties::GridGeometry >::discMethod >
 The local residual class for the k-omega model. This is a convenience alias for the actual, discretization-specific local residual. More...
 

Typedef Documentation

◆ KOmegaFluxVariables

template<class TypeTag , class BaseFluxVariables >
using Dumux::KOmegaFluxVariables = typedef KOmegaFluxVariablesImpl<TypeTag, BaseFluxVariables, GetPropType<TypeTag, Properties::GridGeometry>::discMethod>

The flux variables class for the k-omega model. This is a convenience alias for that actual, discretization-specific flux variables.

Note
Not all specializations are currently implemented

◆ KOmegaResidual

template<class TypeTag , class BaseLocalResidual >
using Dumux::KOmegaResidual = typedef KOmegaResidualImpl<TypeTag, BaseLocalResidual, GetPropType<TypeTag, Properties::GridGeometry>::discMethod>

The local residual class for the k-omega model. This is a convenience alias for the actual, discretization-specific local residual.

Note
Not all specializations are currently implemented