Chapter 25
22 min read
Section 215 of 353

Classification: Elliptic, Parabolic, Hyperbolic

Introduction to PDEs

Learning Objectives

By the end of this section, you will be able to:

  1. Compute the discriminant B24ACB^2 - 4AC for any second-order linear PDE and determine its classification
  2. Explain the geometric connection between PDE classification and conic sections (ellipse, parabola, hyperbola)
  3. Describe the characteristic curves for each type and what they reveal about information propagation
  4. Compare the solution behavior of elliptic, parabolic, and hyperbolic PDEs using physical intuition
  5. Determine the appropriate initial and boundary conditions for each PDE type (well-posedness)
  6. Recognize variable-coefficient and mixed-type PDEs that change classification across the domain
  7. Connect PDE classification to modern machine learning applications including diffusion models and neural operators

The Big Picture: Why Classification Matters

"In mathematics, you don't understand things. You just get used to them." — John von Neumann. But PDE classification is one place where understanding truly helps: knowing the type tells you everything about how solutions behave.

Imagine you are an engineer confronted with a partial differential equation describing some physical system. Before you can solve it, choose a numerical method, or even decide what boundary data to provide, you need to answer one fundamental question: What type of PDE is this?

The classification of second-order PDEs into elliptic, parabolic, and hyperbolic types is not merely a mathematical taxonomy. It determines:

Solution Character

Does the solution smooth out, propagate as waves, or represent an equilibrium? The type tells you.

Required Data

How many initial and boundary conditions are needed? The type dictates what makes the problem well-posed.

Numerical Methods

Which algorithms work? Stability conditions, time-stepping methods, and solvers all depend on the type.

The remarkable fact is that a single number — the discriminant B24ACB^2 - 4AC — captures all of this information. This is one of the most elegant results in applied mathematics.


The General Second-Order Linear PDE

The most general second-order linear PDE in two independent variables xx and yy has the form:

General Form

A(x,y)2ux2+B(x,y)2uxy+C(x,y)2uy2+Dux+Euy+Fu=GA(x,y)\frac{\partial^2 u}{\partial x^2} + B(x,y)\frac{\partial^2 u}{\partial x \partial y} + C(x,y)\frac{\partial^2 u}{\partial y^2} + D\frac{\partial u}{\partial x} + E\frac{\partial u}{\partial y} + Fu = G

where A,B,C,D,E,F,GA, B, C, D, E, F, G are functions of xx and yy (and possibly uu for quasi-linear PDEs).

The classification depends only on the highest-order terms — the coefficients AA, BB, and CC of the second-order derivatives. The lower-order terms (involving D,E,F,GD, E, F, G) affect the specific solution but not the fundamental type of the equation.

The Principal Part

The principal part (or principal symbol) of the PDE consists of only the highest-order terms:

Auxx+Buxy+CuyyAu_{xx} + Bu_{xy} + Cu_{yy}

This is the part that determines the character of the PDE. Think of it as the "skeleton" of the equation — the lower-order terms add flesh, but the skeleton determines the shape.

Subscript Notation

We use subscript notation for brevity: uxx=2ux2u_{xx} = \frac{\partial^2 u}{\partial x^2}, uxy=2uxyu_{xy} = \frac{\partial^2 u}{\partial x \partial y}, and uyy=2uy2u_{yy} = \frac{\partial^2 u}{\partial y^2}. This makes PDE expressions much more compact.


The Discriminant Condition

The classification of a second-order PDE mirrors the classification of quadratic equations. Recall that for the quadratic ax2+bx+c=0ax^2 + bx + c = 0, the discriminant b24acb^2 - 4ac determines the nature of the roots: two real roots, one repeated root, or two complex roots.

For PDEs, we form the characteristic equation by replacing partial derivatives with direction variables. The PDE Auxx+Buxy+Cuyy=0Au_{xx} + Bu_{xy} + Cu_{yy} = 0 leads to the characteristic quadratic:

A(dydx)2B(dydx)+C=0A\left(\frac{dy}{dx}\right)^2 - B\left(\frac{dy}{dx}\right) + C = 0

The discriminant of this quadratic is:

The Discriminant

D=B24ACD = B^2 - 4AC
ConditionPDE TypeRootsPrototype
D < 0EllipticComplex conjugateLaplace: u_xx + u_yy = 0
D = 0ParabolicRepeated realHeat: u_t = alpha * u_xx
D > 0HyperbolicTwo distinct realWave: u_tt = c^2 * u_xx

Worked Examples

Example 1: Laplace's Equation

uxx+uyy=0u_{xx} + u_{yy} = 0

Here A=1,B=0,C=1A = 1, B = 0, C = 1. Discriminant: D=024(1)(1)=4<0D = 0^2 - 4(1)(1) = -4 < 0. Elliptic.

Example 2: Heat Equation

ut=αuxxu_t = \alpha u_{xx}, rewritten as αuxxut=0\alpha u_{xx} - u_t = 0

With xx and tt as independent variables: A=α,B=0,C=0A = \alpha, B = 0, C = 0. Discriminant: D=00=0D = 0 - 0 = 0. Parabolic.

Example 3: Wave Equation

utt=c2uxxu_{tt} = c^2 u_{xx}, rewritten as c2uxxutt=0c^2 u_{xx} - u_{tt} = 0

With xx and tt: A=c2,B=0,C=1A = c^2, B = 0, C = -1. Discriminant: D=04(c2)(1)=4c2>0D = 0 - 4(c^2)(-1) = 4c^2 > 0. Hyperbolic.

Example 4: Mixed Coefficients

3uxx+4uxy+uyy=03u_{xx} + 4u_{xy} + u_{yy} = 0

Here A=3,B=4,C=1A = 3, B = 4, C = 1. Discriminant: D=1612=4>0D = 16 - 12 = 4 > 0. Hyperbolic. The cross-derivative term uxyu_{xy} does not prevent classification.

Interactive Discriminant Explorer

Adjust the coefficients A, B, C in the general second-order PDE and observe how the classification changes. The conic section Ax² + Bxy + Cy² = 1 mirrors the PDE type.

1uxx + 0uxy + 1uyy + ... = 0
1
0
1
DiscriminantElliptic
D = B² − 4AC = (0.0)² − 4(1.0)(1.0)
D = -4.00 < 0

Quick Presets:

Associated Conic Section

The curve Ax² + Bxy + Cy² = 1 is an ellipse, parabola, or hyperbola matching the PDE type

xyElliptic

The Conic Section Connection

The names "elliptic," "parabolic," and "hyperbolic" come directly from conic sections, and this is not a coincidence. Consider the quadratic form:

Ax2+Bxy+Cy2=1Ax^2 + Bxy + Cy^2 = 1

The discriminant B24ACB^2 - 4AC classifies this curve as:

DiscriminantCurve TypePDE Type
B^2 - 4AC < 0Ellipse (or circle)Elliptic PDE
B^2 - 4AC = 0ParabolaParabolic PDE
B^2 - 4AC > 0HyperbolaHyperbolic PDE

The connection goes deeper than naming. The principal symbol of the PDE, Aξ2+Bξη+Cη2A\xi^2 + B\xi\eta + C\eta^2, defines a quadratic form in the frequency/momentum variables (ξ,η)(\xi, \eta). The level sets of this quadratic form are exactly these conic sections. The geometry of these curves encodes how information propagates through the solution.

Why the Names Matter

The conic section analogy provides geometric intuition:

  • Elliptic: Like an ellipse, the equation treats all directions equivalently (isotropic). Information spreads uniformly in all directions.
  • Parabolic: Like a parabola, there is a preferred direction (time). The equation distinguishes between "forward" and "backward."
  • Hyperbolic: Like a hyperbola, the equation has two special directions (the characteristics) along which signals travel.

Elliptic PDEs: Equilibrium and Steady State

Elliptic PDEs describe steady-state or equilibrium phenomena — situations where a system has settled into a configuration that balances all internal forces.

The Prototype: Laplace's Equation

2u=2ux2+2uy2=0\nabla^2 u = \frac{\partial^2 u}{\partial x^2} + \frac{\partial^2 u}{\partial y^2} = 0

This equation says: the value of u at every point equals the average of its neighbors. There are no local maxima or minima in the interior of the domain — all extrema occur on the boundary. This is the maximum principle, the defining property of elliptic PDEs.

Physical Meaning

Think of stretching a rubber membrane across a wire frame of arbitrary shape. The membrane settles into a shape where every point is at the average height of its neighbors. This equilibrium shape satisfies Laplace's equation.

Key Properties of Elliptic PDEs

  1. No time variable: Elliptic PDEs describe static configurations, not evolution. There is no "before" or "after."
  2. Maximum principle: The solution attains its maximum and minimum values on the boundary, never in the interior.
  3. Infinite smoothness: Solutions to elliptic PDEs are CC^{\infty} (infinitely differentiable) in the interior, even if the boundary data is rough.
  4. Global dependence: The solution at every interior point depends on the entire boundary. Changing the boundary anywhere affects the solution everywhere.
  5. Boundary value problems: Well-posed with Dirichlet, Neumann, or Robin conditions on the boundary. No initial conditions needed.

Important Elliptic PDEs

EquationNameApplication
u_xx + u_yy = 0LaplaceElectrostatics, steady heat, potential flow
u_xx + u_yy = f(x,y)PoissonGravitational potential, charged surfaces
u_xx + u_yy + k^2 u = 0HelmholtzAcoustics, electromagnetics (freq. domain)
div(k(x) grad u) = fGeneralizedHeterogeneous materials

Parabolic PDEs: Diffusion and Smoothing

Parabolic PDEs describe diffusive processes — phenomena where sharp features smooth out over time and the system evolves toward equilibrium.

The Prototype: The Heat Equation

ut=α2ux2\frac{\partial u}{\partial t} = \alpha \frac{\partial^2 u}{\partial x^2}

This equation is first-order in time and second-order in space. The mismatch between temporal and spatial orders is the hallmark of parabolic PDEs. It gives them their distinctive one-way-in-time character.

Physical Meaning

Drop a spoonful of dye into a glass of water. The dye spreads out, its concentration evening out over time. Sharp edges blur. This irreversible smoothing process is governed by the heat equation. You cannot "un-mix" the dye — parabolic equations are irreversible.

Key Properties of Parabolic PDEs

  1. Irreversibility: Parabolic PDEs run in only one time direction. Running the heat equation backward is ill-posed — small errors grow exponentially.
  2. Infinite speed of propagation: A localized disturbance is felt everywhere instantly, though the effect decays rapidly with distance.
  3. Smoothing: Solutions immediately become smooth ( CC^{\infty}), even if the initial data has discontinuities.
  4. Exponential decay of modes: High-frequency components decay as en2π2αte^{-n^2\pi^2\alpha t}. Higher frequencies decay much faster, explaining the smoothing.
  5. One initial condition: Only u(x,0)=f(x)u(x, 0) = f(x) is needed (the state at t=0t = 0), plus boundary conditions.

Important Parabolic PDEs

EquationNameApplication
u_t = alpha * u_xxHeat / DiffusionThermal conduction, chemical diffusion
u_t = div(D(x) grad u)Variable diffusionHeterogeneous media
u_t = u_xx + f(u)Reaction-diffusionPattern formation, ecology
u_t = (1/2) sigma^2 S^2 u_SS + ...Black-ScholesOption pricing

Hyperbolic PDEs: Waves and Propagation

Hyperbolic PDEs describe wave propagation — phenomena where disturbances travel at finite speed without dissipation.

The Prototype: The Wave Equation

2ut2=c22ux2\frac{\partial^2 u}{\partial t^2} = c^2 \frac{\partial^2 u}{\partial x^2}

This equation is second-order in both time and space. The symmetry between temporal and spatial orders gives hyperbolic equations their wave-like, reversible character.

Physical Meaning

Pluck a guitar string. The resulting vibration travels back and forth along the string at speed cc, reflecting off the fixed ends. The wave shape is preserved — it doesn't spread out or smooth like heat. If you could record the motion and play it backward, it would look equally physical. This is the reversibility of hyperbolic equations.

Key Properties of Hyperbolic PDEs

  1. Finite speed of propagation: Disturbances travel at speed cc, defining a light cone or domain of dependence. Points outside this cone are unaffected.
  2. Two initial conditions: Both u(x,0)=f(x)u(x, 0) = f(x) (displacement) and ut(x,0)=g(x)u_t(x, 0) = g(x) (velocity) are needed.
  3. Sharp features preserved: Discontinuities and sharp fronts travel along characteristics without being smoothed. Shocks can form.
  4. Energy conservation: The total energy E=12(ut2+c2ux2)dxE = \frac{1}{2}\int (u_t^2 + c^2 u_x^2)\,dx is preserved over time. No dissipation occurs.
  5. Reversibility: The equation is symmetric under ttt \to -t. You can run the equation backward.

Important Hyperbolic PDEs

EquationNameApplication
u_tt = c^2 u_xxWave equationStrings, sound, light
u_tt - c^2 u_xx + alpha*u_t = 0Damped wave (telegraph)Signal transmission
u_tt = c^2 nabla^2 u3D waveAcoustics, electromagnetics
u_t + a u_x = 0Advection (1st order)Transport, fluid mechanics

Characteristic Curves: The DNA of PDEs

Characteristic curves are the most powerful concept in PDE theory. They are special curves in the (x,y)(x, y) or (x,t)(x, t) plane along which the PDE reduces to an ordinary differential equation.

Mathematical Definition

For the PDE Auxx+Buxy+Cuyy=0Au_{xx} + Bu_{xy} + Cu_{yy} = 0, the characteristic curves satisfy:

A(dydx)2B(dydx)+C=0A\left(\frac{dy}{dx}\right)^2 - B\left(\frac{dy}{dx}\right) + C = 0

Solving this quadratic gives the slopes of the characteristics:

dydx=B±B24AC2A\frac{dy}{dx} = \frac{B \pm \sqrt{B^2 - 4AC}}{2A}

What Characteristics Tell Us

Characteristics are not just mathematical abstractions. They have profound physical meaning:

  • Elliptic (no real characteristics): There are no special directions. Information spreads isotropically through the domain. The solution at any point depends on the entire boundary.
  • Parabolic (one family): There is one special direction (typically, lines of constant time). Information diffuses outward from initial data.
  • Hyperbolic (two families): There are two special directions along which signals propagate. For the wave equation, these are xct=constx - ct = \text{const} and x+ct=constx + ct = \text{const} — the paths of right-going and left-going waves.
Characteristic Curves and Information Propagation

Characteristic curves reveal how information flows through the solution domain. Toggle "Domain of Dependence" and click on the diagram to explore.

x (space)t (time)c = 1.0
1.0

Hyperbolic PDEs

Two families of real characteristic curves. Information propagates at finite speed c along these characteristics. The domain of dependence is bounded.

Equation: utt = c^2 * uxx (Wave)
Chars: Two distinct slopes: dy/dx = (B +/- sqrt(D)) / 2A (lines x +/- ct = const)
Key Properties
Solutions can have sharp fronts
Two initial conditions: u and u_t at t=0
Finite speed of propagation (speed c)
Reversible: energy is conserved

Domain of Dependence and Range of Influence

For hyperbolic PDEs, the characteristics define two crucial regions:

Domain of Dependence

The set of points in the initial data that can influence the solution at a given point (x0,t0)(x_0, t_0). For the wave equation, this is the interval [x0ct0,x0+ct0][x_0 - ct_0, x_0 + ct_0] on the line t=0t = 0.

Range of Influence

The set of points that can be affected by a disturbance at (x0,t0)(x_0, t_0). This is the forward cone bounded by the characteristics emanating from that point.

The CFL Condition in Numerical Methods

The Courant-Friedrichs-Lewy (CFL) condition requires that the numerical domain of dependence must contain the physical domain of dependence. If your grid spacing and time step allow numerical information to travel faster than the characteristic speed, the method is unstable. For the wave equation: cΔt/Δx1c \cdot \Delta t / \Delta x \leq 1.


Solution Behavior Comparison

The three PDE types produce fundamentally different solution behaviors. The animation below shows solutions of each type starting from the same initial shape (a combination of sine waves):

Solution Behavior Comparison

Watch how solutions of each PDE type evolve over time. Elliptic PDEs have no time variable (steady-state). Parabolic solutions smooth out. Hyperbolic solutions oscillate.

t = 0.00

Observe the key differences:

PropertyEllipticParabolicHyperbolic
Time dependenceNone (steady state)First order (u_t)Second order (u_tt)
SmoothingAlways smoothSmooths instantlyCan have discontinuities
Information speedInstantaneous (all directions)Instantaneous (decaying)Finite (speed c)
ReversibilityN/AIrreversibleReversible
EnergyMinimizedDecreasingConserved
High frequenciesDetermined by boundaryDecay exponentiallyOscillate forever

Well-Posedness: Getting the Conditions Right

A PDE problem is well-posed (in the sense of Hadamard) if it satisfies three conditions:

  1. Existence: A solution exists.
  2. Uniqueness: The solution is unique.
  3. Continuous dependence: Small changes in the data produce small changes in the solution.

Each PDE type requires specific types of conditions to be well-posed. Providing the wrong type of conditions leads to ill-posed problems — solutions that don't exist, aren't unique, or are wildly sensitive to perturbations.

Well-Posedness: What Conditions Does Each Type Need?

A PDE problem is well-posed (in the sense of Hadamard) if a solution exists, is unique, and depends continuously on the data. Each type requires different conditions.

Problem Setup

u(x, 0) = f(x) (IC)u(0,t) = g₀u(L,t) = g_Ltx

Required Conditions

Initial Conditions
  • u(x, 0) = f(x) (initial temperature)
Boundary Conditions
  • u(0, t) = g_0(t) (left boundary)
  • u(L, t) = g_L(t) (right boundary)
Physical Intuition

Parabolic PDEs need one initial condition (the state at t=0) plus boundary conditions at the spatial edges. The solution evolves forward in time from this initial state.

A heated rod: specify initial temperature u(x,0) and what happens at the endpoints.


Variable Coefficients and Mixed Type

When the coefficients A,B,CA, B, C depend on position (x,y)(x, y), the discriminant B24ACB^2 - 4AC can change sign across the domain. The PDE then changes type from region to region.

The Tricomi Equation

The most famous mixed-type PDE is the Tricomi equation:

yuxx+uyy=0y \cdot u_{xx} + u_{yy} = 0

Here A=y,B=0,C=1A = y, B = 0, C = 1, so D=4yD = -4y:

RegionDiscriminantType
y > 0D = -4y < 0Elliptic (equilibrium)
y = 0D = 0Parabolic (transition)
y < 0D = -4y > 0Hyperbolic (waves)

The Tricomi equation models transonic flow — the transition between subsonic (elliptic) and supersonic (hyperbolic) flight. The line y=0y = 0 represents the sonic barrier, where the flow speed equals the speed of sound.

Physical Significance

In transonic aerodynamics, the change from subsonic to supersonic flow corresponds exactly to the PDE changing from elliptic to hyperbolic. This is why sonic booms (shock waves) form: the hyperbolic characteristics allow sharp fronts that cannot exist in the elliptic (subsonic) regime.


Machine Learning Connections

PDE classification plays a surprisingly important role in modern machine learning. Understanding the type of PDE involved helps design better algorithms.

1. Diffusion Models = Parabolic PDEs

Score-based diffusion models (DALL-E, Stable Diffusion, Midjourney) are fundamentally parabolic. The forward process adds noise governed by:

pt=[12σ2(t)pf(x,t)p]\frac{\partial p}{\partial t} = \nabla \cdot \left[\frac{1}{2}\sigma^2(t)\nabla p - f(x,t)p\right]

This is a Fokker-Planck equation — a parabolic PDE. The smoothing property of parabolic equations (destroying information) is exactly what converts images to noise. The reverse process (generating images) inverts this diffusion by learning the score function xlogp(x,t)\nabla_x \log p(x,t).

Understanding that this is parabolic tells us:

  • The forward process is irreversible — information is truly lost, which is why we need a neural network to learn the reverse.
  • Higher frequencies are destroyed first (smoothing), so coarse structure is generated before fine details during sampling.
  • The process naturally converges to a Gaussian (the steady-state equilibrium of the heat equation).

2. Neural Operators and PDE Type

Neural operators like the Fourier Neural Operator (FNO) learn to solve families of PDEs. Their architecture is designed differently depending on the PDE type:

  • Elliptic PDEs: The operator needs global receptive fields because changing boundary data affects the entire solution. Fourier layers work well.
  • Hyperbolic PDEs: Locality matters because of finite propagation speed. Attention mechanisms with position encoding capture the characteristic structure better.
  • Parabolic PDEs: Time-stepping architectures (autoregressive) are natural because the equation is first-order in time.

3. Graph Neural Networks as Discrete Heat Equations

Message-passing in GNNs is a discrete parabolic PDE. The update rule:

hi(t+1)=hi(t)+ϵjN(i)(hj(t)hi(t))h_i^{(t+1)} = h_i^{(t)} + \epsilon \sum_{j \in \mathcal{N}(i)} (h_j^{(t)} - h_i^{(t)})

is exactly a forward Euler discretization of the heat equation on a graph. This explains over-smoothing in deep GNNs: too many layers correspond to running the heat equation for too long, causing all node features to converge to the same value (the steady-state equilibrium).

4. Physics-Informed Neural Networks (PINNs)

When training PINNs, the PDE type affects:

  • Loss function design: Elliptic PDEs need boundary loss terms; parabolic need initial + boundary; hyperbolic need two initial conditions.
  • Training difficulty: Hyperbolic PDEs are hardest to train because sharp features and characteristics make the loss landscape rugged.
  • Sampling strategy: Collocation points should respect the domain of dependence for hyperbolic equations.

Python: Automatic PDE Classifier

Let's build a Python tool that classifies any second-order PDE given its coefficients and computes the characteristic slopes:

PDE Classifier with Characteristic Slope Computation
🐍pde_classifier.py
10The Classification Function

The discriminant D = B^2 - 4AC is the single quantity that determines PDE type. This is analogous to how the discriminant of a quadratic ax^2 + bx + c determines the nature of its roots.

18Numerical Tolerance

We use a small tolerance (1e-10) instead of exact comparison with zero. This avoids misclassification due to floating-point arithmetic, which is crucial in computational PDE solving.

28Characteristic Slopes

The characteristic slopes come from the principal symbol of the PDE. They tell us the directions along which information propagates. The formula dy/dx = (B +/- sqrt(D)) / (2A) is derived from setting the principal symbol to zero.

37Complex Slopes (Elliptic)

When D < 0, the slopes are complex conjugates. This means there are no real directions along which the PDE reduces to an ODE. Information spreads in all directions simultaneously.

42Two Real Slopes (Hyperbolic)

When D > 0, we get two distinct real slopes. These define two families of characteristic curves along which wave-like information propagates. For the wave equation, these are the lines x - ct = const and x + ct = const.

47One Repeated Slope (Parabolic)

When D = 0, the two slopes merge into one. There is only one family of characteristics. For the heat equation in (x,t) variables, the single characteristic direction is along lines of constant t.

52Example Classifications

These examples demonstrate how the same formula classifies various important PDEs. Notice how the Tricomi equation changes type depending on the sign of the coefficient, modeling transonic flow transitions.

74 lines without explanation
1import numpy as np
2from enum import Enum
3
4class PDEType(Enum):
5    ELLIPTIC = "Elliptic"
6    PARABOLIC = "Parabolic"
7    HYPERBOLIC = "Hyperbolic"
8
9def classify_pde(A: float, B: float, C: float) -> tuple[PDEType, float]:
10    """
11    Classify a second-order linear PDE of the form:
12    A*u_xx + B*u_xy + C*u_yy + (lower order terms) = 0
13
14    Returns (type, discriminant).
15    The discriminant D = B^2 - 4AC determines:
16      D < 0  ->  Elliptic   (e.g., Laplace, Poisson)
17      D = 0  ->  Parabolic  (e.g., Heat/Diffusion)
18      D > 0  ->  Hyperbolic (e.g., Wave)
19    """
20    D = B**2 - 4 * A * C
21
22    if D < -1e-10:
23        return PDEType.ELLIPTIC, D
24    elif D > 1e-10:
25        return PDEType.HYPERBOLIC, D
26    else:
27        return PDEType.PARABOLIC, D
28
29def characteristic_slopes(A: float, B: float, C: float):
30    """
31    Compute the characteristic slopes dy/dx for the PDE.
32
33    The characteristic equation is:
34    A*(dy)^2 - B*(dy)(dx) + C*(dx)^2 = 0
35
36    which gives: dy/dx = (B +/- sqrt(B^2 - 4AC)) / (2A)
37    """
38    D = B**2 - 4 * A * C
39
40    if abs(A) < 1e-10:
41        return None  # Degenerate case
42
43    if D < -1e-10:
44        # Elliptic: complex slopes
45        real_part = B / (2 * A)
46        imag_part = np.sqrt(-D) / (2 * A)
47        return (complex(real_part, imag_part),
48                complex(real_part, -imag_part))
49    elif D > 1e-10:
50        # Hyperbolic: two real slopes
51        sqrt_D = np.sqrt(D)
52        return ((B + sqrt_D) / (2 * A),
53                (B - sqrt_D) / (2 * A))
54    else:
55        # Parabolic: one repeated slope
56        slope = B / (2 * A)
57        return (slope, slope)
58
59# Example classifications
60examples = [
61    ("Laplace equation", 1, 0, 1),
62    ("Heat equation (x,t)", 1, 0, 0),
63    ("Wave equation (x,t)", 1, 0, -1),
64    ("Mixed: 2u_xx + 3u_xy + u_yy", 2, 3, 1),
65    ("Tricomi at y=1: u_xx + u_yy", 1, 0, 1),
66    ("Tricomi at y=-1: -u_xx + u_yy", -1, 0, 1),
67]
68
69print("PDE Classification Results")
70print("=" * 60)
71
72for name, A, B, C in examples:
73    pde_type, D = classify_pde(A, B, C)
74    slopes = characteristic_slopes(A, B, C)
75
76    print(f"\n{name}")
77    print(f"  A={A}, B={B}, C={C}")
78    print(f"  D = B^2 - 4AC = {D:.2f}")
79    print(f"  Type: {pde_type.value}")
80    if slopes:
81        print(f"  Char. slopes: {slopes[0]:.4f}, {slopes[1]:.4f}")

Now let's see how to compute the canonical form transformation:

Canonical Form Transformation
🐍canonical_forms.py
3Canonical Form Transformation

Every second-order linear PDE can be transformed into a simpler 'canonical form' through an appropriate change of variables. This is similar to how every quadratic form can be diagonalized.

15Elliptic Canonical Form

Elliptic PDEs transform to u_ss + u_nn = 0 (Laplace equation). The rotation eliminates the cross-derivative term u_xy. Both second derivatives have the same sign.

30Hyperbolic Canonical Form

Hyperbolic PDEs transform to u_ab = 0 using characteristic coordinates, giving d'Alembert's form with general solution u = f(a) + g(b). Equivalently, u_ss - u_nn = 0 (wave equation form).

46Parabolic Canonical Form

Parabolic PDEs transform to u_ss = 0 (plus possible lower-order terms). One second derivative completely vanishes. With lower-order terms retained, this gives the heat equation form u_t = u_nn.

71 lines without explanation
1import numpy as np
2
3def canonical_transform(A, B, C):
4    """
5    Find the change of variables that transforms
6    A*u_xx + B*u_xy + C*u_yy = 0
7    into its canonical form.
8
9    Returns (type, canonical_form_description, transformation)
10    """
11    D = B**2 - 4 * A * C
12
13    if D < -1e-10:
14        # ELLIPTIC -> canonical form: u_ss + u_nn = 0
15        # Use rotation to eliminate cross term
16        if abs(B) < 1e-10:
17            theta = 0
18        else:
19            theta = 0.5 * np.arctan2(B, A - C)
20
21        return {
22            "type": "Elliptic",
23            "canonical": "u_ss + u_nn = 0  (Laplace form)",
24            "rotation_angle": np.degrees(theta),
25            "transform": f"Rotate by {np.degrees(theta):.1f} degrees",
26            "meaning": "Both second derivatives have same sign"
27        }
28
29    elif D > 1e-10:
30        # HYPERBOLIC -> canonical form: u_ss - u_nn = 0
31        # or equivalently: u_ab = 0 (using characteristic coords)
32        sqrt_D = np.sqrt(D)
33        slope1 = (B + sqrt_D) / (2 * A)
34        slope2 = (B - sqrt_D) / (2 * A)
35
36        return {
37            "type": "Hyperbolic",
38            "canonical": "u_ab = 0  (d'Alembert form)",
39            "alt_canonical": "u_ss - u_nn = 0  (wave form)",
40            "char_slopes": (slope1, slope2),
41            "transform": f"a = y - {slope1:.3f}x, b = y - {slope2:.3f}x",
42            "meaning": "Second derivatives have opposite signs"
43        }
44
45    else:
46        # PARABOLIC -> canonical form: u_nn = 0 or u_t = u_xx
47        slope = B / (2 * A) if abs(A) > 1e-10 else 0
48
49        return {
50            "type": "Parabolic",
51            "canonical": "u_ss = 0  (or u_t = u_nn with lower terms)",
52            "char_slope": slope,
53            "transform": f"s = y - {slope:.3f}x,  n = x",
54            "meaning": "One second derivative vanishes"
55        }
56
57# Demonstrate canonical forms
58print("Canonical Form Transformations")
59print("=" * 50)
60
61test_cases = [
62    ("Laplace", 1, 0, 1),
63    ("Rotated Laplace", 1, 1, 1),
64    ("Wave", 1, 0, -1),
65    ("General hyperbolic", 2, 5, 1),
66    ("Heat-like", 1, 2, 1),
67]
68
69for name, A, B, C in test_cases:
70    result = canonical_transform(A, B, C)
71    print(f"\n{name}: {A}u_xx + {B}u_xy + {C}u_yy = 0")
72    print(f"  Type: {result['type']}")
73    print(f"  Canonical: {result['canonical']}")
74    print(f"  Transform: {result['transform']}")
75    print(f"  Meaning: {result['meaning']}")

Common Pitfalls

Forgetting to Check the Sign Convention

The discriminant formula B24ACB^2 - 4AC assumes the PDE is written as Auxx+Buxy+Cuyy+=0Au_{xx} + Bu_{xy} + Cu_{yy} + \cdots = 0. If your textbook uses the form Auxx+2Buxy+CuyyAu_{xx} + 2Bu_{xy} + Cu_{yy} (note the factor of 2), then the discriminant becomes B2ACB^2 - AC. Always check the convention.

Confusing Time-Dependent and Spatial Variables

When classifying PDEs with time, you must identify the correct coefficients. For the heat equation ut=αuxxu_t = \alpha u_{xx}, the second-order terms are αuxx\alpha u_{xx} (with A=αA = \alpha) and 0utt0 \cdot u_{tt} (with C=0C = 0), where xx and tt play the roles of the two independent variables.

Assuming Constant Classification

PDEs with variable coefficients can change type across the domain! Always evaluate the discriminant as a function of position: D(x,y)=B(x,y)24A(x,y)C(x,y)D(x,y) = B(x,y)^2 - 4A(x,y)C(x,y). The classification can be different in different parts of the domain.

Classification Is a Local Property

For variable-coefficient PDEs, classification is determined pointwise. A PDE might be elliptic in one region and hyperbolic in another. The transition curves where D=0D = 0 (parabolic) often have physical significance, like the sonic line in transonic flow.


Test Your Understanding

Test Your Understanding1 / 8

For the PDE 3u_xx + 4u_xy + u_yy = 0, what is the discriminant B² - 4AC?


Summary

The classification of second-order PDEs into elliptic, parabolic, and hyperbolic types is one of the most powerful organizational principles in applied mathematics. A single number — the discriminant — reveals the fundamental character of the equation.

The Classification at a Glance

EllipticParabolicHyperbolic
DiscriminantD < 0D = 0D > 0
Prototypeu_xx + u_yy = 0u_t = alpha u_xxu_tt = c^2 u_xx
PhysicsEquilibriumDiffusionWaves
TimeNo time variableFirst-order in tSecond-order in t
Initial ConditionsNoneu(x,0)u(x,0) and u_t(x,0)
SmoothnessAnalyticInstant smoothingCan have shocks
Information speedGlobalInfinite (decaying)Finite (speed c)
Conic sectionEllipseParabolaHyperbola
ML examplePoisson image editingDiffusion modelsWave neural operators

Key Takeaways

  1. The discriminant D=B24ACD = B^2 - 4AC of the principal part determines the PDE type. This is computed from only the highest-order coefficients.
  2. The classification mirrors conic sections: the level sets of the principal symbol Aξ2+Bξη+Cη2A\xi^2 + B\xi\eta + C\eta^2 are ellipses, parabolas, or hyperbolas.
  3. Elliptic PDEs describe equilibrium with no time evolution, global dependence on boundary data, and maximum principles.
  4. Parabolic PDEs describe irreversible diffusion, with instantaneous smoothing and exponential decay of high-frequency modes.
  5. Hyperbolic PDEs describe wave propagation at finite speed, with characteristic curves defining domains of dependence and influence.
  6. Well-posedness requires matching the right type of initial and boundary conditions to the PDE type. Wrong conditions lead to ill-posed problems.
  7. Variable-coefficient PDEs can change type across the domain, with important physical applications like transonic flow.
  8. PDE classification directly informs ML architecture design: diffusion models are parabolic, GNN over-smoothing is a heat equation phenomenon, and neural operators must respect the propagation character of the underlying PDE.
The Three Faces of PDEs:
"Elliptic for balance. Parabolic for diffusion. Hyperbolic for waves. One discriminant, three worlds."
Coming Next: In the next section, we'll explore Boundary and Initial Conditions in detail. You'll learn the precise mathematical formulations of Dirichlet, Neumann, and Robin conditions, and understand how to set up well-posed PDE problems for both analytical and numerical solution.
Loading comments...