# Navier–Stokes equations

Template:Continuum mechanics In physics, the Navier–Stokes equations [navˈjeː stəʊks], named after Claude-Louis Navier and George Gabriel Stokes, describe the motion of fluid substances. These equations arise from applying Newton's second law to fluid motion, together with the assumption that the stress in the fluid is the sum of a diffusing viscous term (proportional to the gradient of velocity) and a pressure term—hence describing viscous flow.

The equations are useful because they describe the physics of many things of scientific and engineering interest. They may be used to model the weather, ocean currents, water flow in a pipe and air flow around a wing. The Navier–Stokes equations in their full and simplified forms help with the design of aircraft and cars, the study of blood flow, the design of power stations, the analysis of pollution, and many other things. Coupled with Maxwell's equations they can be used to model and study magnetohydrodynamics.

## Derivation and description

{{#invoke:main|main}}

The derivation of the Navier–Stokes equations begins with an application of Newton's second law: conservation of momentum (often alongside mass and energy conservation) being written for an arbitrary portion of the fluid. In an inertial frame of reference, the general form of the equations of fluid motion is:

where

$\mathbf {u}$ is the flow velocity,
$\rho$ is the fluid density,
$p$ is the pressure,
${\boldsymbol {\tau }}$ is the (deviatoric) component of the total stress tensor, which has order two,
$\mathbf {f}$ represents body forces (per unit volume) acting on the fluid,
$\nabla$ is the del operator.

This is a statement of the conservation of momentum in a fluid and it is an application of Newton's second law to a continuum; in fact this equation is applicable to any non-relativistic continuum and is known as the Cauchy momentum equation.

This equation is often written using the material derivative Du/Dt, making it more apparent that this is a statement of Newton's second law:

$\rho {\frac {D\mathbf {u} }{Dt}}=-\nabla p+\nabla \cdot {\boldsymbol {\tau }}+\mathbf {f} .$ The left side of the equation describes acceleration, and may be composed of time-dependent or convective effects (also the effects of non-inertial coordinates if present). The right side of the equation is in effect a summation of body forces (such as gravity) and divergence of stress (pressure and shear stress).

### Convective acceleration An example of convection. Though the flow may be steady (time-independent), the fluid decelerates as it moves down the diverging duct (assuming incompressible or subsonic compressible flow), hence there is an acceleration happening over position.

A significant feature of the Navier–Stokes equations is the presence of convective acceleration: the effect of time-independent acceleration of a fluid with respect to space. While individual fluid particles indeed experience time dependent-acceleration, the convective acceleration of the flow field is a spatial effect, one example being fluid speeding up in a nozzle.

Regardless of what kind of fluid is being dealt with, convective acceleration is a nonlinear effect. Convective acceleration is present in most flows (exceptions include one-dimensional incompressible flow), but its dynamic effect is disregarded in creeping flow (also called Stokes flow). Convective acceleration is represented by the nonlinear quantity:

$\mathbf {u} \cdot \nabla \mathbf {u}$ The convection term is often written as

$(\mathbf {u} \cdot \nabla )\mathbf {u}$ where the advection operator $\mathbf {u} \cdot \nabla$ is used. Usually this representation is preferred as it is simpler than the one in terms of the tensor derivative $\nabla \mathbf {u} .$ #### Tensor derivative

Here $\nabla {\mathbf {u} }$ is the tensor derivative of the velocity vector, equal in Cartesian coordinates to the component-by-component gradient. Note that the gradient of a vector is being defined as $\left[\nabla \mathbf {u} \right]_{mi}=\partial _{m}v_{i}$ , so that $\left[\mathbf {u} \cdot \left(\nabla \mathbf {u} \right)\right]_{i}=v_{m}\partial _{m}v_{i}=\left[(\mathbf {u} \cdot \nabla )\mathbf {u} \right]_{i}$ .

#### In irrotational flow

The convection term may, by a vector calculus identity, be expressed without a tensor derivative:

$\mathbf {u} \cdot \nabla \mathbf {u} =\nabla \left({\frac {\|\mathbf {u} \|^{2}}{2}}\right)+\left(\nabla \times \mathbf {u} \right)\times \mathbf {u} .$ The form has use in irrotational flow, where the curl of the velocity (called vorticity) $\omega =\nabla \times \mathbf {u}$ is equal to zero. Therefore, this reduces to only

$\mathbf {u} \cdot \nabla \mathbf {u} =\nabla \left({\frac {\|\mathbf {u} \|^{2}}{2}}\right).$ ### Stresses

The effect of stress in the fluid is represented by the $\nabla p$ and $\nabla \cdot {\boldsymbol {\tau }}$ terms; these are gradients of surface forces, analogous to stresses in a solid. Here $\nabla p$ is called the pressure gradient and arises from the isotropic part of the Cauchy stress tensor, which has order two. This part is given by normal stresses that turn up in almost all situations, dynamic or not. The anisotropic part of the stress tensor gives rise to $\nabla \cdot {\boldsymbol {\tau }}$ , which conventionally describes viscous forces; for incompressible flow, this is only a shear effect. Thus, ${\boldsymbol {\tau }}$ is the deviatoric stress tensor, and the stress tensor is equal to:

${\boldsymbol {\sigma }}=-p\mathbf {1} +{\boldsymbol {\tau }}$ where ${\mathbf {1} }$ is the 3×3 identity matrix. In the Navier–Stokes equations, only the gradient of pressure matters, not the pressure itself. The effect of the pressure gradient on the flow is to accelerate the fluid in the direction from high pressure to low pressure.

The stress terms p and ${\boldsymbol {\tau }}$ are yet unknown, so the general form of the equations of motion is not usable to solve problems. Besides the equations of motion—Newton's second law—a force model is needed relating the stresses to the fluid motion. For this reason, assumptions based on natural observations are often applied to specify the stresses in terms of the other flow variables, such as velocity and density.

The Navier–Stokes equations result from the following assumptions on the deviatoric stress tensor ${\boldsymbol {\tau }}$ :

• the deviatoric stress vanishes for a fluid at rest, and, by Galilean invariance, also does not depend directly on the flow velocity, but only on spatial derivatives of the flow velocity
• the deviatoric stress tensor has zero trace, so for a three-dimensional flow 2μ + 3μ" = 0

As a result, the deviatoric stress tensor has the following form:

${\boldsymbol {\tau }}=2\mu \left({\boldsymbol {\varepsilon }}-{\tfrac {1}{3}}\mathbf {1} \,\nabla \cdot \mathbf {u} \right)$ with the quantity between brackets being the non-isotropic part of the rate-of-strain tensor ${\boldsymbol {\varepsilon }}.$ The dynamic viscosity μ need not be constant – in general, it depends on conditions like temperature and pressure, and, in turbulence modeling, eddy viscosity approximates the average deviatoric stress.

The pressure p is modeled by an equation of state. For the special case of an incompressible flow, the pressure constrains the flow so that the volume of fluid elements is constant: isochoric flow resulting in a solenoidal velocity field with $\nabla \cdot \mathbf {u} =0.$ ### Other forces

The vector field $\mathbf {f}$ represents body forces. Typically, these consist of only gravity forces, but may include others, such as electromagnetic forces. In non-inertial coordinate frames, other "forces" associated with rotating coordinates may arise.

Often, these forces may be represented as the gradient of some scalar quantity $\chi \,$ , with $\mathbf {f} =\nabla \chi ,$ in which case they are called conservative forces. Gravity in the z direction, for example, is the gradient of $-\rho gz$ . Because pressure from such gravitation arises only as a gradient, we may include it in the pressure term as a body force $h=p-\chi .$ The pressure and force terms on the right-hand side of the Navier–Stokes equation become

$-\nabla p+\mathbf {f} =-\nabla p+\nabla \chi =-\nabla \left(p-\chi \right)=-\nabla h.$ ### Other equations

The Navier–Stokes equations are strictly a statement of the conservation of momentum. To fully describe fluid flow, more information is needed, how much depending on the assumptions made. This additional information may include boundary data (no-slip, capillary surface, etc.), conservation of mass, conservation of energy, and/or an equation of state.

#### Continuity equation

{{#invoke:main|main}}

Regardless of the flow assumptions, a statement of the conservation of mass is generally necessary. This is achieved through the mass continuity equation, given in its most general form as:

${\frac {\partial \rho }{\partial t}}+\nabla \cdot (\rho \mathbf {u} )=0$ or, using the substantive derivative:

${\frac {D\rho }{Dt}}+\rho (\nabla \cdot \mathbf {u} )=0.$ ## Incompressible flow of Newtonian fluids

The equations are simplified in the case of incompressible flow of a Newtonian fluid. Incompressibility rules out sound propagation or shock waves, so this simplification is not useful if these phenomena are of interest. The incompressible flow assumption typically holds well even with a "compressible" fluid — such as air at room temperature — at low Mach numbers up to about Mach 0.3. With incompressible flow and constant viscosity, the Navier–Stokes equations read

in tensor notation:

It's well worth observing the meaning of each term (compare to the Cauchy momentum equation):

$\overbrace {\rho {\Big (}\underbrace {\frac {\partial \mathbf {u} }{\partial t}} _{\begin{smallmatrix}{\text{Unsteady}}\\{\text{acceleration}}\end{smallmatrix}}+\underbrace {\mathbf {u} \cdot \nabla \mathbf {u} } _{\begin{smallmatrix}{\text{Convective}}\\{\text{acceleration}}\end{smallmatrix}}{\Big )}} ^{\text{Inertia (per volume)}}=\overbrace {\underbrace {-\nabla p} _{\begin{smallmatrix}{\text{Pressure}}\\{\text{gradient}}\end{smallmatrix}}+\underbrace {\mu \nabla ^{2}\mathbf {u} } _{\text{Viscosity}}} ^{\text{Divergence of stress}}+\underbrace {\mathbf {f} .} _{\begin{smallmatrix}{\text{Other}}\\{\text{body}}\\{\text{forces}}\end{smallmatrix}}$ Only the convective terms are nonlinear for incompressible Newtonian flow. Convective acceleration is caused by a (possibly steady) change in velocity over position, for example, by the speeding up of fluid entering a converging nozzle. Though individual fluid particles are accelerated and thus under unsteady motion, the flow field, a velocity distribution, will not necessarily be time-dependent.

Another important observation is that viscosity is represented by the vector Laplacian of the velocity field, interpreted here as the difference between the velocity at a point and the mean velocity in a small surrounding volume. This implies that – for a Newtonian fluid – viscosity operates as a diffusion of momentum, in much the same way as the diffusion of heat in the heat equation, also expressed with the Laplacian.

If temperature effects are also neglected, the only "other" equation (apart from initial/boundary conditions) needed is the mass continuity equation. Under the assumption of incompressibility, the density of a fluid particle is constant, and when using the substantive derivative it follows easily that the continuity equation simplifies to:

$\nabla \cdot \mathbf {u} =0.$ This is more specifically a statement of the conservation of volume (see divergence and isochoric process).

These equations are commonly used in 3 coordinates systems: Cartesian, cylindrical, and spherical. While the Cartesian equations seem to follow directly from the vector equation above, the vector form of the Navier–Stokes equation involves some tensor calculus which means that writing it in other coordinate systems is not as simple as doing so for scalar equations (such as the heat equation).

## 3D representations

### Cartesian coordinates

From the general form of the Navier-Stokes, with the velocity vector expanded as $\mathbf {u} =(u_{x},u_{y},u_{z})$ (sometimes respectively named u, v, w), we may write the vector equation explicitly,

{\begin{aligned}\rho \left({\frac {\partial u_{x}}{\partial t}}+u_{x}{\frac {\partial u_{x}}{\partial x}}+u_{y}{\frac {\partial u_{x}}{\partial y}}+u_{z}{\frac {\partial u_{x}}{\partial z}}\right)&=-{\frac {\partial p}{\partial x}}+\mu \left({\frac {\partial ^{2}u_{x}}{\partial x^{2}}}+{\frac {\partial ^{2}u_{x}}{\partial y^{2}}}+{\frac {\partial ^{2}u_{x}}{\partial z^{2}}}\right)-\mu {\frac {\partial }{\partial x}}\left({\frac {\partial u_{x}}{\partial x}}+{\frac {\partial u_{y}}{\partial y}}+{\frac {\partial u_{z}}{\partial z}}\right)+\rho g_{x}\\\rho \left({\frac {\partial u_{y}}{\partial t}}+u_{x}{\frac {\partial u_{y}}{\partial x}}+u_{y}{\frac {\partial u_{y}}{\partial y}}+u_{z}{\frac {\partial u_{y}}{\partial z}}\right)&=-{\frac {\partial p}{\partial y}}+\mu \left({\frac {\partial ^{2}u_{y}}{\partial x^{2}}}+{\frac {\partial ^{2}u_{y}}{\partial y^{2}}}+{\frac {\partial ^{2}u_{y}}{\partial z^{2}}}\right)-\mu {\frac {\partial }{\partial y}}\left({\frac {\partial u_{x}}{\partial x}}+{\frac {\partial u_{y}}{\partial y}}+{\frac {\partial u_{z}}{\partial z}}\right)+\rho g_{y}\\\rho \left({\frac {\partial u_{z}}{\partial t}}+u_{x}{\frac {\partial u_{z}}{\partial x}}+u_{y}{\frac {\partial u_{z}}{\partial y}}+u_{z}{\frac {\partial u_{z}}{\partial z}}\right)&=-{\frac {\partial p}{\partial z}}+\mu \left({\frac {\partial ^{2}u_{z}}{\partial x^{2}}}+{\frac {\partial ^{2}u_{z}}{\partial y^{2}}}+{\frac {\partial ^{2}u_{z}}{\partial z^{2}}}\right)-\mu {\frac {\partial }{\partial z}}\left({\frac {\partial u_{x}}{\partial x}}+{\frac {\partial u_{y}}{\partial y}}+{\frac {\partial u_{z}}{\partial z}}\right)+\rho g_{z}.\end{aligned}} Note that gravity has been accounted for as a body force, and the values of gx, gy, gz will depend on the orientation of gravity with respect to the chosen set of coordinates.

${\partial \rho \over \partial t}+{\partial (\rho u_{x}) \over \partial x}+{\partial (\rho u_{y}) \over \partial y}+{\partial (\rho u_{z}) \over \partial z}=0.$ When the flow is incompressible, $\rho$ does not change for any fluid particle, and its material derivative vanishes: ${D\rho \over Dt}=0$ . The continuity equation is reduced to:

${\partial u_{x} \over \partial x}+{\partial u_{y} \over \partial y}+{\partial u_{z} \over \partial z}=0.$ Thus, for the incompressible version of the Navier-Stokes equation the second part of the viscous terms fall away (see Incompressible flow).

This system of four equations comprises the most commonly used and studied form. Though comparatively more compact than other representations, this is still a nonlinear system of partial differential equations for which solutions are difficult to obtain.

### Cylindrical coordinates

A change of variables on the Cartesian equations will yield the following momentum equations for r, $\phi$ , and z:

{\begin{aligned}r:\ &\rho \left({\frac {\partial u_{r}}{\partial t}}+u_{r}{\frac {\partial u_{r}}{\partial r}}+{\frac {u_{\phi }}{r}}{\frac {\partial u_{r}}{\partial \phi }}+u_{z}{\frac {\partial u_{r}}{\partial z}}-{\frac {u_{\phi }^{2}}{r}}\right)={}\\&-{\frac {\partial p}{\partial r}}+\mu \left[{\frac {1}{r}}{\frac {\partial }{\partial r}}\left(r{\frac {\partial u_{r}}{\partial r}}\right)+{\frac {1}{r^{2}}}{\frac {\partial ^{2}u_{r}}{\partial \phi ^{2}}}+{\frac {\partial ^{2}u_{r}}{\partial z^{2}}}-{\frac {u_{r}}{r^{2}}}-{\frac {2}{r^{2}}}{\frac {\partial u_{\phi }}{\partial \phi }}\right]+\rho g_{r}\\\phi :\ &\rho \left({\frac {\partial u_{\phi }}{\partial t}}+u_{r}{\frac {\partial u_{\phi }}{\partial r}}+{\frac {u_{\phi }}{r}}{\frac {\partial u_{\phi }}{\partial \phi }}+u_{z}{\frac {\partial u_{\phi }}{\partial z}}+{\frac {u_{r}u_{\phi }}{r}}\right)={}\\&-{\frac {1}{r}}{\frac {\partial p}{\partial \phi }}+\mu \left[{\frac {1}{r}}{\frac {\partial }{\partial r}}\left(r{\frac {\partial u_{\phi }}{\partial r}}\right)+{\frac {1}{r^{2}}}{\frac {\partial ^{2}u_{\phi }}{\partial \phi ^{2}}}+{\frac {\partial ^{2}u_{\phi }}{\partial z^{2}}}+{\frac {2}{r^{2}}}{\frac {\partial u_{r}}{\partial \phi }}-{\frac {u_{\phi }}{r^{2}}}\right]+\rho g_{\phi }\\z:\ &\rho \left({\frac {\partial u_{z}}{\partial t}}+u_{r}{\frac {\partial u_{z}}{\partial r}}+{\frac {u_{\phi }}{r}}{\frac {\partial u_{z}}{\partial \phi }}+u_{z}{\frac {\partial u_{z}}{\partial z}}\right)={}\\&-{\frac {\partial p}{\partial z}}+\mu \left[{\frac {1}{r}}{\frac {\partial }{\partial r}}\left(r{\frac {\partial u_{z}}{\partial r}}\right)+{\frac {1}{r^{2}}}{\frac {\partial ^{2}u_{z}}{\partial \phi ^{2}}}+{\frac {\partial ^{2}u_{z}}{\partial z^{2}}}\right]+\rho g_{z}.\end{aligned}} The gravity components will generally not be constants, however for most applications either the coordinates are chosen so that the gravity components are constant or else it is assumed that gravity is counteracted by a pressure field (for example, flow in horizontal pipe is treated normally without gravity and without a vertical pressure gradient). The continuity equation is:

${\frac {\partial \rho }{\partial t}}+{\frac {1}{r}}{\frac {\partial }{\partial r}}\left(\rho ru_{r}\right)+{\frac {1}{r}}{\frac {\partial (\rho u_{\phi })}{\partial \phi }}+{\frac {\partial (\rho u_{z})}{\partial z}}=0.$ This cylindrical representation of the incompressible Navier–Stokes equations is the second most commonly seen (the first being Cartesian above). Cylindrical coordinates are chosen to take advantage of symmetry, so that a velocity component can disappear. A very common case is axisymmetric flow with the assumption of no tangential velocity ($u_{\phi }=0$ ), and the remaining quantities are independent of $\phi$ :

{\begin{aligned}\rho \left({\frac {\partial u_{r}}{\partial t}}+u_{r}{\frac {\partial u_{r}}{\partial r}}+u_{z}{\frac {\partial u_{r}}{\partial z}}\right)&=-{\frac {\partial p}{\partial r}}+\mu \left[{\frac {1}{r}}{\frac {\partial }{\partial r}}\left(r{\frac {\partial u_{r}}{\partial r}}\right)+{\frac {\partial ^{2}u_{r}}{\partial z^{2}}}-{\frac {u_{r}}{r^{2}}}\right]+\rho g_{r}\\\rho \left({\frac {\partial u_{z}}{\partial t}}+u_{r}{\frac {\partial u_{z}}{\partial r}}+u_{z}{\frac {\partial u_{z}}{\partial z}}\right)&=-{\frac {\partial p}{\partial z}}+\mu \left[{\frac {1}{r}}{\frac {\partial }{\partial r}}\left(r{\frac {\partial u_{z}}{\partial r}}\right)+{\frac {\partial ^{2}u_{z}}{\partial z^{2}}}\right]+\rho g_{z}\\{\frac {1}{r}}{\frac {\partial }{\partial r}}\left(ru_{r}\right)+{\frac {\partial u_{z}}{\partial z}}&=0.\end{aligned}} ### Spherical coordinates

In spherical coordinates, the r, ϕ, and θ momentum equations are (note the convention used: θ is polar angle, or colatitude, 0 ≤ θ ≤ π):

{\begin{aligned}r:\ &\rho \left({\frac {\partial u_{r}}{\partial t}}+u_{r}{\frac {\partial u_{r}}{\partial r}}+{\frac {u_{\phi }}{r\sin(\theta )}}{\frac {\partial u_{r}}{\partial \phi }}+{\frac {u_{\theta }}{r}}{\frac {\partial u_{r}}{\partial \theta }}-{\frac {u_{\phi }^{2}+u_{\theta }^{2}}{r}}\right)=-{\frac {\partial p}{\partial r}}+\rho g_{r}+\\&\mu \left[{\frac {1}{r^{2}}}{\frac {\partial }{\partial r}}\left(r^{2}{\frac {\partial u_{r}}{\partial r}}\right)+{\frac {1}{r^{2}\sin(\theta )^{2}}}{\frac {\partial ^{2}u_{r}}{\partial \phi ^{2}}}+{\frac {1}{r^{2}\sin(\theta )}}{\frac {\partial }{\partial \theta }}\left(\sin(\theta ){\frac {\partial u_{r}}{\partial \theta }}\right)-2{\frac {u_{r}+{\frac {\partial u_{\theta }}{\partial \theta }}+u_{\theta }\cot(\theta )}{r^{2}}}-{\frac {2}{r^{2}\sin(\theta )}}{\frac {\partial u_{\phi }}{\partial \phi }}\right]\\\phi :\ &\rho \left({\frac {\partial u_{\phi }}{\partial t}}+u_{r}{\frac {\partial u_{\phi }}{\partial r}}+{\frac {u_{\phi }}{r\sin(\theta )}}{\frac {\partial u_{\phi }}{\partial \phi }}+{\frac {u_{\theta }}{r}}{\frac {\partial u_{\phi }}{\partial \theta }}+{\frac {u_{r}u_{\phi }+u_{\phi }u_{\theta }\cot(\theta )}{r}}\right)=-{\frac {1}{r\sin(\theta )}}{\frac {\partial p}{\partial \phi }}+\rho g_{\phi }+\\&\mu \left[{\frac {1}{r^{2}}}{\frac {\partial }{\partial r}}\left(r^{2}{\frac {\partial u_{\phi }}{\partial r}}\right)+{\frac {1}{r^{2}\sin(\theta )^{2}}}{\frac {\partial ^{2}u_{\phi }}{\partial \phi ^{2}}}+{\frac {1}{r^{2}\sin(\theta )}}{\frac {\partial }{\partial \theta }}\left(\sin(\theta ){\frac {\partial u_{\phi }}{\partial \theta }}\right)+{\frac {2\sin(\theta ){\frac {\partial u_{r}}{\partial \phi }}+2\cos(\theta ){\frac {\partial u_{\theta }}{\partial \phi }}-u_{\phi }}{r^{2}\sin(\theta )^{2}}}\right]\\\theta :\ &\rho \left({\frac {\partial u_{\theta }}{\partial t}}+u_{r}{\frac {\partial u_{\theta }}{\partial r}}+{\frac {u_{\phi }}{r\sin(\theta )}}{\frac {\partial u_{\theta }}{\partial \phi }}+{\frac {u_{\theta }}{r}}{\frac {\partial u_{\theta }}{\partial \theta }}+{\frac {u_{r}u_{\theta }-u_{\phi }^{2}\cot(\theta )}{r}}\right)=-{\frac {1}{r}}{\frac {\partial p}{\partial \theta }}+\rho g_{\theta }+\\&\mu \left[{\frac {1}{r^{2}}}{\frac {\partial }{\partial r}}\left(r^{2}{\frac {\partial u_{\theta }}{\partial r}}\right)+{\frac {1}{r^{2}\sin(\theta )^{2}}}{\frac {\partial ^{2}u_{\theta }}{\partial \phi ^{2}}}+{\frac {1}{r^{2}\sin(\theta )}}{\frac {\partial }{\partial \theta }}\left(\sin(\theta ){\frac {\partial u_{\theta }}{\partial \theta }}\right)+{\frac {2}{r^{2}}}{\frac {\partial u_{r}}{\partial \theta }}-{\frac {u_{\theta }+2\cos(\theta ){\frac {\partial u_{\phi }}{\partial \phi }}}{r^{2}\sin(\theta )^{2}}}\right].\end{aligned}} ${\frac {\partial \rho }{\partial t}}+{\frac {1}{r^{2}}}{\frac {\partial }{\partial r}}\left(\rho r^{2}u_{r}\right)+{\frac {1}{r\sin(\theta )}}{\frac {\partial \rho u_{\phi }}{\partial \phi }}+{\frac {1}{r\sin(\theta )}}{\frac {\partial }{\partial \theta }}\left(\sin(\theta )\rho u_{\theta }\right)=0.$ These equations could be (slightly) compacted by, for example, factoring $1/r^{2}$ from the viscous terms. However, doing so would undesirably alter the structure of the Laplacian and other quantities.

## Stream function formulation

Taking the curl of the Navier–Stokes equation results in the elimination of pressure. This is especially easy to see if 2D Cartesian flow is assumed (like in the degenerate 3D case with $u_{z}=0$ and no dependence of anything on z), where the equations reduce to:

{\begin{aligned}\rho \left({\frac {\partial u_{x}}{\partial t}}+u_{x}{\frac {\partial u_{x}}{\partial x}}+u_{y}{\frac {\partial u_{x}}{\partial y}}\right)&=-{\frac {\partial p}{\partial x}}+\mu \left({\frac {\partial ^{2}u_{x}}{\partial x^{2}}}+{\frac {\partial ^{2}u_{x}}{\partial y^{2}}}\right)+\rho g_{x}\\\rho \left({\frac {\partial u_{y}}{\partial t}}+u_{x}{\frac {\partial u_{y}}{\partial x}}+u_{y}{\frac {\partial u_{y}}{\partial y}}\right)&=-{\frac {\partial p}{\partial y}}+\mu \left({\frac {\partial ^{2}u_{y}}{\partial x^{2}}}+{\frac {\partial ^{2}u_{y}}{\partial y^{2}}}\right)+\rho g_{y}.\end{aligned}} Differentiating the first with respect to y, the second with respect to x and subtracting the resulting equations will eliminate pressure and any conservative force. Defining the stream function $\psi$ through

$u_{x}={\frac {\partial \psi }{\partial y}};\quad u_{y}=-{\frac {\partial \psi }{\partial x}}$ results in mass continuity being unconditionally satisfied (given the stream function is continuous), and then incompressible Newtonian 2D momentum and mass conservation condense into one equation:

${\frac {\partial }{\partial t}}\left(\nabla ^{2}\psi \right)+{\frac {\partial \psi }{\partial y}}{\frac {\partial }{\partial x}}\left(\nabla ^{2}\psi \right)-{\frac {\partial \psi }{\partial x}}{\frac {\partial }{\partial y}}\left(\nabla ^{2}\psi \right)=\nu \nabla ^{4}\psi$ ${\frac {\partial }{\partial t}}\left(\nabla ^{2}\psi \right)+{\frac {\partial \left(\psi ,\nabla ^{2}\psi \right)}{\partial \left(y,x\right)}}=\nu \nabla ^{4}\psi .$ This single equation together with appropriate boundary conditions describes 2D fluid flow, taking only kinematic viscosity as a parameter. Note that the equation for creeping flow results when the left side is assumed zero.

In axisymmetric flow another stream function formulation, called the Stokes stream function, can be used to describe the velocity components of an incompressible flow with one scalar function.

### Pressure-free velocity formulation

The incompressible Navier–Stokes equation is a differential algebraic equation, having the inconvenient feature that there is no explicit mechanism for advancing the pressure in time. Consequently, much effort has been expended to eliminate the pressure from all or part of the computational process. The stream function formulation above eliminates the pressure (in 2D) at the expense of introducing higher derivatives and elimination of the velocity, which is the primary variable of interest.

The incompressible Navier–Stokes equation is composite, the sum of two orthogonal equations,

{\begin{aligned}{\frac {\partial \mathbf {u} }{\partial t}}&=\Pi ^{S}\left(-\mathbf {u} \cdot \nabla \mathbf {u} +\nu \nabla ^{2}\mathbf {u} \right)+\mathbf {f} ^{S}\\\rho ^{-1}\nabla p&=\Pi ^{I}\left(-\mathbf {u} \cdot \nabla \mathbf {u} +\nu \nabla ^{2}\mathbf {u} \right)+\mathbf {f} ^{I}\end{aligned}} where $\Pi ^{S}$ and $\Pi ^{I}$ are solenoidal and irrotational projection operators satisfying $\Pi ^{S}+\Pi ^{I}=1$ and ${\mathbf {f} }^{S}$ and ${\mathbf {f} }^{I}$ are the non-conservative and conservative parts of the body force. This result follows from the Helmholtz Theorem (also known as the fundamental theorem of vector calculus). The first equation is a pressureless governing equation for the velocity, while the second equation for the pressure is a functional of the velocity and is related to the pressure Poisson equation.

The explicit functional form of the projection operator in 3D is found from the Helmholtz Theorem

$\Pi ^{S}\,{\mathbf {F} }({\mathbf {r} })={\frac {1}{4\pi }}\nabla \times \int {\frac {\nabla ^{\prime }\times {\mathbf {F} }({\mathbf {r} }^{\prime })}{|{\mathbf {r} }-{\mathbf {r} }^{\prime }|}}dV^{\prime },\quad \Pi ^{I}=1-\Pi ^{S}$ with a similar structure in 2D. Thus the governing equation is an integro-differential equation and not convenient for numerical computation.

An equivalent weak or variational form of the equation, proved to produce the same velocity solution as the Navier–Stokes equation, is given by,

$\left(\mathbf {w} ,{\frac {\partial \mathbf {u} }{\partial t}}\right)=-(\mathbf {w} ,\mathbf {u} \cdot \nabla \mathbf {u} )-\nu (\nabla \mathbf {w} :\nabla \mathbf {u} )+(\mathbf {w} ,\mathbf {f} ^{S})$ for divergence-free test functions ${\mathbf {w} }$ satisfying appropriate boundary conditions. Here, the projections are accomplished by the orthogonality of the solenoidal and irrotational function spaces. The discrete form of this is imminently suited to finite element computation of divergence-free flow, as we shall see in the next section. There we will be able to address the question, "How does one specify pressure-driven (Poiseuille) problems with a pressureless governing equation?"

The absence of pressure forces from the governing velocity equation demonstrates that the equation is not a dynamic one, but rather a kinematic equation where the divergence-free condition serves the role of a conservation law. This all would seem to refute the frequent statements that the incompressible pressure enforces the divergence-free condition.

#### Discrete velocity

With partitioning of the problem domain and defining basis functions on the partitioned domain, the discrete form of the governing equation is,

$\left(\mathbf {w} _{i},{\frac {\partial \mathbf {u} _{j}}{\partial t}}\right)=-(\mathbf {w} _{i},\mathbf {u} \cdot \nabla \mathbf {u} _{j})-\nu (\nabla \mathbf {w} _{i}:\nabla \mathbf {u} _{j})+\left(\mathbf {w} _{i},\mathbf {f} ^{S}\right).$ It is desirable to choose basis functions which reflect the essential feature of incompressible flow – the elements must be divergence-free. While the velocity is the variable of interest, the existence of the stream function or vector potential is necessary by the Helmholtz Theorem. Further, to determine fluid flow in the absence of a pressure gradient, one can specify the difference of stream function values across a 2D channel, or the line integral of the tangential component of the vector potential around the channel in 3D, the flow being given by Stokes' Theorem. Discussion will be restricted to 2D in the following.

We further restrict discussion to continuous Hermite finite elements which have at least first-derivative degrees-of-freedom. With this, one can draw a large number of candidate triangular and rectangular elements from the plate-bending literature. These elements have derivatives as components of the gradient. In 2D, the gradient and curl of a scalar are clearly orthogonal, given by the expressions,

$\nabla \phi =\left[{\frac {\partial \phi }{\partial x}},\,{\frac {\partial \phi }{\partial y}}\right]^{\mathrm {T} },\quad \nabla \times \phi =\left[{\frac {\partial \phi }{\partial y}},\,-{\frac {\partial \phi }{\partial x}}\right]^{\mathrm {T} }.$ Adopting continuous plate-bending elements, interchanging the derivative degrees-of-freedom and changing the sign of the appropriate one gives many families of stream function elements.

Taking the curl of the scalar stream function elements gives divergence-free velocity elements. The requirement that the stream function elements be continuous assures that the normal component of the velocity is continuous across element interfaces, all that is necessary for vanishing divergence on these interfaces.

Boundary conditions are simple to apply. The stream function is constant on no-flow surfaces, with no-slip velocity conditions on surfaces. Stream function differences across open channels determine the flow. No boundary conditions are necessary on open boundaries, though consistent values may be used with some problems. These are all Dirichlet conditions.

The algebraic equations to be solved are simple to set up, but of course are non-linear, requiring iteration of the linearized equations.

Similar considerations apply to three-dimensions, but extension from 2D is not immediate because of the vector nature of the potential, and there exists no simple relation between the gradient and the curl as was the case in 2D.

#### Pressure recovery

Recovering pressure from the velocity field is easy. The discrete weak equation for the pressure gradient is,

$(\mathbf {g} _{i},\nabla p)=-(\mathbf {g} _{i},\mathbf {u} \cdot \nabla \mathbf {u} _{j})-\nu (\nabla \mathbf {g} _{i}:\nabla \mathbf {u} _{j})+(\mathbf {g} _{i},\mathbf {f} ^{I})$ where the test/weight functions are irrotational. Any conforming scalar finite element may be used. However, the pressure gradient field may also be of interest. In this case one can use scalar Hermite elements for the pressure. For the test/weight functions ${\mathbf {g} }_{i}$ one would choose the irrotational vector elements obtained from the gradient of the pressure element.

## Compressible flow of Newtonian fluids

There are some phenomena that are closely linked with fluid compressibility. One of the obvious examples is sound. Description of such phenomena requires more general presentation of the Navier–Stokes equation that takes into account fluid compressibility. If viscosity is assumed a constant, one additional term appears, as shown here:

$\rho \left({\frac {\partial \mathbf {u} }{\partial t}}+\mathbf {u} \cdot \nabla \mathbf {u} \right)-\mu \nabla ^{2}\mathbf {u} -\left(\zeta +{\frac {\mu }{3}}\right)\nabla (\nabla \cdot \mathbf {u} )=-\nabla p+\mathbf {f} ,$ ## Application to specific problems

The Navier–Stokes equations, even when written explicitly for specific fluids, are rather generic in nature and their proper application to specific problems can be very diverse. This is partly because there is an enormous variety of problems that may be modeled, ranging from as simple as the distribution of static pressure to as complicated as multiphase flow driven by surface tension.

Generally, application to specific problems begins with some flow assumptions and initial/boundary condition formulation, this may be followed by scale analysis to further simplify the problem.

a) Assume steady, parallel, one dimensional, non-convective pressure-driven flow between parallel plates, the resulting scaled (dimensionless) boundary value problem is:

${\frac {d^{2}u}{dy^{2}}}=-1;\quad u(0)=u(1)=0.$ The boundary condition is the no slip condition. This problem is easily solved for the flow field:

$u(y)={\frac {y-y^{2}}{2}}.$ From this point onward more quantities of interest can be easily obtained, such as viscous drag force or net flow rate.

b) Difficulties may arise when the problem becomes slightly more complicated. A seemingly modest twist on the parallel flow above would be the radial flow between parallel plates; this involves convection and thus non-linearity. The velocity field may be represented by a function $f(z)$ that must satisfy:

${\frac {d^{2}f}{dz^{2}}}+Rf^{2}=-1;\quad f(-1)=f(1)=0.$ This ordinary differential equation is what is obtained when the Navier–Stokes equations are written and the flow assumptions applied (additionally, the pressure gradient is solved for). The nonlinear term makes this a very difficult problem to solve analytically (a lengthy implicit solution may be found which involves elliptic integrals and roots of cubic polynomials). Issues with the actual existence of solutions arise for R > 1.41 (approximately; this is not the square root of 2), the parameter R being the Reynolds number with appropriately chosen scales. This is an example of flow assumptions losing their applicability, and an example of the difficulty in "high" Reynolds number flows.

## Exact solutions of the Navier–Stokes equations

Some exact solutions to the Navier–Stokes equations exist. Examples of degenerate cases — with the non-linear terms in the Navier–Stokes equations equal to zero — are Poiseuille flow, Couette flow and the oscillatory Stokes boundary layer. But also more interesting examples, solutions to the full non-linear equations, exist; for example the Taylor–Green vortex. Note that the existence of these exact solutions does not imply they are stable: turbulence may develop at higher Reynolds numbers.

### A three-dimensional steady-state vortex solution

A nice steady-state example with no singularities comes from considering the flow along the lines of a Hopf fibration. Let r be a constant radius to the inner coil. One set of solutions is given by:

{\begin{aligned}\rho (x,y,z)&={\frac {3B}{r^{2}+x^{2}+y^{2}+z^{2}}}\\p(x,y,z)&={\frac {-A^{2}B}{(r^{2}+x^{2}+y^{2}+z^{2})^{3}}}\\\mathbf {u} (x,y,z)&={\frac {A}{(r^{2}+x^{2}+y^{2}+z^{2})^{2}}}{\begin{pmatrix}2(-ry+xz)\\2(rx+yz)\\r^{2}-x^{2}-y^{2}+z^{2}\end{pmatrix}}\\g&=0\\\mu &=0\end{aligned}} for arbitrary constants A and B. This is a solution in a non-viscous gas (compressible fluid) whose density, velocities and pressure goes to zero far from the origin. (Note this is not a solution to the Clay Millennium problem because that refers to incompressible fluids where $\rho$ is a constant, neither does it deal with the uniqueness of the Navier–Stokes equations with respect to any turbulence properties.) It is also worth pointing out that the components of the velocity vector are exactly those from the Pythagorean quadruple parametrization. Other choices of density and pressure are possible with the same velocity field:

## Wyld diagrams

Wyld diagrams are bookkeeping graphs that correspond to the Navier–Stokes equations via a perturbation expansion of the fundamental continuum mechanics. Similar to the Feynman diagrams in quantum field theory, these diagrams are an extension of Keldysh's technique for nonequilibrium processes in fluid dynamics. In other words, these diagrams assign graphs to the (often) turbulent phenomena in turbulent fluids by allowing correlated and interacting fluid particles to obey stochastic processes associated to pseudo-random functions in probability distributions.

## Navier–Stokes equations use in games

The Navier–Stokes equations are used extensively in video games in order to model a wide variety of natural phenomena. Simulations of small-scale gaseous fluids, such as fire and smoke are often based on the seminal paper "Real-Time Fluid Dynamics for Games" by Jos Stam, which elaborates one of the methods proposed in Stam's earlier, more famous paper "Stable Fluids" from 1999. Stam proposes stable fluid simulation using a Navier–Stokes solution method from 1968, coupled with an unconditionally stable semi-Lagrangian advection scheme, as first proposed in 1992.

More recent implementations based upon this work run on the GPU as opposed to the CPU and achieve a much higher degree of performance. Many improvements have been proposed to Stam's original work, which suffers inherently from high numerical dissipation in both velocity and mass.

An introduction to interactive fluid simulation can be found in the 2007 ACM SIGGRAPH course, Fluid Simulation for Computer Animation.