Fun and Games with Partial
April 11, 2000
Definition of a PDE and Notation
• A PDE is an equation with derivatives of at least two
variables in it.
• Let u be a function of x and y. There are several ways to
write a PDE, e.g.,
u / x u / y
• The equations above are linear and first order. The order is
determined by the maximum number of derivatives of any
• A nonlinear PDE has the solution times a partial derivative
or a partial derivative raised to some power in it. Most
interesting problems are nonlinear and time dependent.
Characterization of Simple Second Order PDE’s
auxx 2buxy cu yy dux eu y fu g
• Then the type of PDE is determined by the discriminant
b 2 ac
– < 0 elliptic
– = 0 parabolic
– > 0 hyperbolic
Characterization of n Variable Second Order PDE’s
• A general linear PDE of order 2:
in, j 1 aij uxi x j in1 biuxi cu d .
• Assume symmetry in coefficients so that A = [ aij ] is
symmetric. Eig(A) are real. Let P and Z denote the
number of positive and zero eigenvalues of A.
– Elliptic: Z = 0 and P = n or Z = 0 and P = 0..
– Parabolic: Z > 0 (det(A) = 0).
– Hyperbolic: Z=0 and P = 1 or Z = 0 and P = n-1.
– Ultra hyperbolic: Z = 0 and 1 < P < n-1.
PDE Model Problems
• Laplace’s Equation (elliptic): u xx u yy 0
• Heat Equation (parabolic): ut u xx u yy 0
• Wave Equations (hyperbolic): ut u x u y 0
utt u xx u yy 0
• All problems can be mapped to one of these!… in theory
Boundary and Initial Conditions,
Well and Ill Posedness
• Boundary conditions on G GD U GN U GR.
– Dirichlet: u = g on GD.
– Neumann: un = g on GN.
– Robin: au + b un = g on GR.
• Initial conditions at t=0.
– U(t=0,x,y) = u0(x,y).
• Well posed PDE if and only if
– A solution to the problem exists.
– The solution is unique.
– The solution depends continuously on the problem data.
• Ill posed if not well posed.
Example: Poisson Equation in 2D
• – uxx – uyy = 1 in (0,1)2 ; u = 0 on (0,1)2 .
Finite Whosiwhatsit Methods
• There are three common methods of producing a finite
dimensional problem whose solution can be computed,
which approximates the solution of the original, infinite
– Finite elements
– Finite differences
– Finite volumes
• Each has its place, supporters, and detractors.
• There are also other methods, e.g., collocation, spectral
methods, pseudo-blah-blah-blah methods, etc.
• Assume we have a uniform mesh with a point x in the
– Forward difference: D+h u(x) = u(x+h) – u(x).
– Backward difference: D-h u(x) = u(x) – u(x-h).
– Central difference: x u(x) = u(x+h/2) – u(x-h/2) or
x2 u(x) = u(x+h) – 2u(x) + u(x-h).
• Taylor Series and Truncation Error
– Look at the difference between the approximation and
the Taylor series. When they do not match, there is a
remainder, which is known as the truncation error. It is
usually specified as O(hp).
Poisson Equation Example, Again
• The Poisson equation example used central differences to
solve a block matrix problem of the form
A = [-I, T, -I ],
where I is the nxn identity matrix and T is a nxn
tridiagonal matrix [ -1, 4, -1 ]. There are n rows of blocks
in A (i.e., A is n2xn2). This is known as a 5 point operator.
• Choosing the right finite element method on a square (right
triangles with piecewise linear elements) leads to the same
matrix problem. Choosing the elements differently can
lead to a 9 point operator instead.
Finite Elements (Variational Formulations)
• Find u in test space H such that a(u,v) = f(v) for all v in H,
where a is a bilinear form and f is a linear functional.
V ( x, y ) nj 1 V j j ( x, y )
I (V ) .5 i j AijViV j i biVi
Aij Int (a deli . del j )
bi Int ( fi )
• The coefficients Vj are computed and the function V(x,y)
is evaluated anyplace that a value is needed.
• The basis functions should have local support (i.e., have a
limited area where they are nonzero).
Matrix Free Methods
• Many problems have simple matrices associated with the
linear algebra (e.g., the Poisson equation example).
• By using methods (e.g., Krylov space or relaxation
methods) that only multiply the matrix A times a vector x,
code to calculate y=Ax can be written instead of storing
the matrix A.
• This reduces the cost of the computer (which is mostly
memory chips) and allows for vastly larger simulations.
Time Stepping Methods
• Standard methods are common:
– Forward Euler (explicit)
– Backward Euler (implicit)
– Crank-Nicolson (implicit)
• Variable length time stepping
– Most common in Method of Lines (MOL) codes or
Differential Algebraic Equation (DAE) solvers
• Serious calculations today are mostly done on a parallel
• The domain is partitioned into subdomains that may or
may not overlap slightly.
• Goal is to calculate as many things in parallel as possible
even if some things have to be calculated on several
processors in order to avoid communication.
• Communication is the Darth Vader of parallel computing.
Example: Original Mesh
Consider solving a problem on the
given grid. Assume that only half
of the nodes fit on a processor.
Example: Mesh on Two Processors
• Dividing into two connected
subsets and renumber within the
• Communication occurs between
neighbors that cross the
• Ghost points (or overlap) can
sometimes at the expense of
• Computation is o(1/1000)
communication per word.
• Goals are to maximize interior while minimizing
connections between subdomains. Critical parameter:
• Such decomposition problems have been studied in load
balancing for parallel computation.
• Lots of choices:
• METIS package from the University of Minnesota.
• PARTI package from the University of Maryland
• Speedup for 5 layer SEOM. Dashed lines for large Pacific simulation
(3552 elements) and the solid lines are for the small Atlantic Basin
simulation (792 elements). Both simulations use 7th order spectral
• Timings versus processors for 5 layer SEOM. Dashed lines for large
Pacific simulation (3552 elements) and the solid lines are for the small
Atlantic Basin simulation (792 elements). Both simulations use 7th
order spectral expansion.