Table of Contents
Fetching ...

The eigenvalue decomposition of normal matrices by the skew-symmetric part

Simon Mataigne, Kyle A. Gallivan

Abstract

We propose a new method for computing the eigenvalue decomposition of a dense real normal matrix $A$ through the decomposition of its skew-symmetric part. The method relies on algorithms that are known to be efficiently implemented, such as the bidiagonal singular value decomposition and the symmetric eigenvalue decomposition. The advantages of this method stand for normal matrices with few real eigenvalues, such as random orthogonal matrices. We provide a stability and a complexity analysis of the method. The numerical performance is compared with existing algorithms. In most cases, the method has the same operation count as the Hessenberg factorization of a dense matrix. Finally, we provide experiments for the application of computing a Riemannian barycenter on the special orthogonal group.

The eigenvalue decomposition of normal matrices by the skew-symmetric part

Abstract

We propose a new method for computing the eigenvalue decomposition of a dense real normal matrix through the decomposition of its skew-symmetric part. The method relies on algorithms that are known to be efficiently implemented, such as the bidiagonal singular value decomposition and the symmetric eigenvalue decomposition. The advantages of this method stand for normal matrices with few real eigenvalues, such as random orthogonal matrices. We provide a stability and a complexity analysis of the method. The numerical performance is compared with existing algorithms. In most cases, the method has the same operation count as the Hessenberg factorization of a dense matrix. Finally, we provide experiments for the application of computing a Riemannian barycenter on the special orthogonal group.

Paper Structure

This paper contains 35 sections, 17 theorems, 102 equations, 7 figures, 2 tables, 3 algorithms.

Key Result

Lemma 4

\newlabellem:oic_linearity1 For all pairs of matrices $A,B\in\mathbb{R}^{n\times n}$, we have

Figures (7)

  • Figure 1: Venn diagram of the sets $\mathrm{ig}\left( \left[D_m00D_m\right]\right)$, $\mathrm{ig}\left(\left[0-\sigma I_m\sigma I_m0\right]\right)$ and $\mathrm{ig}\left(\left[0-\Sigma_m\Sigma_m0\right]\right)$ where $D_m$ and $\Sigma_m$ are diagonal with non-zero diagonal entries and $\sigma> 0$.
  • Figure 2: Accuracy in double precision of \ref{['alg:schur_decomposition_floating']} (without any correction step 8) for $100\times 100$ orthogonal (left plot) and normal (right plot) matrices when the average phase of the eigenvalues varies from $\theta=0$ to $\theta=\frac{\pi}{2}$. The Schur vectors are sampled with Haar distribution on $\mathrm{O}(100)$. The eigenvalues of the matrices are sampled with phase uniformly distributed in $[\theta-\Delta\theta, \theta+\Delta\theta]$, with $\Delta\theta=0.005$. For normal matrices, the moduli of the eigenvalues are uniformly sampled in $[0, 2]$. Results are averaged over 50 runs. The accuracy follows the behavior predicted by \ref{['thm:accuracy']}.
  • Figure 3: Evolution of the accuracy in double precision of nrmschur (\ref{['alg:schur_decomposition_floating']}) without correction step 8. The matrix size $n$ varies from $10$ to $1000$. The plots shows results for experiments E1 to E4 from \ref{['sec:exp_accuracy']}. The results are averaged over 100 runs.
  • Figure 4: Top: Benchmark of nrmschur (\ref{['alg:schur_decomposition_floating']}) on Haar-distibuted matrices of $\mathrm{SO}(n)$ w.r.t. the Julia routines https://github.com/JuliaLang/julia/blob/master/stdlib/LinearAlgebra/src/schur.jl (LAPACK's https://www.netlib.org/lapack/explore-html/d5/d38/group__gees_gab48df0b5c60d7961190d868087f485bc.html) and https://github.com/JuliaLang/julia/blob/master/stdlib/LinearAlgebra/src/hessenberg.jl (LAPACK's https://www.netlib.org/lapack/explore-html/d2/d28/group__gehrd_ga74cea8f05a014cca243674999f71c238.html and https://www.netlib.org/lapack/explore-html/de/d26/group__unghr_gae1e32db855babbb134fd2a273aceed36.html). The performance of the UHQR algorithm for eigenvalues GRAGG19861 as well as a representative $\mathcal{O}(n^3)$ are also drawn. The plot shows experiments for $n\in\{10,32,100,316,1000,3162,10000\}$. Bottom: the same results are displayed but divided by the computational time of hessenberg.
  • Figure 5: Numerical experiments over $600\times 600$ random normal matrices with proportion $\alpha$ of real eigenvalues. For each value $\alpha$ ($\Delta \alpha=0.02$), 200 matrices are sampled. The Schur vectors are Haar-distributed on $\mathrm{O}(n)$, the real eigenvalues are normally distributed with unit variance and pairs of conjugate eigenvalues are sampled with uniformly distributed phases in $[0,\pi]$ and radii in $[0,2]$. The theoretical complexity from \ref{['eq:alpha_polynomial']} is represented by the dotted green line. The polynomial $\frac{8}{3}\alpha^3+5\alpha^2-\alpha +\frac{14}{3}$ is scaled by a constant factor to match the intercept ($\alpha=0$) of the numerical experiments.
  • ...and 2 more figures

Theorems & Definitions (41)

  • Remark 2
  • Definition 3
  • Lemma 4
  • Proof 1
  • Definition 5
  • Lemma 7
  • Proof 2
  • Lemma 8
  • Proof 3
  • Theorem 9
  • ...and 31 more