AA242B: MECHANICAL VIBRATIONS 1 / 18

AA242B: MECHANICAL VIBRATIONS Solution Methods for the Generalized Eigenvalue Problem

These slides are based on the recommended textbook: M. G´eradinand D. Rixen, “Mechanical Vibrations: Theory and Applications to Structural Dynamics,” Second Edition, Wiley, John & Sons, Incorporated, ISBN-13:9780471975465

1 / 18 AA242B: MECHANICAL VIBRATIONS 2 / 18

Outline

1 Eigenvector Iteration Methods

2 Subspace Construction Methods

2 / 18 AA242B: MECHANICAL VIBRATIONS 3 / 18 Eigenvector Iteration Methods Introduction

Generalized eigenvalue problem associated with an n-degree-of-freedom system

Kx = ω2Mx

n eigenvalues 2 2 2 0 ≤ ω1 ≤ ω2 ≤ · · · ≤ ωn and n associated eigenvectors

x1, x2, ··· , xn

3 / 18 AA242B: MECHANICAL VIBRATIONS 4 / 18 Eigenvector Iteration Methods Introduction Dynamic flexibility matrix consider a system that has no rigid-body modes ⇒ K is non-singular construct the dynamic flexibility matrix defined as D = K−1M the associated eigenvalue problem is 1 Kx = ω2Mx ⇒ Dx = λx with λ = ω2

eigenvectors are same as for the generalized eigenproblem Kx = ω2Mx eigenvalues are given by 1 λi = 2 ⇒ λ1 ≥ λ2 ≥ · · · ≥ λn ωi drawbacks of working with D building cost is O(n3) non- and as such must be stored completely these drawbacks can be dealt with (for example, see next the inverse iteration form of the algorithm)

4 / 18 AA242B: MECHANICAL VIBRATIONS 5 / 18 Eigenvector Iteration Methods The Power Algorithm Determination of the fundamental eigenmode an iterative solution to Dx = λx can be obtained by considering the iteration zp+1 = Dzp

proof: expand z0 in the basis of the eigenmodes of the system

n X z0 = αi xi i=1 Then, at the p-th iteration,

n n n  p ! p X p X p p X λi zp = D z0 = αi D xi = αi λi xi = λ1 α1x1 + αi xi λ1 i=1 i=1 i=2

Recall that λ1 ≥ λ2 ≥ · · · ≥ λn and assume that λ1 > λ2

p kzp+1k =⇒ zp → λ1 α1x1 ⇒ → λ1 as p → ∞ kzpk 2 =⇒ the power iteration algorithm converges to the lowest eigenvalue ω1

5 / 18 AA242B: MECHANICAL VIBRATIONS 6 / 18 Eigenvector Iteration Methods The Power Algorithm Convergence analysis of the power iteration algorithm p p ∀p, zp = λ1 x1 + λ2 x2 + ··· (recall that xi is defined up to a multiplicative constant)

T p+1 T p+1 T p+1 p+1 T z ej λ x ej + λ x ej + ··· λ (x1 + r x2 + ··· ) ej =⇒ p+1 = 1 1 2 2 = 1 T p T p T p p T zp ej λ1 x1 ej + λ2 x2 ej + ··· λ1 (x1 + r x2 + ··· ) ej p+1 T (x1 + r x2 + ··· ) e = λ j 1 p T (x1 + r x2 + ··· ) ej

λ2 where r = λ1 xT e define a = 2 j and assume that |λ | < |λ | ⇒ r < 1 j T 2 1 x1 ej

T p+1 z ej λ1(1 + a r + ··· ) λ = p+1 = j ≈ λ (1 + a r p+1)(1 + a r p )−1 1p T p p→∞ 1 j j zp ej 1 + aj r + ··· p  ≈p→∞ λ1 1 + aj r (r − 1)

number of iterations N after which λ1N is stabilized with t significant digits

λ1N+1 − λ1N −t N −t t ≤ 10 ⇒ aj r ≈ 10 ⇒ N ≈  λ1  λ1N log λ2 =⇒ N — and therefore the convergence rate of the power algorithm — depends only on the ratio of the first two eigenvalues

6 / 18 AA242B: MECHANICAL VIBRATIONS 7 / 18 Eigenvector Iteration Methods The Power Algorithm Determination of the higher modes by orthogonal deflation once x1 is determined, the following orthogonal projection operator 2 can be formed (orthogonal projection ⇔ P1 = P1 and Ker(P1) is M-orthogonal to span (P1)) T x1x1 M P1 = I − T (⇒ P1x1 = 0) x1 Mx1 next, the following starting vector can be constructed n ∗ X z0 = P1z0 = αi xi i=2

this vector does not have any component in the x1 “direction” ⇒ ? the power method equipped with the starting vector z0 converges in principle to (λ2, x2) in practice, the mode x1 reappears in the iterations because of roundoff errors; to remediate this issue, the following algorithm can be used instead  ∗ zp = P1zp ∗ zp+1 = Dzp this approach can be generalized to extract higher modes 7 / 18 AA242B: MECHANICAL VIBRATIONS 8 / 18 Eigenvector Iteration Methods The Power Algorithm

Alternatively, one can construct a power iteration algorithm based on

D = M−1K

in which case the associated eigenvalue problem is

Kx = ω2Mx ⇒ Dx = ω2x

the eigenvectors and eigenvalues of this problem are the same as for the generalized eigenproblem Kx = ω2Mx the eigenvalues can be sorted and labeled as follows

2 2 2 ω1 ≤ ω2 ≤ · · · ≤ ωn

2 the power iteration algorithm converges to ωn – that is, to the highest eigenvalue the drawbacks of working with D are identical to those of working with D and can be dealt with in a similar way

8 / 18 AA242B: MECHANICAL VIBRATIONS 9 / 18 Eigenvector Iteration Methods The Inverse Iteration Method

Problem: it is not desirable to construct the dynamical matrix D = K−1M (or D = M−1K) at the base of the power iteration algorithm Solution: power iteration approach using the more computationally −1 efficient iterate zp+1 = K (Mzp), which can be organized in two steps as follows  yp = Mzp Kzp+1 = yp

incurs the solution of an algebraic problem of the form

Kq = g factorization-based algorithm 1 factorization of K (once) 2 forward and backward backward substitutions (repeated) Recall that convergence to the highest λ is convergence to the 1 lowest ω2 (λ = ) ω2

9 / 18 AA242B: MECHANICAL VIBRATIONS 10 / 18 Eigenvector Iteration Methods Inverse Iteration with Spectral Shifting

Spectral shifting (by µ) of the eigenvalue problem 1 (K − µM)x = (ω2 − µ)Mx ⇒ (K − µM)−1Mx = x ω2 − µ

associated inverse iteration scheme  yp = Mzp (K − µM)zp+1 = yp iterations n n n p X X  −1  X αi z = α x ⇒ z = α (K − µM) M x = x 0 i i p i i (ω2 − µ)p i i=1 i=1 i=1 i

2 converge toward the eigenmode xr whose associated eigenvalue ωr satisfies 2 n 2 o |ωr − µ| = min |ωj − µ| j and therefore is closest to µ, and this convergence accelerates as µ 2 approaches ωr

10 / 18 AA242B: MECHANICAL VIBRATIONS 11 / 18 Subspace Construction Methods The Subspace Iteration Method

The subspace concept let X denote the M-normalized solution of the generalized eigenvalue problem Kx = ω2Mx

T T 2 2 X MX = In, X KX = Λ = diag(ω1 , ··· , ωn)

then span(X) = E of dimension n consider the first m  n eigenmodes

?   n×m X = x1 ··· xm ∈ R

? ? ? span(X ) = E of dimension m; E ⊂ E m property 1: ∀a ∈ R ? ? z = X a ∈ E m×m property 2: if A ∈ R and det(A) 6= 0 span(X?A) = span(X?)

11 / 18 AA242B: MECHANICAL VIBRATIONS 12 / 18 Subspace Construction Methods The Subspace Iteration Method

Interaction problem ? ? once any set Z of m  n linearly independent vectors in E is ? n×m found (Z ∈ R ) the first m eigensolutions are determined by forming and solving the reduced eigenproblem K?y = ω2M?y ? ?T ? m×m ? ?T ? m×m where K = Z KZ ∈ R and M = Z MZ ∈ R   m×m the matrix Y = y1 ··· ym ∈ R is assembled ? ? n×m the matrix X = Z Y ∈ R , which has the same span as the matrix Z?, is constructed

12 / 18 AA242B: MECHANICAL VIBRATIONS 13 / 18 Subspace Construction Methods The Subspace Iteration Method

Using the inverse iteration algorithm, the subspace method n×m generates a sequence of matrices Z0, Z1, ··· , Zk ∈ R spanning ? ? ? the subspaces E0, E1, ··· , Ek that converge toward ? ? ? E∞ = E = span(X ) ( on the Grassmann manifold G(m, n)) Algorithm iteration kernel  Vk = MZk KZk+1 = Vk ? aim is convergence toward E of the subspace as a whole, and not of the individual vectors in Zk to make sure that the reduced-order bases Zi span subspaces of dimension m, orthogonality of the column vectors is ensured by one of two ways Gram-Schmidt orthogonalization re-orthogonalization with respect to the M-induced norm

13 / 18 AA242B: MECHANICAL VIBRATIONS 14 / 18 Subspace Construction Methods The Subspace Iteration Method

Convergence analysis

the subspaces spanned by the matrices Zk converge toward the ? subspace spanned by X , provided that Z0 is not orthogonal to any of the first m eigenvectors global convergence of the subspace iteration algorithm guarantees ? ? that subspace Ek ⊂ E converges toward E k the convergence rate toward each mode xj is of the order of O(rj ) where 2 ωj rj = 2 ωm+1 2 measures the ratio of the eigenvalue ωj and that which is ? immediately outside the subspace E . This indicates that a higher convergence rate is obtained by using q > m iteration vectors (which increases computational cost however). A practical trade-off suggests to use q = min(2m, m + 8). considering the convergence rate mentioned above, multiple eigenvalues do not decrease the rate of convergence provided that 2 2 ωq+1 > ωm

14 / 18 AA242B: MECHANICAL VIBRATIONS 15 / 18 Subspace Construction Methods The Lanczos Method

Principle of the method generate a subspace that includes the fundamental eigensolutions by applying the inverse iteration algorithm to a starting vector z0 construct the following Krylov sequence

 2  −1  −1  z0, K Mz0, K M z0, ···

orthogonalize the terms of the sequence Properties (for the basic form of the algorithm) the search subspace is built column by column: its dimension is increased at each iteration fast convergence however, orthonormality rapidly deteriorates (and re-orthogonalization procedures can be computationally expensive) inability to detect multiple eigenvalues

15 / 18 AA242B: MECHANICAL VIBRATIONS 16 / 18 Subspace Construction Methods The Lanczos Method

Algorithm iteration −1 γp+1xp+1 = K Mxp − αpxp − βp−1xp−1

where βp−1, αp, γp+1 are determined such that

 T xp+1Mxj = 0 j < p + 1 T xp+1Mxp+1 = 1 requiring M-orthogonality leads to

 T −1 αp = xp MK Mxp  T −1 βp−1 = xp MK Mxp−1  γp = βp−1

  n×p the reduced-order basis X = x0 ··· xp ∈ R satisfies

−1   T K MX = XT + S = 0 ··· 0 γp+1xp+1 = γp+1xp+1ep where T =       tridiag γ1 ··· γp , α0 ··· αp , γ1 ··· γp

16 / 18 AA242B: MECHANICAL VIBRATIONS 17 / 18 Subspace Construction Methods The Lanczos Method

Interaction problem start with K−1MX = XT + S premultiply by YT = (MX)T associated to the Lanczos vectors X note that YT S = 0

⇒ YT K−1MX = YT XT = T

hence, the of the Lanczos coefficients results from the projection of D = K−1M onto the subspace of Lanczos vectors X. Thus, it has the same eigenvalues as the projection of D onto the reduced-order basis X.

17 / 18 AA242B: MECHANICAL VIBRATIONS 18 / 18 Subspace Construction Methods The Lanczos Method

Difficulties for basic form of the Lanczos method deterioration of the orthogonalization process detection of multiple eigenvalues appearance of parasitic solutions missing eigensolutions

18 / 18