K-epsilon model. More...
K-epsilon 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}
.
The k-epsilon models calculate the eddy viscosity with two additional PDEs, one for the turbulent kinetic energy (k) and for the dissipation ( \varepsilon ). The model uses the one proposed by Launder and Sharma [41] https://doi.org/10.1016/0094-4548(74)90150-7.
The turbulent kinetic energy balance is:
\frac{\partial \left( k \right)}{\partial t} + \nabla \cdot \left( \textbf{v} k \right) - \nabla \cdot \left( \left( \nu + \frac{\nu_\text{t}}{\sigma_\text{k}} \right) \nabla k \right) - 2 \nu_\text{t} \textbf{S} \cdot \textbf{S} + \varepsilon = 0
.
The dissipation balance is:
\frac{\partial \left( \varepsilon \right)}{\partial t} + \nabla \cdot \left( \textbf{v} \varepsilon \right) - \nabla \cdot \left( \left( \nu + \frac{\nu_\text{t}}{\sigma_{\varepsilon}} \right) \nabla \varepsilon \right) - C_{1\varepsilon} \frac{\varepsilon}{k} 2 \nu_\text{t} \textbf{S} \cdot \textbf{S} + C_{2\varepsilon} \frac{\varepsilon^2}{k} = 0
.
The kinematic eddy viscosity \nu_\text{t} is:
\nu_\text{t} = C_\mu \frac{k^2}{\tilde{\varepsilon}}
.
Finally, the model is closed with the following constants:
\sigma_\text{k} = 1.00
\sigma_\varepsilon =1.30
C_{1\varepsilon} = 1.44
C_{2\varepsilon} = 1.92
C_\mu = 0.09
Files | |
file | freeflow/rans/twoeq/kepsilon/fluxvariables.hh |
file | dumux/freeflow/rans/twoeq/kepsilon/iofields.hh |
file | freeflow/rans/twoeq/kepsilon/localresidual.hh |
file | freeflow/rans/twoeq/kepsilon/model.hh |
A single-phase, isothermal k-epsilon model. | |
file | dumux/freeflow/rans/twoeq/kepsilon/problem.hh |
K-epsilon turbulence problem base class. | |
file | freeflow/rans/twoeq/kepsilon/staggered/fluxvariables.hh |
file | freeflow/rans/twoeq/kepsilon/volumevariables.hh |
Classes | |
struct | Dumux::KEpsilonIOFields |
Adds I/O fields for the k-epsilon turbulence model. More... | |
struct | Dumux::Properties::KEpsilonModelTraits< dimension > |
Traits for the k-epsilon model. More... | |
class | Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::kepsilon > |
K-epsilon turbulence problem base class. More... | |
class | Dumux::KEpsilonFluxVariablesImpl< TypeTag, BaseFluxVariables, DiscretizationMethod::staggered > |
The flux variables class for the k-epsilon model using the staggered grid discretization. More... | |
class | Dumux::KEpsilonResidualImpl< TypeTag, BaseLocalResidual, DiscretizationMethod::staggered > |
Element-wise calculation of the residual for k-epsilon models using the staggered discretization. More... | |
class | Dumux::KEpsilonVolumeVariables< Traits, NSVolumeVariables > |
Volume variables for the isothermal single-phase k-epsilon model. More... | |
Typedefs | |
template<class TypeTag , class BaseFluxVariables > | |
using | Dumux::KEpsilonFluxVariables = KEpsilonFluxVariablesImpl< TypeTag, BaseFluxVariables, GetPropType< TypeTag, Properties::GridGeometry >::discMethod > |
The flux variables class for the k-epsilon model. This is a convenience alias for that actual, discretization-specific flux variables. More... | |
template<class TypeTag , class BaseLocalResidual > | |
using | Dumux::KEpsilonResidual = KEpsilonResidualImpl< TypeTag, BaseLocalResidual, GetPropType< TypeTag, Properties::GridGeometry >::discMethod > |
The local residual class for the k-epsilon model. This is a convenience alias for the actual, discretization-specific local residual. More... | |
using Dumux::KEpsilonFluxVariables = typedef KEpsilonFluxVariablesImpl<TypeTag, BaseFluxVariables, GetPropType<TypeTag, Properties::GridGeometry>::discMethod> |
The flux variables class for the k-epsilon model. This is a convenience alias for that actual, discretization-specific flux variables.
using Dumux::KEpsilonResidual = typedef KEpsilonResidualImpl<TypeTag, BaseLocalResidual, GetPropType<TypeTag, Properties::GridGeometry>::discMethod> |
The local residual class for the k-epsilon model. This is a convenience alias for the actual, discretization-specific local residual.