solving pde’s with fenics - university of chicago
TRANSCRIPT
Rice University January 2018 1/36
Solving PDE’s with FEniCS
Wave equations
L. Ridgway ScottThe Institute for Biophysical Dynamics,The Computation Institute, and theDepartments of Computer Science and Mathematics,The University of Chicago
Classification of PDEs
Rice University January 2018 2/36
There are two major classifications of PDEs, one forlinear PDEs and one for nonlinearities.
This is based on an algebraic trichotomy forsecond-order differential operators D in two dimensions:elliptic, parabolic, and hyperbolic.
This arises from the analogy with conic sections andtheir algebraic equations, as indicated in Table 1.
formula classification example equation variable substitutionx2 + y2 = 1 elliptic Laplace u,xx + u,yy none
y = x2 parabolic diffusion/heat u,t − u,yy x → tx2 − y2 = 1 hyperbolic wave u,tt − u,yy x → t
Table 1: Classification of linear PDEs. “formula” is name for a conic section.
Classification of PDEs: hyperbolic
Rice University January 2018 3/36
Examples of elliptic equations are the Laplace/Poissonequations and the variants considered so far.
Heat equation is the prototypical parabolic equation.
In the classification in Table 1, this leaves hyperbolicequations.
Switching variables from y to x, such an equation takesthe form
utt − uxx = 0, (1)
in one space dimension.
The wave equation
Rice University January 2018 4/36
More generally, what is called The wave equation is
utt − c2∆u = 0, (2)
in multiple space dimensions, where c is the wavespeed and ∆ is the Laplacean.
The speed c may always be taken to be 1 in suitablecoordinates.
For example, the speed of light in a vacuum isapproximately 299792458 metres per second.
Choice of units
Rice University January 2018 5/36
A meter is about 3.28084 feet.
So the speed of light in a vacuum is approximately9.8357e+08 feet per second.
Define big foot to be 1.0167 feet (about 12.2 inches),then speed of light is one big foot per nanosecond.
Approximately one giga-big-feet per second.
In either of these units, c = 1.
In one of them, time unit is small, and in other lengthunit is big.
Understanding units
Rice University January 2018 6/36
Assume now that units are chosen so that c = 1.
Grace Hopper1 famously displayed in her talks a pieceof copper wire whose length corresponded to thedistance an electrical signal traveled in a nanosecond.
Her point was to emphasize the need for carefulprogramming, but it also showed that c = 1 makessense in a computer.
1Grace Brewster Murray Hopper (1906–1992) was an early advocate for automatingprogramming via the use of compilers to translate human-readable descriptions into ma-chine code.
Other wave equations
Rice University January 2018 7/36
There are other equations of higher order that do not fitthe classification in Table 1, such as the dispersive Airyequation ut + uxxx = 0.
Using a more sophisticated classification [1], the Stokesequations are an elliptic system.
So we must consider Table 1 as just a starting point forunderstanding the differences between different PDEs.
But it does suggest a new equation to consider which isintimately related to wave motion.
The wave equation in one space dimension
Rice University January 2018 8/36
The one-dimensional wave operator factors, so that (1)can be written
0 = utt − uxx =(∂
∂t− ∂
∂x
)(∂
∂t+
∂
∂x
)
u
=(∂
∂t− ∂
∂x
)
(
ut + ux)
.
(3)
In particular, u(x, t) = f(t− x) solves (3) for any functionf of one variable, since ut(x, t) = f ′(t− x) andux(x, t) = −f ′(t− x), and thus ut + ux = 0.
Thus solutions are constant on lines x(t) = t.
Consist of just translating f to right at constant speed.
Waves go in both directions
Rice University January 2018 9/36
Similarly, by re-ordering the factorization (3), weconclude that another family of solutions consist oftranslations to the left, without change of shape.
Such solutions are easy to visualize, and are markedlydifferent from the behavior for the heat equation, orelliptic equations.
In particular, it appears at least formally thatsmoothness of f does not matter, and that evendiscontinuous solutions would be allowed.
d’Alembert
Rice University January 2018 10/36
d’Alembert’s formula for solutions of wave equation:
u(x, t) = 12f(t− x) + 1
2f(t+ x) +1
2
∫ x+t
x−t
g(s) ds, (4)
where g(x) = ut(x, 0) and f(x) = u(x, 0).
The contributions of d’Alembert are memorialized in thename the wave operator
u = utt −∆u,
known as the d’Alembertian operator .
Light cone
Rice University January 2018 11/36
d’Alembert draws information from the light cone :
u(x, t) = 12f(t− x) + 1
2f(t+ x) +1
2
∫ x+t
x−t
g(s) ds,
(x,t)t
x(x−t,0) (x+t,0)
Figure 1: The light cone for the wave equation.
Using the light cone
Rice University January 2018 12/36
Although corresponding relationship between data andsolution is more complex in higher spatial dimensions,concept of light cone generalizes naturally.
Since waves tend to propagate without change ofshape, the spatial domain Ω is often infinite.
In such cases, we truncate Ω for computationalpurposes.
The fact that information comes only from the light coneallows us to estimate the required size of thecomputational domain accurately.
One-way propagation
Rice University January 2018 13/36
d’Alembert formula seems to imply waves alwayspropagate in both directions.
But our splitting of the wave operator implied that thereare solutions of the form u±(x, t) = f(x± t).
Suppose that v(x, t) = f(x+ t).
Then vt(x, 0) = f ′(x).
So now consider the case where f is given andg(x) = f ′(x) for all x.
Either-way propagation
Rice University January 2018 14/36
For g(x) = f ′(x) for all x, (4) gives
2u(x, t) = f(x− t) + f(x+ t) +
∫ x+t
x−t
f ′(s) ds
= f(x− t) + f(x+ t) + (f(x+ t)− f(x− t)) = 2f(x+ t).
Thus u = v as expected. Similarly, if g(x) = f ′(−x), then
2u(x, t) = f(x− t) + f(x+ t) +
∫ x+t
x−t
f ′(−s) ds
= f(x− t) + f(x+ t) + (f(x− t)− f(x+ t)) = 2f(x− t).
So we get the expected one-way solutions by adjustingthe initial impulse g.
Variational form of wave equation
Rice University January 2018 15/36
Since waves tend to propagate without change ofshape, the spatial domain Ω is often infinite.
We truncate Ω for computational purposes.
Using standard algorithm, following heat equation, weobtain the variational expression
(utt, v)L2(Ω) + a(u, v) = 0 ∀v ∈ H1(Ω), (5)
where
a(v, w) =
∫
Ω
v′(x)w′(x) dx. (6)
What is different is second-order time derivative.
Time discretization of wave equation
Rice University January 2018 16/36
We can approximate this, for example, via
utt ≈un+1 − 2un + un−1
τ 2,
where τ > 0 is the time step, and uj denotes anapproximation to u(jτ). We can use this to define thevatiational formulation
(un+1, v)L2(Ω)−2(un, v)L2(Ω)+(un−1, v)L2(Ω)+τ 2a(un+1, v) = 0,
where τ is the time step. Thus we solve
(un+1, v)L2(Ω) + τ 2a(un+1, v) = 2(un, v)L2(Ω)
− (un−1, v)L2(Ω) ∀v ∈ H1(Ω).(7)
Time discretization of wave equation
Rice University January 2018 17/36
We immediately see that we can not solve the waveequation knowing just the initial conditions u(x, 0).
In addition, we need to know ut(x, 0) and we can usethis to get a good approximation to u−1.
Unfurtunately, the time-stepping scheme (7) is onlyfirst-order accurate in time.
Higher accuracy
Rice University January 2018 18/36
Another time-stepping scheme, advocated in [5], is
(un+1, v)L2(Ω) − 2(un, v)L2(Ω) + (un−1, v)L2(Ω)
= −τ 2(
θa(un+1, v) + (1− 2θ)a(un, v) + θa(un−1, v))
,(8)
where θ ∈ [0, 1]. Thus we solve
(un+1, v)L2(Ω) + θτ 2a(un+1, v) = 2(un, v)L2(Ω) − (un−1, v)L2(Ω)
− τ 2(
(1− 2θ)a(un, v) + θa(un−1, v))
, ∀v ∈ H1(Ω).
(9)
We can see the rationale for this approach by doing aTaylor expansion.
Taylor expansion
Rice University January 2018 19/36
u((n± 1)τ) = u(nτ)± τut(nτ) +12τ
2utt(nτ)
± τ 3
6uttt(nτ) +O
(
τ 4)
.(10)
Adding terms and dividing by τ 2, and again making thecorrespondence uj ≈ u(jτ), we find
un+1 − 2un + un−1
τ 2= utt(nτ) +O
(
τ 2)
.
Similarly, multiplying (10) by θ and adding gives
θu((n+ 1)τ) + (1− 2θ)u(nτ) + θu((n− 1)τ)
= u(nτ) + θτ 2utt(nτ) +O(
τ 4)
.(11)
Theta schemes
Rice University January 2018 20/36
Thus for any value of θ we get a second-orderapproximation:
un+1 − 2un + un−1
τ 2+ θun+1 + (1− 2θ)un + θun−1
= utt(nτ) + u(nτ) +O(
τ 2)
,(12)
and truncation error is decreasing in θ.
If we take θ = 0 we get an explicit scheme with time-steprestrictions.
In [5], the choice θ = 1/4 was advocated for stabilityreasons.
Higher accuracy
Rice University January 2018 21/36
Figure 2: Error in L2(Ω) as function of time for θ scheme with θ = 1/4,∆t = 0.05, L = 10, T = 5, M = 2000 mesh points, using piecewise linears.
Computational example
Rice University January 2018 22/36
Start the simulation (in one space dimension) with
u0(x) = e−x2
on domain Ω = [−L,L]. Take L as large as necessary.
Take ut(x, 0) = 0. Then the exact solution follows fromd’Alembert’s formula:
u(x, t) = 12e
−(t−x)2 + 12e
−(t+x)2. (13)
Error as a function of time is indicated in Figure 2.
Error increases rapidly initially but then decreases.
Higher dimensions
Rice University January 2018 23/36
The conversion to higher space dimensions isnotationally trivial.
We have written our bilinear form
a(u, v) =
∫
Ω
∇u · ∇v dx
which makes sense in any number of dimensions.
Thus it is just a matter of defining the spatial domain tobe multi-dimensional and waiting a bit longer for theanswers to appear.
Helmholtz equation
Rice University January 2018 24/36
Consider solutions U of wave equation (2) given by
U(x, t) = u(x)eιkt,
where k ∈ R and ι =√−1. Then
∆U(x, t) = (∆u(x))eιkt and Utt(x, t) = −k2u(x)eιkt.
Thus the wave equation
Utt(x, t)−∆U(x, t) = f(x)eιkt
is satisfied if
−k2u(x)−∆u(x) = f(x). (14)
Helmholtz equation
Rice University January 2018 25/36
Equation (14) is known as Helmholtz equation .
Solving this (with boundary conditions) can be touchysince corresponding variational form not coercive.
If bothered by complex varaible ansatz for U , replace itwith real counterparts, e.g.,
U 1(x, t) = u(x) cos(kt), U 2(x, t) = u(x) sin(kt),
but the conclusion is the same:
U i’s solve the wave equation if (14) holds.
Dispersive waves
Rice University January 2018 26/36
Many types of wave behavior can be characterized asdispersive .
One example is water waves.
These are the waves that a child first sees.
The main characteristic of these waves is the way thatthey spread as time evolves.
Unlike the behavior we saw for The wave equationwhere waveforms just translate linearly in time asindicated in (4).
Dispersive waves
Rice University January 2018 27/36
When the wave length λ is long and the amplitude a issmall, compared to the water depth, approximateequations can be derived for surface wave behavior.
More precisely, define the Stokes parameter S = aλ2/d3,where d is the (assumed uniform) depth of the water.
When S = O (1), then models for one-way propagationinclude the KdV equation [6, 3]
ut + ux + 2uux + uxxx = 0,
where u is the wave height.
Dispersive waves
Rice University January 2018 28/36
The waves are assumed to be propagating in thex-direction, and constant in the y-direction.
We see that this equation is a nonlinear perturbation ofthe one-way wave equation ut + ux = 0.
Another, equivalent [3], model is
ut + ux + 2uux − uxxt = 0. (15)
The two equations related as perturbations of the basicwave equation ut + ux = 0.
Suggests the substitution ut ≈ −ux, leads touxxt ≈ −uxxx.
Dispersive waves
Rice University January 2018 29/36
Simulations using equation (15) have been comparedwith laboratory experiments [2].
Solutions of (15) can be approximated numerically [4] bywriting it in the form
(
I − ∂2
∂x2
)
ut = −ux − 2uux = −(
u+ u2)
x, (16)
where I denotes the identity operator.
Dispersive waves
Rice University January 2018 30/36
The left-hand side is a familiar elliptic operator, so wecan write a variational equation
a(ut, v) = −(ux + 2uux, v)L2(Ω)
= −((1 + 2u)ux, v)L2(Ω),(17)
where
a(v, w) =
∫
Ω
v(x)w(x) + v′(x)w′(x) dx. (18)
A variety of time-stepping schemes can be used todiscretize (17).
Time-stepping schemes
Rice University January 2018 31/36
One family of schemes that work well [4] is theRunge-Kutta schemes.
These schemes can be high order yet not requireprevious time values of the solution.
Often used as start-up schemes for other schemes thatdo utilize previous values, as do the θ schemes (8).
Simplest is modified Euler scheme: ∀v ∈ V
a(un+1, v) = a(un, v)−∆t ((1 + 2un)unx, v)L2(Ω)
a(un+1, v) = a(un, v)− 12∆t
(
((1 + 2un)unx, v)L2(Ω)
+ ((1 + 2un+1)un+1x , v)L2(Ω)
)
.
(19)
Time-stepping schemes
Rice University January 2018 32/36
An example
Rice University January 2018 33/36
The first step in (19) is called the predictor step andthe second step in (19) is called the corrector step .
Figure presents example of this scheme with piecewiselinear approximation in space.
The initial data u(x, 0) = e−x2
evolves into a complexwave form that spreads out as it travels to the right, andeven has a part that moves slowly to the left.
The wave speed is approximately 1 + 2u, and in 25 timeunits the leading wave moves over 60 units to the right.
A linear wave (that is, if u were small) would havemoved only 25 units to the right.
An example
Rice University January 2018 34/36
A common measure of wave length for a complex waveshape is its width at half height.
For the function f(x) = e−x2
, this is the point x wheree−x2
= 1/2.
Thus −x2 = log(1/2), so x =√log 2 = 0.83 . . . .
Thus the initial wave length is less than 2, whereas theleading wave at T = 25 has a width that is about 7 units,over 4 times larger.
The dispersion causes the initial narrow wave to spread.
Solitary waves
Rice University January 2018 35/36
Despite the fact that there is both dispersion andnonlinearity in (16), it is possible to find special waveforms that propagate without change of shape.
These are called solitary waves .
For the equation (16), they take the form
u(x, t) =3
2A sech2
(
1
2
√
A
A+ 1(x− (1 + A)t)
)
, (20)
where A > 0 can be any positive value. Recall that
sech(z) =2
ez + e−z=
1
cosh(z).
References
Rice University January 2018 36/36
[1] Shmuel Agmon, Avron Douglis, and Louis Nirenberg. Estimates near theboundary for solutions of elliptic partial differential equations satisfyinggeneral boundary conditions II. Communications on Pure and AppliedMathematics, 17(1):35–92, 1964.
[2] J. L. Bona, W. G. Pritchard, and L. R. Scott. An evaluation of a modelequation for water waves. Philos. Trans. Roy. Soc. London Ser. A 302, pages457–510, 1981.
[3] J. L. Bona, W. G. Pritchard, and L. R. Scott. A comparison of solutions of twomodel equations for long waves. In Fluid Dynamics in Astrophysics andGeophysics, N. R. Lebovitz, ed.,, volume 20, pages 235–267. Providence,Rhode Island: American Mathematical Society, 1983.
[4] J. L. Bona, W. G. Pritchard, and L. R. Scott. Numerical schemes for a modelfor nonlinear dispersive waves. J. Comp Phys., 60:167–186, 1985.
[5] Todd Dupont. L2-estimates for Galerkin methods for second order hyperbolicequations. SIAM Journal on Numerical Analysis, 10(5):880–889, 1973.
[6] J. Yan and C.W. Shu. A local discontinuous galerkin method for kdv typeequations. SIAM Journal on Numerical Analysis, pages 769–791, 2003.