Chapter 3
Chapter 3
3. Newton’s method
4. Boundary conditions
5. Adaptive grids
7. Toeplitz matrices
2 / 67
1. Approximation of derivatives y 0 = dy /dx
Forward difference
y (x + ∆x) − y (x)
y 0 (x) = + O(∆x)
∆x
Backward difference
y (x) − y (x − ∆x)
y 0 (x) = + O(∆x)
∆x
3 / 67
Spatial symmetric approximation of derivatives
y (x + ∆x) − y (x − ∆x)
y 0 (x) = + O(∆x 2 )
2∆x
4 / 67
Derivatives → finite differences → matrices
y (x + ∆x) − y (x)
y 0 (x) = + O(∆x)
∆x
y00
−1 1 y0
y10 1 −1 1 y1
≈
.. .. .. ..
∆x
. . . .
yN0 −1 1 yN+1
5 / 67
From derivatives to matrices
y00
−1 1 y0
y10 1 −1 1 y1
≈
.. .. .. ..
∆x
. . . .
yN0 −1 1 yN+1
6 / 67
From derivatives to matrices. . .
Central difference
y (x + ∆x) − y (x − ∆x)
y 0 (x) ≈
2∆x
Matrix representation
0
y1 y0
y0 −1 0 1 y1
2 1 . .
.. ≈ .. .. ...
..
. 2∆x
.
−1 0 1
yN0 yN+1
7 / 67
From derivatives to matrices. . .
Note N × (N + 2) matrix
y10
y0
−1 0 1
y20 1 . .. ..
y1
.. ≈
.. . .
..
2∆x
. .
−1 0 1
yN0 yN+1
8 / 67
From derivatives to matrices. . .
“False” nullspace
z2 − 1 = 0 ⇒ z = ±1
9 / 67
2nd order derivatives → matrices y 00 = d2 y /dx 2
Central difference
y (x + ∆x) − 2y (x) + y (x − ∆x)
y 00 (x) ≈
∆x 2
y100
y0
1 −2 1
y200 1 . . ..
y1
.. ≈
. . . . .
..
∆x 2
. .
1 −2 1
yN00 yN+1
10 / 67
2nd order derivatives. . .
Nullspace of d2 /dx 2
z 2 − 2z + 1 = 0 ⇒ z = 1, 1
11 / 67
2. Finite difference methods for 2p-BVP
y 00 = f (x, y )
y (0) = α; y (1) = β
FDM discretization
y0 = α; yN+1 = β
12 / 67
Discrete 2pBVP Equation system F (y ) = 0
α − 2y1 + y2
F1 (y ) = − f (x1 , y1 )
∆x 2
yN−1 − 2yN + β
FN (y ) = − f (xN , yN )
∆x 2
13 / 67
3. Newton’s method F (y ) = 0
14 / 67
Jacobian matrix F 0 (y ) = {∂Fi /∂yj }
∂f
F 0 (y ) = tridiag (1/∆x 2 , −2/∆x 2 − , 1/∆x 2 )
∂yi
15 / 67
Newton’s method for F (y ) = 0
Newton iteration
16 / 67
Quadratic convergence
• kF 0 (y (k) )−1 k ≤ C 0
• kF 00 (y (k) )k ≤ C 00
ky (k+1) − y k ≤ C · ky (k) − y k2
17 / 67
4. Boundary conditions come in many types
• Dirichlet conditions
y (0) = α ; y (1) = β straightforward to implement
• Neumann conditions
y 0 (0) = γ ; y (1) = β requires special attention
• Robin conditions
y (0) + c · y 0 (0) = κ ; y (1) = β requires same attention
18 / 67
Neumann problem
Example y 00 = f (x, y )
y (0) = α; y 0 (1) = β
y (x + ∆x) − y (x − ∆x)
2∆x
requires points to the right of x = 1
19 / 67
Neumann problem, approach 1
Example y 00 = f (x, y )
y (0) = α; y 0 (1) = β
1
Equidistant grid, xn = n∆x with ∆x = N and xN+1 = 1 + ∆x
yN+1 − yN−1
y 0 (1) = β → =β
2∆x
20 / 67
Neumann problem, approach 2
Example y 00 = f (x, y )
y (0) = α; y 0 (1) = β
1
Equidistant grid, xn = n∆x with ∆x = N+1/2 and
yN+1 − yN
y 0 (1) = β → =β
∆x
21 / 67
Neumann problem, approach 3
Example y 00 = f (x, y )
y (0) = α; y 0 (1) = β
1
Equidistant grid, xn = n∆x with ∆x = N+1 and xN+1 = 1
yN−1 − 4yN + 3yN+1
y 0 (1) = β → =β
2∆x
1
⇒ yN+1 := 3 (2β∆x + 4yN − yN−1 ) is of second order at x = 1
22 / 67
Robin problem
Example y 00 = f (x, y )
y (0) = α; y (1) + cy 0 (1) = κ
yN+1 + yN yN+1 − yN
y (1) + cy 0 (1) = κ → +c =κ
2 ∆x
h− D + yi + h+ D − yi
yi0 ≈
h+ + h−
D + yi − D − yi
yi00 ≈ 2
h+ + h−
24 / 67
Nonuniform grids Grid deformation
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
25 / 67
Adaptive grids u 00 + 100u 0 = 100
-0.2
-0.4
-0.6
u
-0.8
-1
-1.2
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
x
26 / 67
6. Sturm–Liouville eigenvalue problems
Diffusion problem
∂u ∂ ∂u
= p(x) ; u(t, a) = u(t, b) = 0
∂t ∂x ∂x
v̇ (p(x) y 0 )0
u(t, x) := y (x) · v (t) ⇒ = =: λ
v y
27 / 67
Sturm–Liouville eigenvalue problems. . .
Wave equation
∂2u 2
2∂ u
= c ; u(t, a) = u(t, b) = 0
∂t 2 ∂x 2
−ω 2 y = c 2 y 00 y (a) = y (b) = 0
y 00 = λy with λ = −ω 2 /c 2
28 / 67
Why Sturm–Liouville eigenvalue problems?
Öresund bridge
29 / 67
Fluid–structure interaction
30 / 67
Tuned mass dampers
31 / 67
Taipei 101
34 / 67
Compression loads, buckling and sun kinks
35 / 67
Stationary Schrödinger equation Particle in a box
Quantum mechanics
~2 d2 ψ
− + V (x)ψ = E ψ
2m dx 2
36 / 67
Sturm–Liouville eigenvalue problem
T∆x y = λ∆x y
37 / 67
Sturm–Liouville problem Discretization
Symmetric discretizations
38 / 67
Sturm–Liouville problem Discretization II
y0 = yN+1 = 0
T∆x y = λ∆x y
39 / 67
Sturm–Liouville problem A simple example
Analytic solution
√ √
y (x) = A sin −λ x + B cos −λ x
√
Boundary values ⇒ B = 0 and A sin −λ = 0
λk = −(kπ)2
yk (x) = sin kπx
40 / 67
Discrete Sturm–Liouville problem Benchmark test
41 / 67
Discrete Sturm–Liouville problem. . .
T∆x y = λ∆x y
42 / 67
Discrete Sturm–Liouville problem Computation
0.3
0.2
0.1
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0.4
0.2
−0.2
−0.4
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0.4
0.2
−0.2
−0.4
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
43 / 67
Discrete Sturm–Liouville problem Eigenvalues N = 19
Note
• Lowest eigenvalues are more accurate
√
• Good approximations for N first eigenvalues
44 / 67
Discrete Sturm–Liouville problem High modes
0.2
−0.2
−0.4
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0.4
0.2
−0.2
−0.4
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0.4
0.2
−0.2
−0.4
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
45 / 67
7. Toeplitz matrices
Example (symmetric)
−2 1 0 ...
1 −2 1
1 1 −2 1
T∆x =
∆x 2
. ..
... 0 1 −2
46 / 67
Toeplitz matrices. . .
47 / 67
Eigenvalues of Toeplitz matrices
−2 1 0 ...
1 −2 1
T =
1 −2 1
. ..
... 0 1 −2
48 / 67
Eigenvalues. . .
0 1 0 ... y1
1 0 1 y2
Sy = 1 0 1 ..
= λy
.
..
. 1
... 0 1 0 yN
49 / 67
Eigenvalues and difference equations
Characteristic equation z 2 − λz + 1 = 0
yn = Az n + Bz −n
50 / 67
Eigenvalues and difference equations. . .
kπi
z 2(N+1) = 1 ⇒ zk = exp k =1:N
N +1
kπ
λk [S] = zk + 1/zk = 2 cos
N +1
Hence
kπ kπ
λk [T ] = −2 + 2 cos = −4 sin2
N +1 2(N + 1)
51 / 67
Eigenvalue locations λk [T ]
52 / 67
Eigenvalues of Toeplitz matrices
kπ
λk [T ] = −4 sin2 ∈ (−4, 0)
2(N + 1)
53 / 67
Eigenvalues of Toeplitz matrices. . .
for k N
54 / 67
What are the norms of T ?
µ2 [A] = max λk
k
55 / 67
Proofs. Norm
Definition
x T AT Ax
kAk22 = max
x T x6=0 x Tx
Find stationary points of the Rayleigh quotient of AT A, given by
ρ(x) = x T AT Ax/x T x
d
ρ(x) = (2x T AT Ax T x − 2x T x T AT Ax)/(x T x)2 := 0
dx
⇒ x T AT A = x T ρ(x) ⇒ A2 x = ρ(x)x
56 / 67
Proofs. Logarithmic norm
Definition (real A)
x T Ax
µ2 [A] = max
x T x6=0 x T x
d
ρ(x) = [x T (A + AT )x T x − 2x T x T Ax]/(x T x)2 := 0
dx
1 T
x (A + AT )x = x T ρ(x) ⇒ Ax = ρ(x)x
2
kπ
λk [T∆x ] = −4(N + 1)2 sin2
2(N + 1)
58 / 67
−1
The norm of T∆x
T∆x u = q
59 / 67
What norms to use Euclidean and RMS norms
−1 −1
Note For the operator norm, kT∆x k∆x ≡ kT∆x k2
60 / 67
8. Convergence of finite difference methods
y 00 = f (x)
y (0) = α; y (1) = β
Equidistant discretization
yi+1 − 2yi + yi−1
= f (xi )
∆x 2
y0 = α; yN+1 = β
61 / 67
Error definitions Local error
62 / 67
Error definitions Global error
Convergence
Will show that e(x) → 0 as ∆x → 0, or more specifically
kek∆x = c1 ∆x 2 + c2 ∆x 4 + . . .
63 / 67
Convergence
T∆x u = f (x)
with T∆x tridiagonal. Then
64 / 67
Convergence. . .
−1
Numerically u = T∆x · f (x)
−1
Exact y (x) = T∆x · (f (x) − l(x))
−1
Global error e(x) = T∆x · l(x)
−1
Error bound kek∆x ≤ kT∆x k2 · klk∆x
65 / 67
Convergence. . .
Recall
−1
• µ2 [T∆x ] ≈ −π 2 ⇒ kT∆x k2 / 1/π 2
−1
• kek∆x ≤ kT∆x k2 · klk∆x
1
• klk∆x ≤ ∆x 2 12 maxξ∈[0,1] |y (4) (ξ)| + O(∆x 4 )
We therefore have
1 ∆x 2
kek∆x ≤ · klk ∆x = max |y (4) (ξ)| + O(∆x 4 )
π2 12π 2 ξ∈[0,1]
66 / 67
The Lax Principle
Conclusion
Consistency local error l → 0 as ∆x → 0
−1
Stability kT∆x k2 ≤ C as ∆x → 0
Convergence global error e → 0 as ∆x → 0
67 / 67