Franciss Algorithm David S. Watkins watkins@math.wsu.edu - - PowerPoint PPT Presentation

francis s algorithm
SMART_READER_LITE
LIVE PREVIEW

Franciss Algorithm David S. Watkins watkins@math.wsu.edu - - PowerPoint PPT Presentation

Franciss Algorithm David S. Watkins watkins@math.wsu.edu Department of Mathematics Washington State University Franciss Algorithm p. 1 Av = v Eigenvalue Problem: Franciss Algorithm p. 2 Av = v Eigenvalue Problem: How to


slide-1
SLIDE 1

Francis’s Algorithm

David S. Watkins

watkins@math.wsu.edu

Department of Mathematics Washington State University

Francis’s Algorithm – p. 1

slide-2
SLIDE 2

Eigenvalue Problem: Av = λv

Francis’s Algorithm – p. 2

slide-3
SLIDE 3

Eigenvalue Problem: Av = λv How to solve?

Francis’s Algorithm – p. 2

slide-4
SLIDE 4

Eigenvalue Problem: Av = λv How to solve? lambda = eig(A)

Francis’s Algorithm – p. 2

slide-5
SLIDE 5

Eigenvalue Problem: Av = λv How to solve? lambda = eig(A) How does eig do it?

Francis’s Algorithm – p. 2

slide-6
SLIDE 6

Eigenvalue Problem: Av = λv How to solve? lambda = eig(A) How does eig do it? Francis’s algorithm,

Francis’s Algorithm – p. 2

slide-7
SLIDE 7

Eigenvalue Problem: Av = λv How to solve? lambda = eig(A) How does eig do it? Francis’s algorithm, aka

Francis’s Algorithm – p. 2

slide-8
SLIDE 8

Eigenvalue Problem: Av = λv How to solve? lambda = eig(A) How does eig do it? Francis’s algorithm, aka the implicitly shifted QR algorithm

Francis’s Algorithm – p. 2

slide-9
SLIDE 9

Eigenvalue Problem: Av = λv How to solve? lambda = eig(A) How does eig do it? Francis’s algorithm, aka the implicitly shifted QR algorithm 50 years!

Francis’s Algorithm – p. 2

slide-10
SLIDE 10

Eigenvalue Problem: Av = λv How to solve? lambda = eig(A) How does eig do it? Francis’s algorithm, aka the implicitly shifted QR algorithm 50 years! Top Ten of the century (Dongarra and Sullivan)

Francis’s Algorithm – p. 2

slide-11
SLIDE 11

John Francis

Francis’s Algorithm – p. 3

slide-12
SLIDE 12

Who is John Francis?

Francis’s Algorithm – p. 4

slide-13
SLIDE 13

Who is John Francis?

born near London in 1934

Francis’s Algorithm – p. 4

slide-14
SLIDE 14

Who is John Francis?

born near London in 1934 employed in late 50’s, Pegasus computer

Francis’s Algorithm – p. 4

slide-15
SLIDE 15

Who is John Francis?

born near London in 1934 employed in late 50’s, Pegasus computer linear algebra, eigenvalue routines

Francis’s Algorithm – p. 4

slide-16
SLIDE 16

Who is John Francis?

born near London in 1934 employed in late 50’s, Pegasus computer linear algebra, eigenvalue routines primitive computer

Francis’s Algorithm – p. 4

slide-17
SLIDE 17

Who is John Francis?

born near London in 1934 employed in late 50’s, Pegasus computer linear algebra, eigenvalue routines primitive computer no software

Francis’s Algorithm – p. 4

slide-18
SLIDE 18

Who is John Francis?

born near London in 1934 employed in late 50’s, Pegasus computer linear algebra, eigenvalue routines primitive computer no software experimented with a variety of methods

Francis’s Algorithm – p. 4

slide-19
SLIDE 19

Who is John Francis?

born near London in 1934 employed in late 50’s, Pegasus computer linear algebra, eigenvalue routines primitive computer no software experimented with a variety of methods invented His algorithm and programmed it

Francis’s Algorithm – p. 4

slide-20
SLIDE 20

Who is John Francis?

born near London in 1934 employed in late 50’s, Pegasus computer linear algebra, eigenvalue routines primitive computer no software experimented with a variety of methods invented His algorithm and programmed it moved on to other things

Francis’s Algorithm – p. 4

slide-21
SLIDE 21

Some History

Francis’s Algorithm – p. 5

slide-22
SLIDE 22

Some History

Rutishauser (q-d 1954, LR 1958)

Francis’s Algorithm – p. 5

slide-23
SLIDE 23

Some History

Rutishauser (q-d 1954, LR 1958) Francis’s first paper (QR)

Francis’s Algorithm – p. 5

slide-24
SLIDE 24

Some History

Rutishauser (q-d 1954, LR 1958) Francis’s first paper (QR) A − ρI = QR, RQ + ρI = ˆ A

Francis’s Algorithm – p. 5

slide-25
SLIDE 25

Some History

Rutishauser (q-d 1954, LR 1958) Francis’s first paper (QR) A − ρI = QR, RQ + ρI = ˆ A repeat!

Francis’s Algorithm – p. 5

slide-26
SLIDE 26

Some History

Rutishauser (q-d 1954, LR 1958) Francis’s first paper (QR) A − ρI = QR, RQ + ρI = ˆ A repeat! Kublanovskaya

Francis’s Algorithm – p. 5

slide-27
SLIDE 27

Some History

Rutishauser (q-d 1954, LR 1958) Francis’s first paper (QR) A − ρI = QR, RQ + ρI = ˆ A repeat! Kublanovskaya ...but this is not “Francis’s Algorithm”

Francis’s Algorithm – p. 5

slide-28
SLIDE 28

Francis’s Algorithm

Francis’s Algorithm – p. 6

slide-29
SLIDE 29

Francis’s Algorithm

Second paper of Francis

Francis’s Algorithm – p. 6

slide-30
SLIDE 30

Francis’s Algorithm

Second paper of Francis real matrices

Francis’s Algorithm – p. 6

slide-31
SLIDE 31

Francis’s Algorithm

Second paper of Francis real matrices with complex pairs of eigenvalues

Francis’s Algorithm – p. 6

slide-32
SLIDE 32

Francis’s Algorithm

Second paper of Francis real matrices with complex pairs of eigenvalues complex shifts

Francis’s Algorithm – p. 6

slide-33
SLIDE 33

Francis’s Algorithm

Second paper of Francis real matrices with complex pairs of eigenvalues complex shifts want to stay in real arithmetic

Francis’s Algorithm – p. 6

slide-34
SLIDE 34

Francis’s Algorithm

Second paper of Francis real matrices with complex pairs of eigenvalues complex shifts want to stay in real arithmetic two steps at once

Francis’s Algorithm – p. 6

slide-35
SLIDE 35

Francis’s Algorithm

Second paper of Francis real matrices with complex pairs of eigenvalues complex shifts want to stay in real arithmetic two steps at once double-shift QR algorithm

Francis’s Algorithm – p. 6

slide-36
SLIDE 36

Francis’s Algorithm

Second paper of Francis real matrices with complex pairs of eigenvalues complex shifts want to stay in real arithmetic two steps at once double-shift QR algorithm radically different from basic QR

Francis’s Algorithm – p. 6

slide-37
SLIDE 37

Francis’s Algorithm

Second paper of Francis real matrices with complex pairs of eigenvalues complex shifts want to stay in real arithmetic two steps at once double-shift QR algorithm radically different from basic QR Usual justification: Francis’s implicit-Q theorem

Francis’s Algorithm – p. 6

slide-38
SLIDE 38

Francis’s Algorithm

Francis’s Algorithm – p. 7

slide-39
SLIDE 39

Francis’s Algorithm

upper Hessenberg form

Francis’s Algorithm – p. 7

slide-40
SLIDE 40

Francis’s Algorithm

upper Hessenberg form pick some shifts ρ1, ..., ρm (m = 1, 2, 4, 6)

Francis’s Algorithm – p. 7

slide-41
SLIDE 41

Francis’s Algorithm

upper Hessenberg form pick some shifts ρ1, ..., ρm (m = 1, 2, 4, 6) p(A) = (A − ρ1I) · · · (A − ρmI)

Francis’s Algorithm – p. 7

slide-42
SLIDE 42

Francis’s Algorithm

upper Hessenberg form pick some shifts ρ1, ..., ρm (m = 1, 2, 4, 6) p(A) = (A − ρ1I) · · · (A − ρmI) expensive!

Francis’s Algorithm – p. 7

slide-43
SLIDE 43

Francis’s Algorithm

upper Hessenberg form pick some shifts ρ1, ..., ρm (m = 1, 2, 4, 6) p(A) = (A − ρ1I) · · · (A − ρmI) expensive! compute p(A)e1

Francis’s Algorithm – p. 7

slide-44
SLIDE 44

Francis’s Algorithm

upper Hessenberg form pick some shifts ρ1, ..., ρm (m = 1, 2, 4, 6) p(A) = (A − ρ1I) · · · (A − ρmI) expensive! compute p(A)e1 cheap!

Francis’s Algorithm – p. 7

slide-45
SLIDE 45

Francis’s Algorithm

upper Hessenberg form pick some shifts ρ1, ..., ρm (m = 1, 2, 4, 6) p(A) = (A − ρ1I) · · · (A − ρmI) expensive! compute p(A)e1 cheap! Build unitary Q0 with q1 = αp(A)e1.

Francis’s Algorithm – p. 7

slide-46
SLIDE 46

Francis’s Algorithm

upper Hessenberg form pick some shifts ρ1, ..., ρm (m = 1, 2, 4, 6) p(A) = (A − ρ1I) · · · (A − ρmI) expensive! compute p(A)e1 cheap! Build unitary Q0 with q1 = αp(A)e1. Perform similarity transform A → Q−1

0 AQ0.

Francis’s Algorithm – p. 7

slide-47
SLIDE 47

Francis’s Algorithm

upper Hessenberg form pick some shifts ρ1, ..., ρm (m = 1, 2, 4, 6) p(A) = (A − ρ1I) · · · (A − ρmI) expensive! compute p(A)e1 cheap! Build unitary Q0 with q1 = αp(A)e1. Perform similarity transform A → Q−1

0 AQ0.

Hessenberg form is disturbed.

Francis’s Algorithm – p. 7

slide-48
SLIDE 48

An Upper Hessenberg Matrix

❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅

Francis’s Algorithm – p. 8

slide-49
SLIDE 49

After the Transformation (Q−1

0 AQ0)

❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅

Francis’s Algorithm – p. 9

slide-50
SLIDE 50

After the Transformation (Q−1

0 AQ0)

❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅

Now return the matrix to Hessenberg form.

Francis’s Algorithm – p. 9

slide-51
SLIDE 51

Chasing the Bulge

❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅

Francis’s Algorithm – p. 10

slide-52
SLIDE 52

Chasing the Bulge

❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅

Francis’s Algorithm – p. 11

slide-53
SLIDE 53

Done

❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅

Francis’s Algorithm – p. 12

slide-54
SLIDE 54

Done

❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅ ❅

The Francis iteration is complete!

Francis’s Algorithm – p. 12

slide-55
SLIDE 55

Summary of Francis Iteration

Francis’s Algorithm – p. 13

slide-56
SLIDE 56

Summary of Francis Iteration

Pick some shifts.

Francis’s Algorithm – p. 13

slide-57
SLIDE 57

Summary of Francis Iteration

Pick some shifts. Compute p(A)e1. (p determined by shifts)

Francis’s Algorithm – p. 13

slide-58
SLIDE 58

Summary of Francis Iteration

Pick some shifts. Compute p(A)e1. (p determined by shifts) Build Q0 with first column q1 = αp(A)e1.

Francis’s Algorithm – p. 13

slide-59
SLIDE 59

Summary of Francis Iteration

Pick some shifts. Compute p(A)e1. (p determined by shifts) Build Q0 with first column q1 = αp(A)e1. Make a bulge. (A → Q−1

0 AQ0)

Francis’s Algorithm – p. 13

slide-60
SLIDE 60

Summary of Francis Iteration

Pick some shifts. Compute p(A)e1. (p determined by shifts) Build Q0 with first column q1 = αp(A)e1. Make a bulge. (A → Q−1

0 AQ0)

Chase the bulge. (return to Hessenberg form)

Francis’s Algorithm – p. 13

slide-61
SLIDE 61

Summary of Francis Iteration

Pick some shifts. Compute p(A)e1. (p determined by shifts) Build Q0 with first column q1 = αp(A)e1. Make a bulge. (A → Q−1

0 AQ0)

Chase the bulge. (return to Hessenberg form) ˆ A = Q−1AQ

Francis’s Algorithm – p. 13

slide-62
SLIDE 62

Quicker Summary

Francis’s Algorithm – p. 14

slide-63
SLIDE 63

Quicker Summary

Make a bulge.

Francis’s Algorithm – p. 14

slide-64
SLIDE 64

Quicker Summary

Make a bulge. Chase it.

Francis’s Algorithm – p. 14

slide-65
SLIDE 65

Remarks

Francis’s Algorithm – p. 15

slide-66
SLIDE 66

Remarks

This is pretty simple.

Francis’s Algorithm – p. 15

slide-67
SLIDE 67

Remarks

This is pretty simple. no QR decomposition in sight!

Francis’s Algorithm – p. 15

slide-68
SLIDE 68

Remarks

This is pretty simple. no QR decomposition in sight! Why call it the QR algorithm?

Francis’s Algorithm – p. 15

slide-69
SLIDE 69

Remarks

This is pretty simple. no QR decomposition in sight! Why call it the QR algorithm? Confusion!

Francis’s Algorithm – p. 15

slide-70
SLIDE 70

Remarks

This is pretty simple. no QR decomposition in sight! Why call it the QR algorithm? Confusion! Can we think of another name?

Francis’s Algorithm – p. 15

slide-71
SLIDE 71

Remarks

This is pretty simple. no QR decomposition in sight! Why call it the QR algorithm? Confusion! Can we think of another name? I’m calling it Francis’s Algorithm.

Francis’s Algorithm – p. 15

slide-72
SLIDE 72

Remarks

This is pretty simple. no QR decomposition in sight! Why call it the QR algorithm? Confusion! Can we think of another name? I’m calling it Francis’s Algorithm. This is not a radical move.

Francis’s Algorithm – p. 15

slide-73
SLIDE 73

Question

Francis’s Algorithm – p. 16

slide-74
SLIDE 74

Question

How should we view Francis’s algorithm?

Francis’s Algorithm – p. 16

slide-75
SLIDE 75

Question

How should we view Francis’s algorithm? Do we have to start with the basic QR algorithm?

Francis’s Algorithm – p. 16

slide-76
SLIDE 76

Question

How should we view Francis’s algorithm? Do we have to start with the basic QR algorithm? Couldn’t we just as well introduce Francis’s algorithm directly?

Francis’s Algorithm – p. 16

slide-77
SLIDE 77

Question

How should we view Francis’s algorithm? Do we have to start with the basic QR algorithm? Couldn’t we just as well introduce Francis’s algorithm directly? ...bypassing the basic QR algorithm entirely?

Francis’s Algorithm – p. 16

slide-78
SLIDE 78

Question

How should we view Francis’s algorithm? Do we have to start with the basic QR algorithm? Couldn’t we just as well introduce Francis’s algorithm directly? ...bypassing the basic QR algorithm entirely? ...and the answer is:

Francis’s Algorithm – p. 16

slide-79
SLIDE 79

Question

How should we view Francis’s algorithm? Do we have to start with the basic QR algorithm? Couldn’t we just as well introduce Francis’s algorithm directly? ...bypassing the basic QR algorithm entirely? ...and the answer is: Why not?

Francis’s Algorithm – p. 16

slide-80
SLIDE 80

Question

How should we view Francis’s algorithm? Do we have to start with the basic QR algorithm? Couldn’t we just as well introduce Francis’s algorithm directly? ...bypassing the basic QR algorithm entirely? ...and the answer is: Why not? This simplifies the presentation.

Francis’s Algorithm – p. 16

slide-81
SLIDE 81

Question

How should we view Francis’s algorithm? Do we have to start with the basic QR algorithm? Couldn’t we just as well introduce Francis’s algorithm directly? ...bypassing the basic QR algorithm entirely? ...and the answer is: Why not? This simplifies the presentation. I’m putting my money where my mouth is.

Francis’s Algorithm – p. 16

slide-82
SLIDE 82

Francis’s Algorithm – p. 17

slide-83
SLIDE 83

I’m putting my money where my mouth is ...

Francis’s Algorithm – p. 17

slide-84
SLIDE 84

I’m putting my money where my mouth is ... ...and saving one entire section!

Francis’s Algorithm – p. 17

slide-85
SLIDE 85

Pedagogical Pathway

Francis’s Algorithm – p. 18

slide-86
SLIDE 86

Pedagogical Pathway

reduction to Hessenberg form

Francis’s Algorithm – p. 18

slide-87
SLIDE 87

Pedagogical Pathway

reduction to Hessenberg form Francis’s algorithm

Francis’s Algorithm – p. 18

slide-88
SLIDE 88

Pedagogical Pathway

reduction to Hessenberg form Francis’s algorithm Try it out!

Francis’s Algorithm – p. 18

slide-89
SLIDE 89

Pedagogical Pathway

reduction to Hessenberg form Francis’s algorithm Try it out! It works great!

Francis’s Algorithm – p. 18

slide-90
SLIDE 90

Pedagogical Pathway

reduction to Hessenberg form Francis’s algorithm Try it out! It works great! Why does it work?

Francis’s Algorithm – p. 18

slide-91
SLIDE 91

Ingredients of Francis’s Algorithm

Francis’s Algorithm – p. 19

slide-92
SLIDE 92

Ingredients of Francis’s Algorithm

subspace iteration (power method)

Francis’s Algorithm – p. 19

slide-93
SLIDE 93

Ingredients of Francis’s Algorithm

subspace iteration (power method) subspace iteration with changes of coordinate system

Francis’s Algorithm – p. 19

slide-94
SLIDE 94

Ingredients of Francis’s Algorithm

subspace iteration (power method) subspace iteration with changes of coordinate system Krylov subspaces

Francis’s Algorithm – p. 19

slide-95
SLIDE 95

Ingredients of Francis’s Algorithm

subspace iteration (power method) subspace iteration with changes of coordinate system Krylov subspaces (instead of the implicit-Q theorem)

Francis’s Algorithm – p. 19

slide-96
SLIDE 96

Ingredients of Francis’s Algorithm

subspace iteration (power method) subspace iteration with changes of coordinate system Krylov subspaces (instead of the implicit-Q theorem) Krylov subspaces and subspace iteration

Francis’s Algorithm – p. 19

slide-97
SLIDE 97

Ingredients of Francis’s Algorithm

subspace iteration (power method) subspace iteration with changes of coordinate system Krylov subspaces (instead of the implicit-Q theorem) Krylov subspaces and subspace iteration Krylov subspaces and Hessenberg form

Francis’s Algorithm – p. 19

slide-98
SLIDE 98

Power Method, Subspace Iteration

Francis’s Algorithm – p. 20

slide-99
SLIDE 99

Power Method, Subspace Iteration

v, Av, A2v, A3v, ...

Francis’s Algorithm – p. 20

slide-100
SLIDE 100

Power Method, Subspace Iteration

v, Av, A2v, A3v, ... convergence rate |λ2/λ1|

Francis’s Algorithm – p. 20

slide-101
SLIDE 101

Power Method, Subspace Iteration

v, Av, A2v, A3v, ... convergence rate |λ2/λ1| S, AS, A2S, A3S, ...

Francis’s Algorithm – p. 20

slide-102
SLIDE 102

Power Method, Subspace Iteration

v, Av, A2v, A3v, ... convergence rate |λ2/λ1| S, AS, A2S, A3S, ... subspaces of dimension j

Francis’s Algorithm – p. 20

slide-103
SLIDE 103

Power Method, Subspace Iteration

v, Av, A2v, A3v, ... convergence rate |λ2/λ1| S, AS, A2S, A3S, ... subspaces of dimension j (|λj+1/λj |)

Francis’s Algorithm – p. 20

slide-104
SLIDE 104

Power Method, Subspace Iteration

v, Av, A2v, A3v, ... convergence rate |λ2/λ1| S, AS, A2S, A3S, ... subspaces of dimension j (|λj+1/λj |) Substitute p(A) for A

Francis’s Algorithm – p. 20

slide-105
SLIDE 105

Power Method, Subspace Iteration

v, Av, A2v, A3v, ... convergence rate |λ2/λ1| S, AS, A2S, A3S, ... subspaces of dimension j (|λj+1/λj |) Substitute p(A) for A (shifts, multiple steps)

Francis’s Algorithm – p. 20

slide-106
SLIDE 106

Power Method, Subspace Iteration

v, Av, A2v, A3v, ... convergence rate |λ2/λ1| S, AS, A2S, A3S, ... subspaces of dimension j (|λj+1/λj |) Substitute p(A) for A (shifts, multiple steps) S, p(A)S, p(A)2S, p(A)3S, ...

Francis’s Algorithm – p. 20

slide-107
SLIDE 107

Power Method, Subspace Iteration

v, Av, A2v, A3v, ... convergence rate |λ2/λ1| S, AS, A2S, A3S, ... subspaces of dimension j (|λj+1/λj |) Substitute p(A) for A (shifts, multiple steps) S, p(A)S, p(A)2S, p(A)3S, ... convergence rate |p(λj+1)/p(λj)|

Francis’s Algorithm – p. 20

slide-108
SLIDE 108

Subspace Iteration with changes of coordinate system

Francis’s Algorithm – p. 21

slide-109
SLIDE 109

Subspace Iteration with changes of coordinate system

take S = span{e1, . . . , ej}

Francis’s Algorithm – p. 21

slide-110
SLIDE 110

Subspace Iteration with changes of coordinate system

take S = span{e1, . . . , ej} p(A)S = span{p(A)e1, . . . , p(A)ej} = span{q1, . . . , qj} (orthonormal)

Francis’s Algorithm – p. 21

slide-111
SLIDE 111

Subspace Iteration with changes of coordinate system

take S = span{e1, . . . , ej} p(A)S = span{p(A)e1, . . . , p(A)ej} = span{q1, . . . , qj} (orthonormal) build unitary Q = [q1 · · · qj · · ·]

Francis’s Algorithm – p. 21

slide-112
SLIDE 112

Subspace Iteration with changes of coordinate system

take S = span{e1, . . . , ej} p(A)S = span{p(A)e1, . . . , p(A)ej} = span{q1, . . . , qj} (orthonormal) build unitary Q = [q1 · · · qj · · ·] change coordinate system: ˆ A = Q−1AQ

Francis’s Algorithm – p. 21

slide-113
SLIDE 113

Subspace Iteration with changes of coordinate system

take S = span{e1, . . . , ej} p(A)S = span{p(A)e1, . . . , p(A)ej} = span{q1, . . . , qj} (orthonormal) build unitary Q = [q1 · · · qj · · ·] change coordinate system: ˆ A = Q−1AQ qk → Q−1qk = Q∗qk = ek

Francis’s Algorithm – p. 21

slide-114
SLIDE 114

Subspace Iteration with changes of coordinate system

take S = span{e1, . . . , ej} p(A)S = span{p(A)e1, . . . , p(A)ej} = span{q1, . . . , qj} (orthonormal) build unitary Q = [q1 · · · qj · · ·] change coordinate system: ˆ A = Q−1AQ qk → Q−1qk = Q∗qk = ek span{q1, . . . , qj} → span{e1, . . . , ej}

Francis’s Algorithm – p. 21

slide-115
SLIDE 115

Subspace Iteration with changes of coordinate system

take S = span{e1, . . . , ej} p(A)S = span{p(A)e1, . . . , p(A)ej} = span{q1, . . . , qj} (orthonormal) build unitary Q = [q1 · · · qj · · ·] change coordinate system: ˆ A = Q−1AQ qk → Q−1qk = Q∗qk = ek span{q1, . . . , qj} → span{e1, . . . , ej} ready for next iteration

Francis’s Algorithm – p. 21

slide-116
SLIDE 116

This version of subspace iteration ...

Francis’s Algorithm – p. 22

slide-117
SLIDE 117

This version of subspace iteration ... ...holds the subspace fixed

Francis’s Algorithm – p. 22

slide-118
SLIDE 118

This version of subspace iteration ... ...holds the subspace fixed while the matrix changes.

Francis’s Algorithm – p. 22

slide-119
SLIDE 119

This version of subspace iteration ... ...holds the subspace fixed while the matrix changes. ...moving toward a matrix under which span{e1, . . . , ej} is invariant.

Francis’s Algorithm – p. 22

slide-120
SLIDE 120

This version of subspace iteration ... ...holds the subspace fixed while the matrix changes. ...moving toward a matrix under which span{e1, . . . , ej} is invariant. A → A11 A12 A22

  • (A11 is j × j.)

Francis’s Algorithm – p. 22

slide-121
SLIDE 121

Application to Francis’s Iteration (first pass)

Francis’s Algorithm – p. 23

slide-122
SLIDE 122

Application to Francis’s Iteration (first pass)

ˆ A = Q−1AQ where q1 = αp(A)e1.

Francis’s Algorithm – p. 23

slide-123
SLIDE 123

Application to Francis’s Iteration (first pass)

ˆ A = Q−1AQ where q1 = αp(A)e1. power method

Francis’s Algorithm – p. 23

slide-124
SLIDE 124

Application to Francis’s Iteration (first pass)

ˆ A = Q−1AQ where q1 = αp(A)e1. power method + change of coordinates

Francis’s Algorithm – p. 23

slide-125
SLIDE 125

Application to Francis’s Iteration (first pass)

ˆ A = Q−1AQ where q1 = αp(A)e1. power method + change of coordinates q1 → Q−1q1 = e1

Francis’s Algorithm – p. 23

slide-126
SLIDE 126

Application to Francis’s Iteration (first pass)

ˆ A = Q−1AQ where q1 = αp(A)e1. power method + change of coordinates q1 → Q−1q1 = e1 case j = 1 of subspace iteration with a change of coordinate system

Francis’s Algorithm – p. 23

slide-127
SLIDE 127

Application to Francis’s Iteration (first pass)

ˆ A = Q−1AQ where q1 = αp(A)e1. power method + change of coordinates q1 → Q−1q1 = e1 case j = 1 of subspace iteration with a change of coordinate system ...but this is just a small part of the story.

Francis’s Algorithm – p. 23

slide-128
SLIDE 128

Krylov Subspaces . . .

Francis’s Algorithm – p. 24

slide-129
SLIDE 129

Krylov Subspaces . . . . . . and Subspace Iteration

Francis’s Algorithm – p. 24

slide-130
SLIDE 130

Krylov Subspaces . . . . . . and Subspace Iteration

Def: Kj(A, q) = span

  • q, Aq, A2q, . . . , Aj−1q
  • Francis’s Algorithm – p. 24
slide-131
SLIDE 131

Krylov Subspaces . . . . . . and Subspace Iteration

Def: Kj(A, q) = span

  • q, Aq, A2q, . . . , Aj−1q
  • j = 1, 2, 3, ...

(nested subspaces)

Francis’s Algorithm – p. 24

slide-132
SLIDE 132

Krylov Subspaces . . . . . . and Subspace Iteration

Def: Kj(A, q) = span

  • q, Aq, A2q, . . . , Aj−1q
  • j = 1, 2, 3, ...

(nested subspaces) Kj(A, q) are “determined by q”.

Francis’s Algorithm – p. 24

slide-133
SLIDE 133

Krylov Subspaces . . . . . . and Subspace Iteration

Def: Kj(A, q) = span

  • q, Aq, A2q, . . . , Aj−1q
  • j = 1, 2, 3, ...

(nested subspaces) Kj(A, q) are “determined by q”. p(A)Kj(A, q) = Kj(A, p(A)q)

Francis’s Algorithm – p. 24

slide-134
SLIDE 134

Krylov Subspaces . . . . . . and Subspace Iteration

Def: Kj(A, q) = span

  • q, Aq, A2q, . . . , Aj−1q
  • j = 1, 2, 3, ...

(nested subspaces) Kj(A, q) are “determined by q”. p(A)Kj(A, q) = Kj(A, p(A)q) ...because p(A)A = Ap(A)

Francis’s Algorithm – p. 24

slide-135
SLIDE 135

Krylov Subspaces . . . . . . and Subspace Iteration

Def: Kj(A, q) = span

  • q, Aq, A2q, . . . , Aj−1q
  • j = 1, 2, 3, ...

(nested subspaces) Kj(A, q) are “determined by q”. p(A)Kj(A, q) = Kj(A, p(A)q) ...because p(A)A = Ap(A) Conclusion: Power method induces nested subspace iterations on Krylov subspaces.

Francis’s Algorithm – p. 24

slide-136
SLIDE 136

power method: q → p(A)kq

Francis’s Algorithm – p. 25

slide-137
SLIDE 137

power method: q → p(A)kq nested subspace iterations: p(A)kKj(A, q) = Kj(A, p(A)kq) j = 1, 2, 3, . . .

Francis’s Algorithm – p. 25

slide-138
SLIDE 138

power method: q → p(A)kq nested subspace iterations: p(A)kKj(A, q) = Kj(A, p(A)kq) j = 1, 2, 3, . . . convergence rates: |p(λj+1)/p(λj)|, j = 1, 2, 3, . . . , n − 1

Francis’s Algorithm – p. 25

slide-139
SLIDE 139

Krylov Subspaces . . .

Francis’s Algorithm – p. 26

slide-140
SLIDE 140

Krylov Subspaces . . . . . . and Hessenberg matrices . . .

Francis’s Algorithm – p. 26

slide-141
SLIDE 141

Krylov Subspaces . . . . . . and Hessenberg matrices . . .

...go hand in hand.

Francis’s Algorithm – p. 26

slide-142
SLIDE 142

Krylov Subspaces . . . . . . and Hessenberg matrices . . .

...go hand in hand. A properly upper Hessenberg = ⇒ Kj(A, e1) = span{e1, . . . , ej}.

Francis’s Algorithm – p. 26

slide-143
SLIDE 143

Krylov Subspaces . . . . . . and Hessenberg matrices . . .

...go hand in hand. A properly upper Hessenberg = ⇒ Kj(A, e1) = span{e1, . . . , ej}. More generally ...

Francis’s Algorithm – p. 26

slide-144
SLIDE 144

Krylov-Hessenberg Relationship

Francis’s Algorithm – p. 27

slide-145
SLIDE 145

Krylov-Hessenberg Relationship

If ˆ A = Q−1AQ,

Francis’s Algorithm – p. 27

slide-146
SLIDE 146

Krylov-Hessenberg Relationship

If ˆ A = Q−1AQ, and ˆ A is properly upper Hessenberg,

Francis’s Algorithm – p. 27

slide-147
SLIDE 147

Krylov-Hessenberg Relationship

If ˆ A = Q−1AQ, and ˆ A is properly upper Hessenberg, then for j = 1, 2, 3, ...,

Francis’s Algorithm – p. 27

slide-148
SLIDE 148

Krylov-Hessenberg Relationship

If ˆ A = Q−1AQ, and ˆ A is properly upper Hessenberg, then for j = 1, 2, 3, ..., span{q1, . . . , qj} = Kj(A, q1).

Francis’s Algorithm – p. 27

slide-149
SLIDE 149

Application to Francis’s Iteration

Francis’s Algorithm – p. 28

slide-150
SLIDE 150

Application to Francis’s Iteration

ˆ A = Q−1AQ where q1 = αp(A)e1.

Francis’s Algorithm – p. 28

slide-151
SLIDE 151

Application to Francis’s Iteration

ˆ A = Q−1AQ where q1 = αp(A)e1. power method with a change of coordinate system.

Francis’s Algorithm – p. 28

slide-152
SLIDE 152

Application to Francis’s Iteration

ˆ A = Q−1AQ where q1 = αp(A)e1. power method with a change of coordinate system. Moreover ...

Francis’s Algorithm – p. 28

slide-153
SLIDE 153

Application to Francis’s Iteration

ˆ A = Q−1AQ where q1 = αp(A)e1. power method with a change of coordinate system. Moreover ... p(A)Kj(A, e1) = Kj(A, p(A)e1)

Francis’s Algorithm – p. 28

slide-154
SLIDE 154

Application to Francis’s Iteration

ˆ A = Q−1AQ where q1 = αp(A)e1. power method with a change of coordinate system. Moreover ... p(A)Kj(A, e1) = Kj(A, p(A)e1) i.e. p(A)span{e1, . . . , ej} = span{q1, . . . , qj}

Francis’s Algorithm – p. 28

slide-155
SLIDE 155

Application to Francis’s Iteration

ˆ A = Q−1AQ where q1 = αp(A)e1. power method with a change of coordinate system. Moreover ... p(A)Kj(A, e1) = Kj(A, p(A)e1) i.e. p(A)span{e1, . . . , ej} = span{q1, . . . , qj} subspace iteration with a change of coordinate system

Francis’s Algorithm – p. 28

slide-156
SLIDE 156

Application to Francis’s Iteration

ˆ A = Q−1AQ where q1 = αp(A)e1. power method with a change of coordinate system. Moreover ... p(A)Kj(A, e1) = Kj(A, p(A)e1) i.e. p(A)span{e1, . . . , ej} = span{q1, . . . , qj} subspace iteration with a change of coordinate system for j = 1, 2, 3, ..., n − 1

Francis’s Algorithm – p. 28

slide-157
SLIDE 157

Application to Francis’s Iteration

ˆ A = Q−1AQ where q1 = αp(A)e1. power method with a change of coordinate system. Moreover ... p(A)Kj(A, e1) = Kj(A, p(A)e1) i.e. p(A)span{e1, . . . , ej} = span{q1, . . . , qj} subspace iteration with a change of coordinate system for j = 1, 2, 3, ..., n − 1 |p(λj+1)/p(λj)| j = 1, 2, 3, ..., n − 1

Francis’s Algorithm – p. 28

slide-158
SLIDE 158

Details

Francis’s Algorithm – p. 29

slide-159
SLIDE 159

Details

choice of shifts

Francis’s Algorithm – p. 29

slide-160
SLIDE 160

Details

choice of shifts We change the shifts at each step.

Francis’s Algorithm – p. 29

slide-161
SLIDE 161

Details

choice of shifts We change the shifts at each step. ⇒ quadratic or cubic convergence

Francis’s Algorithm – p. 29

slide-162
SLIDE 162

Details

choice of shifts We change the shifts at each step. ⇒ quadratic or cubic convergence Watkins (2007, 2010)

Francis’s Algorithm – p. 29

slide-163
SLIDE 163

Details

choice of shifts We change the shifts at each step. ⇒ quadratic or cubic convergence Watkins (2007, 2010)

Francis’s Algorithm – p. 29

slide-164
SLIDE 164

Where is John Francis?

Francis’s Algorithm – p. 30

slide-165
SLIDE 165

Where is John Francis?

question asked frequently by Gene Golub

Francis’s Algorithm – p. 30

slide-166
SLIDE 166

Where is John Francis?

question asked frequently by Gene Golub inquiries by Golub and Uhlig

Francis’s Algorithm – p. 30

slide-167
SLIDE 167

Where is John Francis?

question asked frequently by Gene Golub inquiries by Golub and Uhlig Francis is alive and well, retired in the South of England.

Francis’s Algorithm – p. 30

slide-168
SLIDE 168

Where is John Francis?

question asked frequently by Gene Golub inquiries by Golub and Uhlig Francis is alive and well, retired in the South of England. was unaware of the impact of his algorithm

Francis’s Algorithm – p. 30

slide-169
SLIDE 169

Where is John Francis?

question asked frequently by Gene Golub inquiries by Golub and Uhlig Francis is alive and well, retired in the South of England. was unaware of the impact of his algorithm appearance at the Biennial Numerical Analysis Conference in Glasgow in June of 2009

Francis’s Algorithm – p. 30

slide-170
SLIDE 170

John Francis speaking in Glasgow

Francis’s Algorithm – p. 31

slide-171
SLIDE 171

A Portion of the Audience

Francis’s Algorithm – p. 32

slide-172
SLIDE 172

Afterwards

Photos courtesy of Frank Uhlig

Francis’s Algorithm – p. 33