AMS526: Numerical Analysis I (Numerical Linear Algebra) Lecture 16: Rayleigh Quotient Iteration

AMS526: Numerical Analysis I (Numerical Linear Algebra) Lecture 16: Rayleigh Quotient Iteration

AMS526: Numerical Analysis I (Numerical Linear Algebra) Lecture 16: Rayleigh Quotient Iteration Xiangmin Jiao SUNY Stony Brook Xiangmin Jiao Numerical Analysis I 1 / 10 Solving Eigenvalue Problems All eigenvalue solvers must be iterative Iterative algorithms have multiple facets: 1 Basic idea behind the algorithms 2 Convergence and techniques to speed-up convergence 3 Efficiency of implementation 4 Termination criteria We will focus on first two aspects Xiangmin Jiao Numerical Analysis I 2 / 10 Simplification: Real Symmetric Matrices We will consider eigenvalue problems for real symmetric matrices, i.e. T m×m m A = A 2 R , and Ax = λx for x 2 R p ∗ T T I Note: x = x , and kxk = x x A has real eigenvalues λ1,λ2, ::: , λm and orthonormal eigenvectors q1, q2, ::: , qm, where kqj k = 1 Eigenvalues are often also ordered in a particular way (e.g., ordered from large to small in magnitude) In addition, we focus on symmetric tridiagonal form I Why? Because phase 1 of two-phase algorithm reduces matrix into tridiagonal form Xiangmin Jiao Numerical Analysis I 3 / 10 Rayleigh Quotient m The Rayleigh quotient of x 2 R is the scalar xT Ax r(x) = xT x For an eigenvector x, its Rayleigh quotient is r(x) = xT λx=xT x = λ, the corresponding eigenvalue of x For general x, r(x) = α that minimizes kAx − αxk2. 2 x is eigenvector of A() rr(x) = x T x (Ax − r(x)x) = 0 with x 6= 0 r(x) is smooth and rr(qj ) = 0 for any j, and therefore is quadratically accurate: 2 r(x) − r(qJ ) = O(kx − qJ k ) as x ! qJ for some J Xiangmin Jiao Numerical Analysis I 4 / 10 Power Iteration Simple power iteration for largest eigenvalue Algorithm: Power Iteration v (0) =some unit-length vector for k = 1; 2;::: w = Av (k−1) v (k) = w=kwk λ(k) = r(v (k)) = (v (k))T Av (k) Termination condition is omitted for simplicity Xiangmin Jiao Numerical Analysis I 5 / 10 Convergence of Power Iteration (0) k Expand initial v in orthonormal eigenvectors qi , and apply A : (0) v = a1q1 + a2q2 + ··· + amqm (k) k (0) v = ck A v k k k = ck (a1λ1 q1 + a2λ2 q2 + ··· + amλmqm) k k k = ck λ1 (a1q1 + a2(λ2/λ1) q2 + ··· + am(λm/λ1) qm) T (0) If jλ1j > jλ2j ≥ · · · ≥ jλmj ≥ 0 and q1 v 6= 0, this gives (k) k (k) 2k kv − (±q1)k = O jλ2/λ1j ; jλ − λ1j = O jλ2/λ1j T (k) where ± sign is chosen to be sign of q1 v It finds the largest eigenvalue (unless eigenvector is orthogonal to v (0)) Error reduces by only a constant factor (≈ jλ2/λ1j) each step, and very slowly especially when jλ2j ≈ jλ1j Xiangmin Jiao Numerical Analysis I 6 / 10 Inverse Iteration −1 −1 Apply power iteration on (A − µI ) , with eigenvalues f(λj − µ) g −1 If µ ≈ λJ for some J, then (λJ − µ) may be far larger than −1 (λj − µ) , j 6= J, so power iteration may converge rapidly Algorithm: Inverse Iteration v (0) =some unit-length vector for k = 1; 2;::: Solve (A − µI )w = v (k−1) for w v (k) = w=kwk λ(k) = r(v (k)) = (v (k))T Av (k) Converges to eigenvector qJ if parameter µ is close to λJ k ! 2k ! (k) µ − λJ (k) µ − λJ kv − (±qJ )k = O ; jλ − λJ j = O µ − λK µ − λK where λJ and λK are closest and second closest eigenvalues to µ Standard method for determining eigenvector given eigenvalue Xiangmin Jiao Numerical Analysis I 7 / 10 Rayleigh Quotient Iteration Parameter µ is constant in inverse iteration, but convergence is better for µ close to the eigenvalue Improvement: At each iteration, set µ to last computed Rayleigh quotient Algorithm: Rayleigh Quotient Iteration v (0) =some unit-length vector λ(0) = r(v (0)) = (v (0))T Av (0) for k = 1; 2;::: Solve (A − λ(k−1)I )w = v (k−1) for w v (k) = w=kwk λ(k) = r(v (k)) = (v (k))T Av (k) Cost per iteration is linear for tridiagonal matrix Xiangmin Jiao Numerical Analysis I 8 / 10 Convergence of Rayleigh Quotient Iteration Cubic convergence in Rayleigh quotient iteration (k+1) (k) 3 kv − (±qJ )k = O(kv − (±qJ )k ) and (k+1) (k) 3 jλ − λJ j = O jλ − λJ j In other words, each iteration triples number of digits of accuracy (k) (k) Proof idea: If v is close to an eigenvector, kv − (±qJ )k ≤ , then accuracy of Rayleigh quotient estimate λ(k) is (k) 2 jλ − λJ j = O( ). One step of inverse iteration then gives (k+1) (k) (k) 3 kv − qJ k = O(jλ − λJ jkv − qJ k) = O( ) Rayleigh quotient is great in finding largest (or smallest) eigenvalue and its corresponding eigenvector. What if we want to find all eigenvalues? Xiangmin Jiao Numerical Analysis I 9 / 10 Operation Counts In Rayleigh quotient iteration, m×m (k−1) if A 2 R is full matrix, then solving (A − µI )w = v may take O(m3) flops per step m×m 2 if A 2 R is upper Hessenberg, then each step takes O(m ) flops m×m if A 2 R is tridiagonal, then each step takes O(m) flops Xiangmin Jiao Numerical Analysis I 10 / 10.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    10 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us