K-epsilon model. More...
A single-phase, isothermal k-epsilon model.
Single-phase Reynolds-Averaged Navier-Stokes flow.
A single-phase, isothermal Reynolds-Averaged Navier-Stokes model.
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}^{\text{T}}) = \nabla \cdot (\mu_\textrm{eff} (\nabla \textbf{v} + \nabla \textbf{v}^{\text{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 [50] https://doi.org/10.1016/0094-4548(74)90150-7.
The turbulent kinetic energy balance is:
\[ \frac{\partial \left( \varrho k \right)}{\partial t} + \nabla \cdot \left( \textbf{v} \varhho k \right) - \nabla \cdot \left( \left( \mu + \frac{\mu_\text{t}}{\sigma_\text{k}} \right) \nabla k \right) - 2 \mu_\text{t} \textbf{S} \cdot \textbf{S} + \varrho \varepsilon = 0 \]
.
The dissipation balance is:
\[ \frac{\partial \left( \varrho \varepsilon \right)}{\partial t} + \nabla \cdot \left( \textbf{v} \varrho \varepsilon \right) - \nabla \cdot \left( \left( \mu + \frac{\mu_\text{t}}{\sigma_{\varepsilon}} \right) \nabla \varepsilon \right) - C_{1\varepsilon} \frac{\varepsilon}{k} 2 \mu_\text{t} \textbf{S} \cdot \textbf{S} + C_{2\varepsilon} \varrho \frac{\varepsilon^2}{k} = 0 \]
.
The dynamic eddy viscosity \( \mu_\text{t} \) is:
\[ \mu_\text{t} = \varrho 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 | 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 | 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/staggered/localresidual.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 > |
The flux variables class for the k-epsilon model using the staggered grid discretization. More... | |
class | Dumux::KEpsilonResidualImpl< TypeTag, BaseLocalResidual, DiscretizationMethod > |
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, typename GetPropType< TypeTag, Properties::GridGeometry >::DiscretizationMethod > |
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, typename GetPropType< TypeTag, Properties::GridGeometry >::DiscretizationMethod > |
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, typename GetPropType<TypeTag, Properties::GridGeometry>::DiscretizationMethod> |
using Dumux::KEpsilonResidual = typedef KEpsilonResidualImpl<TypeTag, BaseLocalResidual, typename GetPropType<TypeTag, Properties::GridGeometry>::DiscretizationMethod> |