Equation Types

Equation Types #

PDE’s can be classified as elliptic, parabolic, or hyperbolic. The type of equation will suggest the choice of an appropriate algorithm.

The equation type can change for different flow parameters, or even for different regions within the same domain.

20.4.1 Scalar Equations #

All of the scalar equations in fluid dynamics can be written in canonical form as the following 2nd order PDE.

\[a \phi_{xx} + b \phi_{xy} + c \phi_{yy} + d \phi_x + e \phi_y + f \phi = g\]

where \( x, y \) are any two independent variables. I.e. we could let \( x \rightarrow t \). In this form, we can identify the equation type by transforming into a quadratic form (derivation not shown)

\[a \left( \dv{y}{x} \right) ^2 + b \left( \dv{y}{x} \right) + c = 0\]

The equation types are

  • Elliptic: \( b^2 < 4ac \)
  • Parabolic: \( b^2 = 4ac \)
  • Hyperbolic: \( b^2 > 4ac \)

Apparently, the equation type is going to have something to do with the types of roots of the scalar PDE.

Some examples:

  1. Laplace’s Eq.
\[\phi_{xx} + \phi_{yy} = 0 \qquad (0) ^2 < 4(1)(1) \rightarrow \text{elliptic}\]

We know that typical solutions to Laplace’s equation are entirely determined by the value at the boundary. The solutions are the smoothest possible functions that satisfy the boundary condition. There are no waves.

  1. Heat conduction equation
\[\theta _t = \alpha \theta_{xx} \qquad (0)^2 = 4 (\alpha)(0) \rightarrow \text{parabolic}\]

We know that the typical solutions have diffusion-like behavior. 3. Linear advection equation

\[u_t + a u_x = 0\]

We’re not already in canonical form, but we can get there with some algebraic manipulation

\[0 = u_{tt} + a u_{xy} = u_{tt} + a (u_t)_x = u_{tt} - a^2 u_{xx}\] \[\rightarrow 0 > 4(1)(-a^2) \rightarrow \text{hyperbolic}\]

Typical solutions to the linear advection equation are waves which propagate at a set speed.

Let’s look back at the linear potential equation

\[(1 - M_{\infty}^2) \phi_{xx} + \phi_{yy} = 0\]

The equation type depends on the flow speed (Mach number) of the bulk \( M_{\infty} \). For \( M_{\infty}^2 < 1 \) it is elliptic. For \( M_{\infty}^2 > 1 \) it is hyperbolic. We don’t get parabolic solutions because near \( M_\infty = 1 \) we are going to get shocks and we are obviously not in linear flow.

It is also possible for the equation type to change within the domain. In particular, look at the TSD (transonic disturbance) equation. The selection parameter is

\[\frac{1 - M_{\infty}^2}{M_{\infty}^2} > (\gamma + 1) \frac{u'}{u_{\infty}} \]

So for \( u_{\infty} + u’ < a \) we have an elliptic equation, but for \( u_{\infty} + u’ > a \) we have a hyperbolic equation. These are locally evaluated, so we can change types within the same domain. We can imagine the flow around a wing for which \( u_{\infty} > a_{\infty} \), then in most of the domain \( u > a \) and the problem is hyperbolic, but near the front of the wing where \( u < a \) the problem becomes elliptic.

20.4.2 Systems of Equations #

Moving away from scalar equations to the world of our Euler equations,

\[\pdv{\vec Q}{t} + \pdv{\vec F}{x} = 0\] \[Q = \begin{bmatrix} \rho \\ \rho u \\ e \end{bmatrix} = \begin{bmatrix} \rho \\ m \\ e \end{bmatrix}\]

Where we’ve written \( \rho u \) as a separate independent variable \( m \) (we can do that because \( \rho \) and \( u \) are independent).

\[\pdv{\vec{Q}}{t} + \vec A \cdot \pdv{\vec F}{x} = 0 \qquad \vec A \equiv \pdv{\vec F}{\vec Q} \quad \text{(Flux Jacobian)}\]

The equation type is given by the characteristics of the flux Jacobian:

  1. Elliptic: The eigenvalues of \( \vec A \) are imaginary.
  2. Parabolic: The eigenvalues are repeated and the eigenvectors are not unique.
  3. Hyperbolic: The eigenvalues are real and the eigenvectors are unique.

20.4.3 Flux Jacobian for Euler Equations #

Recall the definition

\[\overline{F}= \begin{bmatrix} m \\ \frac{m^2}{\rho} + p \\ \frac{m}{\rho} (e + p) \end{bmatrix}\] \[\pdv{\overline{F}}{\overline{Q}} = \begin{bmatrix} \left. \pdv{F_1}{Q_1} \right|_{Q_2 Q_3} & \left. \pdv{F_1}{Q_2} \right|_{Q_1 Q_3} & \left. \pdv{F_1}{Q_1} \right|_{Q_2 Q_3} \\ \left. \pdv{F_2}{Q_1} \right|_{Q_2 Q_3} & \ldots & \ldots \end{bmatrix}\]

Starting at the first element, and recalling that we take the partial derivative holding \( Q_2 \) and \( Q_3 \) constant,

\[\pdv{F_1}{Q_1} = \pdv{m}{\rho} = 0\]

Skipping to the end result,

\[\overline{A} = \begin{bmatrix} 0 & 1 & 0 \\ - \frac{m^2}{\rho^2} + p_{\rho} & \frac{2 m}{\rho} + p_m & p_e \\ - \frac{m}{\rho^2} (e + p) + \frac{m}{\rho} p_{\rho} & \frac{e + p}{\rho} + \frac{m}{\rho} p_m & \frac{m}{\rho} (1 + p_e) \end{bmatrix}\]

Let’s talk about how we deal with these partial derivatives of pressure with respect to our conserved quantities

\[p_{\rho} = \left. \pdv{p}{\rho} \right| _{m e}\]

From the definition,

\[e = \frac{p}{\gamma - 1} + \frac{\rho v^2}{2}\]

Solve for pressure,

\[p = ( \gamma - 1) \left( e - \frac{\rho v^2}{2} \right)\] \[= ( \gamma - 1 ) \left( e - \frac{m ^2}{2 \rho} \right)\]

Now we can get our partial derivatives easily

\[p_{\rho} = \left. \pdv{p}{\rho} \right| _{m e} = (\gamma - 1) \frac{m^2}{\rho ^2} = \frac{1}{2} ( \gamma - 1) u^2\]

We also define the sound speed

\[c_S ^2 = \frac{\gamma p}{\rho}\]

Writing our the flux Jacobian in these terms,

\[\overline{A} = \begin{bmatrix} 0 & 1 & 0 \\ \frac{\gamma - 3}{2} u^2 & - (\gamma - 3) u & \gamma - 1 \\ - \frac{u c_s ^2}{\gamma - 1} + \frac{\gamma - 2}{2} u^3 & \frac{c_s ^2}{\gamma - 1} - ( \gamma - 3/2) u^2 & \gamma u \end{bmatrix} \]

If we perform an eigen decomposition of \( \overline{A} \) we find that it has eigenvalues

\[\Lambda = \begin{pmatrix} u & u-c_s & u + c_s \end{pmatrix}\]

And a complete set of eigenvectors are

\[\overline{X} = \begin{bmatrix} 1 & 1 & 1 \\ u & u - c_s & u + c_s \\ \frac{u^2}{2} & \frac{u^2}{2} - c_s u + \frac{c_s ^2}{\gamma - 1} & \frac{u^2}{2} + c_s u + \frac{c_s ^2}{\gamma - 1} \end{bmatrix}\]

This set of eigenvectors are linearly independent and the eigenvalues are all real, which means the Euler equations are a hyperbolic system of equations. In the same way that the scalar advection equation gives wave solutions, the Euler equations will give solutions in which information propagates along characteristics (the eigenvalues) with a wave-like behavior. The eigenvalues we got here are the same characteristics you would get via the method of characteristics in linear fluid dynamics:

  • \( u + c_s \): Shock wave
  • \( u \): Contact discontinuity
  • \( u - c_s \): Rarefaction (expansion) waves

Mathematically, by doing the eigen decomposition we have solved \( \overline{A} \overline{X} = \overline{X} \overline{\Lambda} \). This solves the complete Euler equations

\[\pdv{Q}{t} + A \pdv{Q}{x} = 0\]

We can right-multiply by the inverse of \( \vec X \)

\[\vec A \vec X \vec X^{-1} = \vec X \vec{\Lambda} \vec X ^{-1}\] \[\rightarrow A = \vec X \vec{\Lambda} \vec X ^{-1}\] \[\rightarrow \pdv{Q}{t} + \vec X \vec \Lambda \vec X^{-1} = 0\]

Now we make an approximation: Assume that the eigenvector \( \vec X \) is locally constant (in both space in time) such that

\[\pdv{\vec X}{t} = 0 \qquad \pdv{\vec X}{x} = 0\]

We can re-arrange our \( \vec X \)’s again by pre-multiplying by \( \vec X ^{-1} \)

\[\vec X^{-1} \pdv{Q}{t} + ( \vec X^{-1} \vec X) \vec \Lambda \vec X ^{-1} \pdv{Q}{x} = 0\] \[\rightarrow \pdv{}{t} (\vec X ^{-1} Q) + \vec \Lambda \pdv{}{x} ( \vec X^{-1} \vec Q) = 0\]

We can define a new variable

\[\vec W \equiv \vec X^{-1} \vec Q\]

So we have

\[\pdv{\vec W}{t} + \vec \Lambda \pdv{\vec W}{x} = 0\]

Since \( \Lambda \) is simply a diagonal 3x3 matrix, we have now de-coupled our system into three independent equations

\[\pdv{W_i}{t} + \lambda_i \pdv{W_i}{x} = 0 \qquad i = 1, 2, 3\]

While this is not equivalent to the Euler equations, it is a pretty close approximation and it maintains all of the non-linear properties of the Euler equations. Indeed, because of the values \( \lambda_i \) the system has the same characteristics \( (u, u+c_s, u-c_s) \) as the Euler equations. Now we have a set of 3 advection equations. Therefore, a convenient model for the Euler equations is the linear wave equation

\[\pdv{u}{t} + a \pdv{u}{x} = 0\]

because it will capture the same wave-like behavior of the Euler equations, but most importantly because we have an analytic solution of the linear advection equation which allows us to check both the stability and the accuracy of our solution.

\[u ( x - at) = \text{const.}\]

With periodic boundary conditions, we expect the solution to wrap back around to its initial conditions, allowing us to check for errors we may have introduced in our algorithm.

Another model equation we can use for the Euler equations is Burger’s equation, which is a nonlinear advection equation

\[\pdv{u}{t} + u \pdv{u}{x} = 0\]

Other model equations we can use to model the Navier-Stokes equations is an advection-diffusion equation, which is simply an addition of a diffusion term to the linear wave equation

\[\pdv{u}{t} + a \pdv{u}{x} = b \pdv{^2 u }{x^2}\]

A viscous version of Burger’s equation also works as a good model for Navier-Stokes

\[\pdv{u}{t} + u \pdv{u}{x} = b \pdv{^2 u}{x^2}\]

This presents a development path for CFD algorithms. We take an algorithm, apply it to the advection equations and check stability/accuracy, then apply Burger’s equation, then add viscous effects, then we may be able to solve the full Euler’s equations.