Upwind scheme

Last updated

In computational physics, the term advection scheme refers to a class of numerical discretization methods for solving hyperbolic partial differential equations. In the so-called upwind schemes typically, the so-called upstream variables are used to calculate the derivatives in a flow field. That is, derivatives are estimated using a set of data points biased to be more "upwind" of the query point, with respect to the direction of the flow. Historically, the origin of upwind methods can be traced back to the work of Courant, Isaacson, and Rees who proposed the CIR method. [1]

Contents

Model equation

To illustrate the method, consider the following one-dimensional linear advection equation

which describes a wave propagating along the -axis with a velocity . This equation is also a mathematical model for one-dimensional linear advection. Consider a typical grid point in the domain. In a one-dimensional domain, there are only two directions associated with point – left (towards negative infinity) and right (towards positive infinity). If is positive, the traveling wave solution of the equation above propagates towards the right, the left side is called the upwind side and the right side is the downwind side. Similarly, if is negative the traveling wave solution propagates towards the left, the left side is called downwind side and right side is the upwind side. If the finite difference scheme for the spatial derivative, contains more points in the upwind side, the scheme is called an upwind-biased or simply an upwind scheme.

First-order upwind scheme

A simulation of a first-order upwind scheme in which a = sin(t). GaussianUpwind1D.gif
A simulation of a first-order upwind scheme in which a = sin(t).

The simplest upwind scheme possible is the first-order upwind scheme. It is given by [2]

where refers to the dimension and refers to the dimension. (By comparison, a central difference scheme in this scenario would look like

regardless of the sign of .)

Compact form

Defining

and

the two conditional equations ( 1 ) and ( 2 ) can be combined and written in a compact form as

Equation (3) is a general way of writing any upwind-type schemes.

Stability

The upwind scheme is stable if the following Courant–Friedrichs–Lewy condition (CFL) is satisfied. [3]

The effects of the courant number, c, on the stability of the first-order upward numerical scheme. First Order Upwind Scheme Stability.png
The effects of the courant number, c, on the stability of the first-order upward numerical scheme.
and .

A Taylor series analysis of the upwind scheme discussed above will show that it is first-order accurate in space and time. Modified wavenumber analysis shows that the first-order upwind scheme introduces severe numerical diffusion/dissipation in the solution where large gradients exist due to necessity of high wavenumbers to represent sharp gradients.

Second-order upwind scheme

The spatial accuracy of the first-order upwind scheme can be improved by including 3 data points instead of just 2, which offers a more accurate finite difference stencil for the approximation of spatial derivative. For the second-order upwind scheme, becomes the 3-point backward difference in equation ( 3 ) and is defined as

and is the 3-point forward difference, defined as

This scheme is less diffusive compared to the first-order accurate scheme and is called linear upwind differencing (LUD) scheme.

See also

Related Research Articles

A finite difference is a mathematical expression of the form f (x + b) − f (x + a). If a finite difference is divided by ba, one gets a difference quotient. The approximation of derivatives by finite differences plays a central role in finite difference methods for the numerical solution of differential equations, especially boundary value problems.

In numerical analysis, the Crank–Nicolson method is a finite difference method used for numerically solving the heat equation and similar partial differential equations. It is a second-order method in time. It is implicit in time, can be written as an implicit Runge–Kutta method, and it is numerically stable. The method was developed by John Crank and Phyllis Nicolson in the 1940s.

In mathematics, the convergence condition by Courant–Friedrichs–Lewy is a necessary condition for convergence while solving certain partial differential equations numerically. It arises in the numerical analysis of explicit time integration schemes, when these are used for the numerical solution. As a consequence, the time step must be less than a certain upper bound, given a fixed spatial increment, in many explicit time-marching computer simulations; otherwise, the simulation produces incorrect or unstable results. The condition is named after Richard Courant, Kurt Friedrichs, and Hans Lewy who described it in their 1928 paper.

In numerical methods, total variation diminishing (TVD) is a property of certain discretization schemes used to solve hyperbolic partial differential equations. The most notable application of this method is in computational fluid dynamics. The concept of TVD was introduced by Ami Harten.

In numerical analysis and computational fluid dynamics, Godunov's scheme is a conservative numerical scheme, suggested by Sergei Godunov in 1959, for solving partial differential equations. One can think of this method as a conservative finite volume method which solves exact, or approximate Riemann problems at each inter-cell boundary. In its basic form, Godunov's method is first order accurate in both space and time, yet can be used as a base scheme for developing higher-order methods.

In the study of partial differential equations, the MUSCL scheme is a finite volume method that can provide highly accurate numerical solutions for a given system, even in cases where the solutions exhibit shocks, discontinuities, or large gradients. MUSCL stands for Monotonic Upstream-centered Scheme for Conservation Laws, and the term was introduced in a seminal paper by Bram van Leer. In this paper he constructed the first high-order, total variation diminishing (TVD) scheme where he obtained second order spatial accuracy.

In numerical analysis, finite-difference methods (FDM) are a class of numerical techniques for solving differential equations by approximating derivatives with finite differences. Both the spatial domain and time domain are discretized, or broken into a finite number of intervals, and the values of the solution at the end points of the intervals are approximated by solving algebraic equations containing finite differences and values from nearby points.

The Lax–Wendroff method, named after Peter Lax and Burton Wendroff, is a numerical method for the solution of hyperbolic partial differential equations, based on finite differences. It is second-order accurate in both space and time. This method is an example of explicit time integration where the function that defines the governing equation is evaluated at the current time.

In numerical linear algebra, the alternating-direction implicit (ADI) method is an iterative method used to solve Sylvester matrix equations. It is a popular method for solving the large matrix equations that arise in systems theory and control, and can be formulated to construct solutions in a memory-efficient, factored form. It is also used to numerically solve parabolic and elliptic partial differential equations, and is a classic method used for modeling heat conduction and solving the diffusion equation in two or more dimensions. It is an example of an operator splitting method.

In computational fluid dynamics, the MacCormack method is a widely used discretization scheme for the numerical solution of hyperbolic partial differential equations. This second-order finite difference method was introduced by Robert W. MacCormack in 1969. The MacCormack method is elegant and easy to understand and program.

Nonstandard finite difference schemes is a general set of methods in numerical analysis that gives numerical solutions to differential equations by constructing a discrete model. The general rules for such schemes are not precisely known.

The Lax–Friedrichs method, named after Peter Lax and Kurt O. Friedrichs, is a numerical method for the solution of hyperbolic partial differential equations based on finite differences. The method can be described as the FTCS scheme with a numerical dissipation term of 1/2. One can view the Lax–Friedrichs method as an alternative to Godunov's scheme, where one avoids solving a Riemann problem at each cell interface, at the expense of adding artificial viscosity.

In numerical analysis, the FTCS method is a finite difference method used for numerically solving the heat equation and similar parabolic partial differential equations. It is a first-order method in time, explicit in time, and is conditionally stable when applied to the heat equation. When used as a method for advection equations, or more generally hyperbolic partial differential equations, it is unstable unless artificial viscosity is included. The abbreviation FTCS was first used by Patrick Roache.

In numerical analysis, von Neumann stability analysis is a procedure used to check the stability of finite difference schemes as applied to linear partial differential equations. The analysis is based on the Fourier decomposition of numerical error and was developed at Los Alamos National Laboratory after having been briefly described in a 1947 article by British researchers John Crank and Phyllis Nicolson. This method is an example of explicit time integration where the function that defines governing equation is evaluated at the current time. Later, the method was given a more rigorous treatment in an article co-authored by John von Neumann.

The hybrid difference scheme is a method used in the numerical solution for convection–diffusion problems. It was introduced by Spalding (1970). It is a combination of central difference scheme and upwind difference scheme as it exploits the favorable properties of both of these schemes.

False diffusion is a type of error observed when the upwind scheme is used to approximate the convection term in convection–diffusion equations. The more accurate central difference scheme can be used for the convection term, but for grids with cell Peclet number more than 2, the central difference scheme is unstable and the simpler upwind scheme is often used. The resulting error from the upwind differencing scheme has a diffusion-like appearance in two- or three-dimensional co-ordinate systems and is referred as "false diffusion". False-diffusion errors in numerical solutions of convection-diffusion problems, in two- and three-dimensions, arise from the numerical approximations of the convection term in the conservation equations. Over the past 20 years many numerical techniques have been developed to solve convection-diffusion equations and none are problem-free, but false diffusion is one of the most serious problems and a major topic of controversy and confusion among numerical analysts.

Fluid motion is governed by the Navier–Stokes equations, a set of coupled and nonlinear partial differential equations derived from the basic laws of conservation of mass, momentum and energy. The unknowns are usually the flow velocity, the pressure and density and temperature. The analytical solution of this equation is impossible hence scientists resort to laboratory experiments in such situations. The answers delivered are, however, usually qualitatively different since dynamical and geometric similitude are difficult to enforce simultaneously between the lab experiment and the prototype. Furthermore, the design and construction of these experiments can be difficult, particularly for stratified rotating flows. Computational fluid dynamics (CFD) is an additional tool in the arsenal of scientists. In its early days CFD was often controversial, as it involved additional approximation to the governing equations and raised additional (legitimate) issues. Nowadays CFD is an established discipline alongside theoretical and experimental methods. This position is in large part due to the exponential growth of computer power which has allowed us to tackle ever larger and more complex problems.

The convection–diffusion equation describes the flow of heat, particles, or other physical quantities in situations where there is both diffusion and convection or advection. For information about the equation, its derivation, and its conceptual importance and consequences, see the main article convection–diffusion equation. This article describes how to use a computer to calculate an approximate numerical solution of the discretized equation, in a time-dependent situation.

Discretization of the Navier–Stokes equations of fluid dynamics is a reformulation of the equations in such a way that they can be applied to computational fluid dynamics. Several methods of discretization can be applied:

In numerical mathematics, Beam and Warming scheme or Beam–Warming implicit scheme introduced in 1978 by Richard M. Beam and R. F. Warming, is a second order accurate implicit scheme, mainly used for solving non-linear hyperbolic equations. It is not used much nowadays.

References

  1. Courant, Richard; Isaacson, E; Rees, M. (1952). "On the Solution of Nonlinear Hyperbolic Differential Equations by Finite Differences". Comm. Pure Appl. Math. 5 (3): 243..255. doi:10.1002/cpa.3160050303.
  2. Patankar, S. V. (1980). Numerical Heat Transfer and Fluid Flow. Taylor & Francis. ISBN   978-0-89116-522-4.
  3. Hirsch, C. (1990). Numerical Computation of Internal and External Flows. John Wiley & Sons. ISBN   978-0-471-92452-4.