Download - Continuation of Sparse Eigendecompositions

Transcript
Page 1: Continuation of Sparse Eigendecompositions

Continuation of Sparse Eigendecompositions

D. Bindel

Courant Institute of Mathematical SciencesNew York University

CSE 07, 23 Feb 07

Page 2: Continuation of Sparse Eigendecompositions

Basic setting

Have a Ck function

A : [0, 1] → Rn×n

Want to compute eigenvectors v(s) and values λ(s) for A(s).More generally, want an invariant subspace basis V (s).

Applications:1. Resonant system design2. Bifurcation analysis

Page 3: Continuation of Sparse Eigendecompositions

Example: Cantilever tuning

−1 0 1 2 3 4 5 6 7

x 10−5

0

1

2

3

4

5

6

7

8x 10

−6

Page 4: Continuation of Sparse Eigendecompositions

Example: Cantilever tuning

10 20 30 40 50 60300

350

400

450

500

550

600

Voltage

Fre

quen

cy (

Hz)

Page 5: Continuation of Sparse Eigendecompositions

Example: Belousov-Zhabotinski reaction

www.pojman.com/NLCD-movies/NLCD-movies.html

Page 6: Continuation of Sparse Eigendecompositions

Reaction-diffusion models

∂u∂t

= D∇2u + F (u; s)

Describes many systems:I Chemical reactions (like the B-Z reaction)I Signals in nervesI Ecological systemsI Phase transitions

See Chemical Oscillations, Waves, and Turbulence (Kuramoto).

Page 7: Continuation of Sparse Eigendecompositions

Stability analysis

Linearize about an equilibrium branch u0(s):

∂tδu =

(D∇2 + Fu(u0(s); s)

)δu = A(s) δu

I Stable if eigenvalues of A(s) have negative real partI When stability changes, have a bifurcationI Complex eigs cross imaginary axis =⇒ oscillations,

a Hopf bifurcation

Page 8: Continuation of Sparse Eigendecompositions

Hopf bifurcation in the Brusselator

−5 −4 −3 −2 −1 0 1 2 3 4 5−2

−1.5

−1

−0.5

0

0.5

1

1.5

2L = 0.3

Page 9: Continuation of Sparse Eigendecompositions

Subspaces and stability analysis

I Diagnose stability from a small subspace (slow dynamics)I Idea: Continue invariant subspace along with the solutionI Problem: Switching subspacesI Problem: Missing information

Page 10: Continuation of Sparse Eigendecompositions

CIS algorithm

Compute a continuous block Schur form

Q(s)T A(s)Q(s) =

[T11(s) T12(s)

0 T22(s)

]Algorithm phases:

I InitializeI PredictI CorrectI NormalizeI Adapt

Page 11: Continuation of Sparse Eigendecompositions

Initialization

Λ1Λ2Λ3

-6 -4 -2 0-1

-0.5

0

0.5

1

I Compute rightmost part of the spectrumI Include all unstable eigenvalues + a few stable onesI Keep eigenvalue clusters together

(prevent artificially short steps)

Page 12: Continuation of Sparse Eigendecompositions

Prediction

Q1(sk−1)

Q1(sk−1)

Q1(sk) Qpred1 (sk+1)

Qpred1 (sk+1)

I Normalize to tangent plane:

Q1(s) = Q1(s)(

Q1(sk )T Q1(s))−1

I Predict Q1(sk+1) by polynomial fitting throughQ1(sk ), Q1(sk−1), . . ..

I Suggests projection space should include computedspaces from previous few steps.

Page 13: Continuation of Sparse Eigendecompositions

Correction

Solve the nonlinear equations

AQ1 −Q1T11 = 0(Qprev

1 )T Q1 − I = 0

I Linearization is a bordered Sylvester equationI Newton ≈ block RQ iterationI Modified Newton ≈ subspace iterationI Or extract from a Krylov subspace

Then normalize to minimize Frobenius change in Q1(s).

Page 14: Continuation of Sparse Eigendecompositions

Adaptation

May need to adjust space ifI Real parts of continued eigenvalues overlap the rest of the

spectrum (generic possibilities shown)I Eigenvalues cross imaginary axis (bifurcation)

Page 15: Continuation of Sparse Eigendecompositions

Testing continuity

How to ensure proposed basis spans the right subspace?I Check rate of Newton convergenceI Check angles between subspacesI Check distance between eigenvalues

Anything less heuristic?

Page 16: Continuation of Sparse Eigendecompositions

Perturbation approaches

A(s) Q1(s)

A(s) and Q1(s) trace some paths in matrix spaces.

Page 17: Continuation of Sparse Eigendecompositions

Perturbation approaches

A(s) Q1(s)

Can determine that if A(s) stays in some region, Q1(s) is welldefined and stays in some other region.

Page 18: Continuation of Sparse Eigendecompositions

Perturbation approaches

A(s) Y (s)

Can we test with smaller regions?

Page 19: Continuation of Sparse Eigendecompositions

Checking the subspace

Recall:

sep(B, C) = ‖S−1‖−1, where S(X ) = BX − XC

If for s ∈ [0, h],

sep(A11, A22)2 > 4‖A12‖‖A21‖

Then have a unique Ck invariant subspace associated with A11.

So if A21(0) = 0 then Q1(0) = [I; 0] extends to Q1(s)

Page 20: Continuation of Sparse Eigendecompositions

Checking the subspace

Have block Schur QT A(s)Q = T at sk and sk+1 = sk + h.

I Geodesic interpolation U(s) between Q(sk ) and Q(sk+1).I Similarity: T (s) = U(s)T A(s)U(s).

If θmax = largest angle between Q(sk ) and Q(sk+1),

‖ ˙T‖ ≤ 2θmax‖A‖+ ‖A‖.

Then get interpolation bounds:I sep(T11, T22) = O(1)

I T12 = O(1)

I T21 = O(h2)

Page 21: Continuation of Sparse Eigendecompositions

Checking the subspace

Check that for all s ∈ [0, h],

sep(T11, T22)2 > 4‖T12‖‖T21‖

So test based on:I Conditioning of subspace (spectral separation)I Measure of non-normality (‖T12‖)I Residual from interpolating (‖T21‖)

Page 22: Continuation of Sparse Eigendecompositions

Are we there yet?

Believe we can compute

Q(s)T A(s)Q(s) =

[T11(s) T12(s)

0 T22(s)

]What if the space isn’t rich enough (T22 unstable)?

Want conditions for T22 stable.I Do not want another nonsymmetric eigenproblemI Only need sufficient conditions

Use the fact that we expect rapid decay in most modes.

Page 23: Continuation of Sparse Eigendecompositions

Stability of T22

Recall: if u = T22u then

ddt‖u‖2 = 2uT T22u.

Define spectral abscissa

ω(T22) = maxv{vT T22v} = λmax(H(T22))

Finding ω(T22) is a symmetric exterior eigenvalue problem!=⇒ estimate with Lanczos.

Page 24: Continuation of Sparse Eigendecompositions

Bound applied to a 2D Brusselator

−5 −4 −3 −2 −1 0 1 2 3 4 5

−1.5

−1

−0.5

0

0.5

1

1.5

Page 25: Continuation of Sparse Eigendecompositions

Conclusions

I Continuing eigendecompositions is useful for resonatordesign and for bifurcation analysis

I Basic algorithm: predictor-corrector + Krylov subspacesI Tests to make sure computed subspace is good enoughI Ongoing software work (CL-MATCONT extension)