Large eddy simulation
Large eddy simulation (LES) is a mathematical model for turbulence used in computational fluid dynamics. It was initially proposed in 1963 by Joseph Smagorinsky to simulate atmospheric air currents,[1] and first explored by Deardorff (1970).[2] LES is currently applied in a wide variety of engineering applications, including combustion,[3] acoustics,[4] and simulations of the atmospheric boundary layer.[5]
The simulation of turbulent flows by numerically solving the Navier–Stokes equations requires to resolve an ample range of time- and length-scales. Such a resolution can be achieved with Direct numerical simulation (DNS) but is computationally expensive and currently prohibitive for practical problems. The main idea behind LES is to reduce this computational cost by reducing the range of time- and length-scales that are being solved for via a low-pass filtering of the Navier–Stokes equations. Such a low-pass filtering, which can be viewed as a time- and spatial-averaging, effectively removes small-scale information from the numerical solution. This information is not irrelevant and needs further modeling, a task which is an active area of research for problems in which small-scales can play an important role, problems such as near-wall flows [6][7] , reacting flows,[3] and multiphase flows.[8]
Contents
Filter definition and properties
<templatestyles src="Module:Hatnote/styles.css"></templatestyles>
![L^3](/w/images/math/4/4/5/4453f587a0be574b3a04327cd0c0c4f0.png)
![\Delta=L/32](/w/images/math/0/2/e/02e9a5e094d6c1d77d7a4f53ab85ba48.png)
![\Delta=L/16](/w/images/math/4/4/2/442fea87af94bc65bad645299048d572.png)
An LES filter can be applied to a spatial and temporal field and perform a spatial filtering operation, a temporal filtering operation, or both. The filtered field, denoted with a bar, is defined as:[9][10]
where is the filter convolution kernel. This can also be written as:
The filter kernel has an associated cutoff length scale
and cutoff time scale
. Scales smaller than these are eliminated from
. Using the above filter definition, any field
may be split up into a filtered and sub-filtered (denoted with a prime) portion, as
It is important to note that the large eddy simulation filtering operation does not satisfy the properties of a Reynolds operator.
Filtered governing equations
The governing equations of LES are obtained by filtering the partial differential equations governing the flow field . There are differences between the incompressible and compressible LES governing equations, which lead to the definition of a new filtering operation.
Incompressible flow
For incompressible flow, the continuity equation and Navier–Stokes equations are filtered, yielding the filtered incompressible continuity equation,
and the filtered Navier–Stokes equations,
where is the filtered pressure field and
is the rate-of-strain tensor. The nonlinear filtered advection term
is the chief cause of difficulty in LES modeling. It requires knowledge of the unfiltered velocity field, which is unknown, so it must be modeled. The analysis that follows illustrates the difficulty caused by the nonlinearity, namely, that it causes interaction between large and small scales, preventing separation of scales.
The filtered advection term can be split up, following Leonard (1974),[11] as:
where is the residual stress tensor, so that the filtered Navier Stokes equations become
with the residual stress tensor grouping all unclosed terms. Leonard decomposed this stress tensor as
and provided physical interpretations for each term.
, the Leonard tensor, represents interactions among large scales,
, the Reynolds stress-like term, represents interactions among the sub-filter scales (SFS), and
, the Clark tensor,[12] represents cross-scale interactions between large and small scales.[11] Modeling the unclosed term
is the task of SFS models (also referred to as sub-grid scale, or SGS, models). This is made challenging by the fact that the sub-filter scale stress tensor
must account for interactions among all scales, including filtered scales with unfiltered scales.
The filtered governing equation for a passive scalar , such as mixture fraction or temperature, can be written as
where is the diffusive flux of
, and
is the sub-filter stress tensor for the scalar
. The filtered diffusive flux
is unclosed, unless a particular form is assumed for it (e.g. a gradient diffusion model
).
is defined analogously to
,
and can similarly be split up into contributions from interactions between various scales. This sub-filter tensor also requires a sub-filter model.
Derivation
Using Einstein notation, the Navier–Stokes equations for an incompressible fluid in Cartesian coordinates are
Filtering the momentum equation results in
If we assume that filtering and differentiation commute, then
This equation models the changes in time of the filtered variables . Since the unfiltered variables
are not known, it is impossible to directly calculate
. However, the quantity
is known. A substitution is made:
Let . The resulting set of equations are the LES equations:
Compressible governing equations
For the governing equations of compressible flow, each equation, starting with the conservation of mass, is filtered. This gives:
which results in an additional sub-filter term. However, it is desirable to avoid having to model the sub-filter scales of the mass conservation equation. For this reason, Favre[13] proposed a density-weighted filtering operation, called Favre filtering, defined for an arbitrary quantity as:
which, in the limit of incompressibility, becomes the normal filtering operation. This makes the conservation of mass equation:
This concept can then be extended to write the Favre-filtered momentum equation for compressible flow. Following Vreman:[14]
where is the shear stress tensor, given for a Newtonian fluid by:
and the term represents a sub-filter viscous contribution from evaluating the viscosity
using the Favre-filtered temperature
. The subgrid stress tensor for the Favre-filtered momentum field is given by
By analogy, the Leonard decomposition may also be written for the residual stress tensor for a filtered triple product . The triple product can be rewritten using the Favre filtering operator as
, which is an unclosed term (it requires knowledge of the fields
and
, when only the fields
and
are known). It can be broken up in a manner analogous to
above, which results in a sub-filter stress tensor
. This sub-filter term can be split up into contributions from three types of interactions: the Leondard tensor
, representing interactions among resolved scales; the Clark tensor
, representing interactions between resolved and unresolved scales; and the Reynolds tensor
, which represents interactions among unresolved scales.[15]
Filtered kinetic energy equation
In addition to the filtered mass and momentum equations, filtering the kinetic energy equation can provide additional insight. The kinetic energy field can be filtered to yield the total filtered kinetic energy:
and the total filtered kinetic energy can be decomposed into two terms: the kinetic energy of the filtered velocity field ,
and the residual kinetic energy ,
such that .
The conservation equation for can be obtained by multiplying the filtered momentum transport equation by
to yield:
where is the dissipation of kinetic energy of the filtered velocity field by viscous stress, and
represents the sub-filter scale (SFS) dissipation of kinetic energy.
The terms on the left-hand side represent transport, and the terms on the right-hand side are sink terms that dissipate kinetic energy.[9]
The SFS dissipation term is of particular interest, since it represents the transfer of energy from large resolved scales to small unresolved scales. On average,
transfers energy from large to small scales. However, instantaneously
can be positive or negative, meaning it can also act as a source term for
, the kinetic energy of the filtered velocity field. The transfer of energy from unresolved to resolved scales is called backscatter (and likewise the transfer of energy from resolved to unresolved scales is called forward-scatter).[16]
Numerical methods for LES
Large eddy simulation involves the solution to the discrete filtered governing equations using computational fluid dynamics. LES resolves scales from the domain size down to the filter size
, and as such a substantial portion of high wave number turbulent fluctuations must be resolved. This requires either high-order numerical schemes, or fine grid resolution if low-order numerical schemes are used. Chapter 13 of Pope[9] addresses the question of how fine a grid resolution
is needed to resolve a filtered velocity field
. Ghosal[17] found that for low-order discretization schemes, such as those used in finite volume methods, the truncation error can be the same order as the subfilter scale contributions, unless the filter width
is considerably larger than the grid spacing
. While even-order schemes have truncation error, they are non-dissipative,[18] and because subfilter scale models are dissipative, even-order schemes will not affect the subfilter scale model contributions as strongly as dissipative schemes.
Filter implementation
The filtering operation in large eddy simulation can be implicit or explicit. Implicit filtering recognizes that the subfilter scale model will dissipate in the same manner as many numerical schemes. In this way, the grid, or the numerical discretization scheme, can be assumed to be the LES low-pass filter. While this takes full advantage of the grid resolution, and eliminates the computational cost of calculating a subfilter scale model term, it is difficult to determine the shape of the LES filter that is associated with some numerical issues. Additionally, truncation error can also become an issue.[19]
In explicit filtering, an LES filter is applied to the discretized Navier–Stokes equations, providing a well-defined filter shape and reducing the truncation error. However, explicit filtering requires a finer grid than implicit filtering, and the computational cost increases with . Chapter 8 of Sagaut (2006) covers LES numerics in greater detail.[10]
Modeling unresolved scales
To discuss the modeling of unresolved scales, first the unresolved scales must be classified. They fall into two groups: resolved sub-filter scales (SFS), and sub-grid scales(SGS).
The resolved sub-filter scales represent the scales with wave numbers larger than the cutoff wave number , but whose effects are dampened by the filter. Resolved sub-filter scales only exist when filters non-local in wave-space are used (such as a box or Gaussian filter). These resolved sub-filter scales must be modeled using filter reconstruction.
Sub-grid scales are any scales that are smaller than the cutoff filter width . The form of the SGS model depends on the filter implementation. As mentioned in the Numerical methods for LES section, if implicit LES is considered, no SGS model is implemented and the numerical effects of the discretization are assumed to mimic the physics of the unresolved turbulent motions.
Sub-grid scale models
Without a universally valid description of turbulence, empirical information must be utilized when constructing and applying SGS models, supplemented with fundamental physical constraints such as Galilean invariance[9] .[20] Two classes of SGS models exist; the first class is functional models and the second class is structural models. Some models may be categorized as both.
Functional (eddy–viscosity) models
Functional models are simpler than structural models, focusing only on dissipating energy at a rate that is physically correct. These are based on an artificial eddy viscosity approach, where the effects of turbulence are lumped into a turbulent viscosity. The approach treats dissipation of kinetic energy at sub-grid scales as analogous to molecular diffusion. In this case, the deviatoric part of is modeled as:
where is the turbulent eddy viscosity and
is the rate-of-strain tensor.
Based on dimensional analysis, the eddy viscosity must have units of . Most eddy viscosity SGS models model the eddy viscosity as the product of a characteristic length scale and a characteristic velocity scale.
Smagorinsky–Lilly model
The first SGS model developed was the Smagorinsky–Lilly SGS model, which was developed by Smagorinsky[1] and used in the first LES simulation by Deardorff.[2] It models the eddy viscosity as:
where is the grid size and
is a constant.
This method assumes that the energy production and dissipation of the small scales are in equilibrium - that is, .
Germano dynamic model
Germano et al.[21] identified a number of studies using the Smagorinsky model that each found different values for the Smagorinsky constant for different flow configurations. In an attempt to formulate a more universal approach to SGS models, Germano et al. proposed a dynamic Smagorinsky model, which utilized two filters: a grid LES filter, denoted
, and a test LES filter, denoted
. In this case, the resolved turbulent stress tensor
is defined as
which is also called the Germano identity. The quantity is the residual stress tensor for the test filter scale, and
is the residual stress tensor for the grid filter, then test filtered.
represents the contribution to the SGS stresses by length scales smaller than the test filter width
but larger than the grid filter width
. The dynamic model then finds the coefficient that best complies with the Germano identity. However, since the identity is a tensorial equation, it is overdetermined (five equations for one unknown), prompting Lilly [22] to propose a minimum least-square error method that leads to an equation for
:
where
and
However, this procedure was numerically unstable since the numerator could become negative and large fluctuations in were often observed. Hence, additional averaging of the error in the minimization is often employed, leading to:
This has made the dynamic model more stable and making the method more widely applicable. Inherent in the procedure is the assumption that the coefficient is invariant of scale (see review [23]). The averaging can be a spatial averaging over directions of statistical homogeneity (e.g. volume for homogeneous turbulence or wall-parallel planes for channel flow as originally used in Germano et al.[21]), or time following Lagrangian fluid trajectories .[24]
Structural models
Lua error in package.lua at line 80: module 'strict' not found.
See also
- Direct numerical simulation
- Fluid mechanics
- Galilean invariance – an important property of certain types of filters
- Reynolds-averaged Navier–Stokes equations
- Turbulence
References
- ↑ 1.0 1.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 2.0 2.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 3.0 3.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 9.0 9.1 9.2 9.3 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 10.0 10.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 11.0 11.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 21.0 21.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.