Parallel Reduction from Block Hessenberg to Hessenberg Using MPI

Total Page:16

File Type:pdf, Size:1020Kb

Parallel Reduction from Block Hessenberg to Hessenberg Using MPI Parallel Reduction from Block Hessenberg to Hessenberg using MPI Viktor Jonsson May 24, 2013 Master's Thesis in Computing Science, 30 credits Supervisor at CS-UmU: Lars Karlsson Examiner: Fredrik Georgsson Ume˚a University Department of Computing Science SE-901 87 UMEA˚ SWEDEN Abstract In many scientific applications, eigenvalues of a matrix have to be computed. By first reducing a matrix from fully dense to Hessenberg form, eigenvalue computations with the QR algorithm become more efficient. Previous work on shared memory architectures has shown that the Hessenberg reduction is in some cases most efficient when performed in two stages: First reduce the matrix to block Hessenberg form, then reduce the block Hessen- berg matrix to true Hessenberg form. This Thesis concerns the adaptation of an existing parallel reduction algorithm implementing the second stage to a distributed memory ar- chitecture. Two algorithms were designed using the Message Passing Interface (MPI) for communication between processes. The algorithms have been evaluated by an analyze of trace and run-times for different problem sizes and processes. Results show that the two adaptations are not efficient compared to a shared memory algorithm, but possibilities for further improvement have been identified. We found that an uneven distribution of work, a large sequential part, and significant communication overhead are the main bottlenecks in the distributed algorithms. Suggested further improvements are dynamic load balancing, sequential computation overlap, and hidden communication. ii Contents 1 Introduction 1 1.1 Memory Hierarchies . 1 1.2 Parallel Systems . 2 1.3 Linear Algebra . 3 1.4 Hessenberg Reduction Algorithms . 4 1.5 Problem statement . 6 2 Methods 7 2.1 Question 1 . 7 2.2 Questions 2 and 3 . 7 2.3 Question 4 . 7 3 Literature Review 9 3.1 Householder reflections . 9 3.2 Givens Rotations . 11 3.3 Hessenberg reduction algorithm . 11 3.4 WY Representation . 12 3.5 Blocking and Data Distribution . 14 3.6 Block Reduction . 15 3.7 Parallel blocked algorithm . 16 3.7.1 QR Phase . 18 3.7.2 Givens Phase . 18 3.8 Successive Band Reduction . 19 3.9 Two-staged algorithm . 21 3.9.1 Stage 1 . 21 3.9.2 Stage 2 . 22 3.10 MPI Functions . 24 3.11 Storage . 25 4 Results 27 4.1 Root-Scatter algorithm . 27 iii iv CONTENTS 4.2 DistBlocks algorithm . 29 4.3 Performance . 29 5 Conclusions 35 5.1 Future work . 35 6 Acknowledgements 37 References 39 Chapter 1 Introduction This chapter is an introduction to topics in matrix computations and parallel systems that are related to this Thesis. 1.1 Memory Hierarchies The hierarchy of memory inside a computer has changed the way efficient algorithms are designed. Central processing unit (CPU) caches exploits temporal and spatial locality. Data that have been used recently (temporal locality) and data that are close, in memory, to recently used data (spatial locality) have shorter access time. Figure 1.1 illustrates a common memory architecture for modern computers. Fast and small memory is located close to the CPU. Memory reference m is accessed from the slow and large RAM and loaded into fast cache memory, along with data located in the same cache line (typically 64{128B) as m. If a subsequent memory access is to m or data nearby m, it will be satisfied from the fast cache memory unless the corresponding cache line has been evicted. To avoid costly memory communication, many efficient algorithms are designed for data reuse. By often reusing data that has been brought into the cache, an algorithm will be able to amortize the high cost of the initial main memory communication. Figure 1.1: Memory hierarchy of many uni-core modern computers. The CPU works on small and fast registers. These registers are loaded with data from RAM. Data is cached in the fast L1, L2, and L3 caches. If the data stays in cache, access time will be shorter the next time data is accessed. Basic Linear Algebra Subprograms (BLAS), is a standard interface for linear algebra operations. BLAS Level 1 and 2 operations (see Figure 1.2(a) and 1.2(b) for examples) fea- ture little data reuse and are therefore bounded by the memory bandwidth. Data reuse and 1 2 Chapter 1. Introduction locality are very important in order to achieve efficiency on modern computer architectures. BLAS Level 3 operations involve many more arithmetic operations than data accesses. For example, a matrix-matrix multiplication (see Figure 1.2(c)) involves O(n3) arithmetic oper- ations and O(n2) data, for matrices of order n. The amount of data reuse is high for Level 3 operations. Many modern linear algebra algorithms try to minimize the amount of Level 1 (see Figure 1.2(a)) and 2 operations and maximize the amount of Level 3 operations [3]. (a) BLAS level 1, (b) BLAS level (c) BLAS level 3, matrix- vector-vector. 2, vector- matrix. matrix/matrix- vector. Figure 1.2: Types of BLAS operations, exemplified with matrix/vector multiplication. 1.2 Parallel Systems There are two main types of system architectures used for parallel computations. The first one is the shared memory architecture (SM). SM is a computer architecture, where all processing nodes share the same memory space. Figure 1.3 illustrates a shared memory architecture with four processing nodes. All processing nodes can make computations on the same memory and this requires each node to have access to the memory. Figure 1.3: Shared memory architecture. Processing nodes P0 to P3 share the same memory space. The second type of architecture is the distributed memory architecture (DM). DM is an architecture where the processing nodes do not share the same memory space. In a DM, the nodes work on local memory and communicate with other nodes through an interconnection network. Figure 1.4 illustrates a distributed memory architecture with four processing nodes, each with its own local memory. Designing an algorithm for distributed memory has the advantage that the algorithm could scale to larger problems than an analogous SM algorithm. The reason for this is that SM is bound to its shared memory performance and capacity. A disadvantage with designing an algorithm for a DM is communication, which needs to be done explicitly through message passing. Communication in a DM is often costly and algorithms designed for this type of architecture have to avoid excessive communication. DM also has the property of explicit 1.3. Linear Algebra 3 Figure 1.4: Distributed memory architecture. Processing nodes P0 to P3 have separate memory space and they interact through the interconnection network. data distribution. Explicit data distribution can be difficult to utilize in some problems, but when the data is distributed, the programmer does not have to deal with race conditions. Memory is scalable in a DM system. When more processes are added, the total memory size is increasing. Local memory can be accessed efficient in the processes of the DM system, without interference from other processes. Another advantage with systems based on DM is economy: They can be built using low-price computers, connected through a cheap network. MPI is a large set of operations that are based on message passing. Message passing is the de facto standard way of working with a DM. Memory is not shared between processes and interaction is done by explicitly passing messages. 1.3 Linear Algebra The subjects linear algebra and matrix computations contain many terms. The ones related to this Thesis are described in this section. A square matrix is a matrix A 2 Rm×n with the same number of rows as columns n = m. The main diagonal of A is all elements aij, where i = j ([a11; a22; : : : ; ann]) and a symmetric matrix is a matrix A where aij = aji for any element aij. One type of a square matrix is the triangular matrix, which has all elements below (upper triangular) or above (lower triangular) the main diagonal equal to zero. An (upper/lower) Hessenberg matrix is a (upper/lower) triangular matrix with an extra subdiagonal (upper Hessenberg) or superdiagonal (lower Hessenberg). Eigenvalue λ is defined as Ax = λx, where x is a non-zero eigenvector. The two variants of a Hessenberg matrix are illustrated in Figure 1.5. By reducing full matrices to Hessenberg matrices, some matrix computations require less computational effort. The most important scientific application of Hessenberg reductions is the QR algorithm for finding eigenvalues of a non-symmetric matrix. 0 2 2 7 0 1 0 2 7 0 0 1 B 2 8 3 2 C B 2 8 4 0 C B C B C @ 0 7 5 6 A @ 1 8 5 1 A 0 0 5 9 7 2 7 9 (a) Upper Hessen- (b) Lower Hessen- berg. berg. Figure 1.5: Examples of Hessenberg Matrices. 4 Chapter 1. Introduction Hessenberg reduction is the process of transforming a full matrix to Hessenberg form by means of an (orthogonal) similarity transformation H = QT AQ; where Q is an orthogonal matrix. Orthogonal matrices are invertible, with their inverse being the transpose (Q−1 = QT , for an orthogonal matrix Q). A similarity transformation A 7! P −1AP is a transformation where a square matrix A is multiplied from left with P −1 and right with P , for an invertible matrix P . A similarity transformation preserves the eigenvalues of A [8, (p.312)]. Let B = P −1AP be a similarity transformation of A, then B = P −1AP , PB = AP , P BP −1 = A; which can be substituted in the definition of eigenvalues: Ax = λx , P BP −1x = λx (substitute A) , BP −1x = P −1λx (multiply with P −1) , B(P −1x) = λ(P −1x) (factor out vector P −1x): This shows that if λ is an eigenvalue of A corresponding to an eigenvector x, then λ is also an eigenvalue of B corresponding to an eigenvector P −1x.
Recommended publications
  • QR Decomposition: History and Its Applications
    Mathematics & Statistics Auburn University, Alabama, USA QR History Dec 17, 2010 Asymptotic result QR iteration QR decomposition: History and its EE Applications Home Page Title Page Tin-Yau Tam èèèUUUÎÎÎ JJ II J I Page 1 of 37 Æâ§w Go Back fÆêÆÆÆ Full Screen Close email: [email protected] Website: www.auburn.edu/∼tamtiny Quit 1. QR decomposition Recall the QR decomposition of A ∈ GLn(C): QR A = QR History Asymptotic result QR iteration where Q ∈ GLn(C) is unitary and R ∈ GLn(C) is upper ∆ with positive EE diagonal entries. Such decomposition is unique. Set Home Page a(A) := diag (r11, . , rnn) Title Page where A is written in column form JJ II J I A = (a1| · · · |an) Page 2 of 37 Go Back Geometric interpretation of a(A): Full Screen rii is the distance (w.r.t. 2-norm) between ai and span {a1, . , ai−1}, Close i = 2, . , n. Quit Example: 12 −51 4 6/7 −69/175 −58/175 14 21 −14 6 167 −68 = 3/7 158/175 6/175 0 175 −70 . QR −4 24 −41 −2/7 6/35 −33/35 0 0 35 History Asymptotic result QR iteration EE • QR decomposition is the matrix version of the Gram-Schmidt orthonor- Home Page malization process. Title Page JJ II • QR decomposition can be extended to rectangular matrices, i.e., if A ∈ J I m×n with m ≥ n (tall matrix) and full rank, then C Page 3 of 37 A = QR Go Back Full Screen where Q ∈ Cm×n has orthonormal columns and R ∈ Cn×n is upper ∆ Close with positive “diagonal” entries.
    [Show full text]
  • (Hessenberg) Eigenvalue-Eigenmatrix Relations∗
    (HESSENBERG) EIGENVALUE-EIGENMATRIX RELATIONS∗ JENS-PETER M. ZEMKE† Abstract. Explicit relations between eigenvalues, eigenmatrix entries and matrix elements are derived. First, a general, theoretical result based on the Taylor expansion of the adjugate of zI − A on the one hand and explicit knowledge of the Jordan decomposition on the other hand is proven. This result forms the basis for several, more practical and enlightening results tailored to non-derogatory, diagonalizable and normal matrices, respectively. Finally, inherent properties of (upper) Hessenberg, resp. tridiagonal matrix structure are utilized to construct computable relations between eigenvalues, eigenvector components, eigenvalues of principal submatrices and products of lower diagonal elements. Key words. Algebraic eigenvalue problem, eigenvalue-eigenmatrix relations, Jordan normal form, adjugate, principal submatrices, Hessenberg matrices, eigenvector components AMS subject classifications. 15A18 (primary), 15A24, 15A15, 15A57 1. Introduction. Eigenvalues and eigenvectors are defined using the relations Av = vλ and V −1AV = J. (1.1) We speak of a partial eigenvalue problem, when for a given matrix A ∈ Cn×n we seek scalar λ ∈ C and a corresponding nonzero vector v ∈ Cn. The scalar λ is called the eigenvalue and the corresponding vector v is called the eigenvector. We speak of the full or algebraic eigenvalue problem, when for a given matrix A ∈ Cn×n we seek its Jordan normal form J ∈ Cn×n and a corresponding (not necessarily unique) eigenmatrix V ∈ Cn×n. Apart from these constitutional relations, for some classes of structured matrices several more intriguing relations between components of eigenvectors, matrix entries and eigenvalues are known. For example, consider the so-called Jacobi matrices.
    [Show full text]
  • Etna the Block Hessenberg Process for Matrix
    Electronic Transactions on Numerical Analysis. Volume 46, pp. 460–473, 2017. ETNA Kent State University and c Copyright 2017, Kent State University. Johann Radon Institute (RICAM) ISSN 1068–9613. THE BLOCK HESSENBERG PROCESS FOR MATRIX EQUATIONS∗ M. ADDAMy, M. HEYOUNIy, AND H. SADOKz Abstract. In the present paper, we first introduce a block variant of the Hessenberg process and discuss its properties. Then, we show how to apply the block Hessenberg process in order to solve linear systems with multiple right-hand sides. More precisely, we define the block CMRH method for solving linear systems that share the same coefficient matrix. We also show how to apply this process for solving discrete Sylvester matrix equations. Finally, numerical comparisons are provided in order to compare the proposed new algorithms with other existing methods. Key words. Block Krylov subspace methods, Hessenberg process, Arnoldi process, CMRH, GMRES, low-rank matrix equations. AMS subject classifications. 65F10, 65F30 1. Introduction. In this work, we are first interested in solving s systems of linear equations with the same coefficient matrix and different right-hand sides of the form (1.1) A x(i) = y(i); 1 ≤ i ≤ s; where A is a large and sparse n × n real matrix, y(i) is a real column vector of length n, and s n. Such linear systems arise in numerous applications in computational science and engineering such as wave propagation phenomena, quantum chromodynamics, and dynamics of structures [5, 9, 36, 39]. When n is small, it is well known that the solution of (1.1) can be computed by a direct method such as LU or Cholesky factorization.
    [Show full text]
  • Computing the Jordan Structure of an Eigenvalue∗
    SIAM J. MATRIX ANAL.APPL. c 2017 Society for Industrial and Applied Mathematics Vol. 38, No. 3, pp. 949{966 COMPUTING THE JORDAN STRUCTURE OF AN EIGENVALUE∗ NICOLA MASTRONARDIy AND PAUL VAN DOORENz Abstract. In this paper we revisit the problem of finding an orthogonal similarity transformation that puts an n × n matrix A in a block upper-triangular form that reveals its Jordan structure at a particular eigenvalue λ0. The obtained form in fact reveals the dimensions of the null spaces of i (A − λ0I) at that eigenvalue via the sizes of the leading diagonal blocks, and from this the Jordan structure at λ0 is then easily recovered. The method starts from a Hessenberg form that already reveals several properties of the Jordan structure of A. It then updates the Hessenberg form in an efficient way to transform it to a block-triangular form in O(mn2) floating point operations, where m is the total multiplicity of the eigenvalue. The method only uses orthogonal transformations and is backward stable. We illustrate the method with a number of numerical examples. Key words. Jordan structure, staircase form, Hessenberg form AMS subject classifications. 65F15, 65F25 DOI. 10.1137/16M1083098 1. Introduction. Finding the eigenvalues and their corresponding Jordan struc- ture of a matrix A is one of the most studied problems in numerical linear algebra. This structure plays an important role in the solution of explicit differential equations, which can be modeled as n×n (1.1) λx(t) = Ax(t); x(0) = x0;A 2 R ; where λ stands for the differential operator.
    [Show full text]
  • 11.5 Reduction of a General Matrix to Hessenberg Form
    482 Chapter 11. Eigensystems is equivalent to the 2n 2n real problem × A B u u − =λ (11.4.2) BA·v v T T Note that the 2n 2n matrix in (11.4.2) is symmetric: A = A and B = B visit website http://www.nr.com or call 1-800-872-7423 (North America only),or send email to [email protected] (outside North America). readable files (including this one) to any servercomputer, is strictly prohibited. To order Numerical Recipes books,diskettes, or CDROMs Permission is granted for internet users to make one paper copy their own personal use. Further reproduction, or any copying of machine- Copyright (C) 1988-1992 by Cambridge University Press.Programs Numerical Recipes Software. Sample page from NUMERICAL RECIPES IN C: THE ART OF SCIENTIFIC COMPUTING (ISBN 0-521-43108-5) if C is Hermitian.× − Corresponding to a given eigenvalue λ, the vector v (11.4.3) −u is also an eigenvector, as you can verify by writing out the two matrix equa- tions implied by (11.4.2). Thus if λ1,λ2,...,λn are the eigenvalues of C, then the 2n eigenvalues of the augmented problem (11.4.2) are λ1,λ1,λ2,λ2,..., λn,λn; each, in other words, is repeated twice. The eigenvectors are pairs of the form u + iv and i(u + iv); that is, they are the same up to an inessential phase. Thus we solve the augmented problem (11.4.2), and choose one eigenvalue and eigenvector from each pair. These give the eigenvalues and eigenvectors of the original matrix C.
    [Show full text]
  • Generalized Hessenberg Matricesୋ Miroslav Fiedler a ,∗,Zdenekˇ Vavrínˇ B Aacademy of Sciences of the Czech Republic, Institute of Computer Science, Pod Vodáren
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector Linear Algebra and its Applications 380 (2004) 95–105 www.elsevier.com/locate/laa Generalized Hessenberg matricesୋ Miroslav Fiedler a ,∗,Zdenekˇ Vavrínˇ b aAcademy of Sciences of the Czech Republic, Institute of Computer Science, Pod vodáren. vˇeží 2, 182 07 Praha 8, Czech Republic bAcademy of Sciences of the Czech Republic, Mathematics Institute, Žitná 25, 115 67 Praha 1, Czech Republic Received 10 December 2001; accepted 31 January 2003 Submitted by R. Nabben Abstract We define and study generalized Hessenberg matrices, i.e. square matrices which have subdiagonal rank one. Here, subdiagonal rank means the maximum order of a nonsingular submatrix all of whose entries are in the subdiagonal part. We prove that the property of being generalized Hessenberg matrix is preserved by post- and premultiplication by a nonsingular upper triangular matrix, by inversion (for invertible matrices), etc. We also study a special kind of generalized Hessenberg matrices. © 2003 Elsevier Inc. All rights reserved. AMS classification: 15A23; 15A33 Keywords: Hessenberg matrix; Structure rank; Subdiagonal rank 1. Introduction As is well known, Hessenberg matrices are square matrices which have zero en- tries in the lower triangular part below the second diagonal. Formally, for a matrix A = (aik), aik = 0 whenever i>k+ 1. These matrices occur e.g. in numerical linear algebra as a result of an orthogo- nal transformation of a matrix using Givens or Householder transformations when solving the eigenvalue problem for a general matrix. ୋ Research supported by grant A1030003.
    [Show full text]
  • Matrix Theory
    Matrix Theory Xingzhi Zhan +VEHYEXI7XYHMIW MR1EXLIQEXMGW :SPYQI %QIVMGER1EXLIQEXMGEP7SGMIX] Matrix Theory https://doi.org/10.1090//gsm/147 Matrix Theory Xingzhi Zhan Graduate Studies in Mathematics Volume 147 American Mathematical Society Providence, Rhode Island EDITORIAL COMMITTEE David Cox (Chair) Daniel S. Freed Rafe Mazzeo Gigliola Staffilani 2010 Mathematics Subject Classification. Primary 15-01, 15A18, 15A21, 15A60, 15A83, 15A99, 15B35, 05B20, 47A63. For additional information and updates on this book, visit www.ams.org/bookpages/gsm-147 Library of Congress Cataloging-in-Publication Data Zhan, Xingzhi, 1965– Matrix theory / Xingzhi Zhan. pages cm — (Graduate studies in mathematics ; volume 147) Includes bibliographical references and index. ISBN 978-0-8218-9491-0 (alk. paper) 1. Matrices. 2. Algebras, Linear. I. Title. QA188.Z43 2013 512.9434—dc23 2013001353 Copying and reprinting. Individual readers of this publication, and nonprofit libraries acting for them, are permitted to make fair use of the material, such as to copy a chapter for use in teaching or research. Permission is granted to quote brief passages from this publication in reviews, provided the customary acknowledgment of the source is given. Republication, systematic copying, or multiple reproduction of any material in this publication is permitted only under license from the American Mathematical Society. Requests for such permission should be addressed to the Acquisitions Department, American Mathematical Society, 201 Charles Street, Providence, Rhode Island 02904-2294 USA. Requests can also be made by e-mail to [email protected]. c 2013 by the American Mathematical Society. All rights reserved. The American Mathematical Society retains all rights except those granted to the United States Government.
    [Show full text]
  • Section 6.3: the QR Algorithm
    Section 6.3: The QR Algorithm Jim Lambers March 29, 2021 • The QR Iteration A = QR, A = RQ = QT AQ is our first attempt at an algorithm that computes all of the eigenvalues of a general square matrix. • While it will accomplish this task in most cases, it is far from a practical algorithm. • In this section, we use the QR Iteration as a starting point for a much more efficient algorithm, known as the QR Algorithm. • This algorithm, developed by John Francis in 1959 (and independently by Vera Kublanovskya in 1961), was named one of the \Top Ten Algorithms of the [20th] Century". The Real Schur Form n×n • Let A 2 R . A may have complex eigenvalues, which must occur in complex-conjugate pairs. • It is preferable that complex arithmetic be avoided when using QR Iteration to obtain the Schur Decomposition of A. T • However, in the algorithm for QR Iteration, if the matrix Q0 used to compute T0 = Q0 AQ0 is real, then every matrix Tk generated by the iteration will also be real, so it will not be possible to obtain the Schur Decomposition. • We compromise by instead seeking the Real Schur Decomposition A = QT QT where Q is a real, orthogonal matrix and T is a real, quasi-upper triangular matrix that has a block upper triangular structure 2 3 T11 T12 ··· T1p 6 .. 7 6 0 T22 . 7 T = 6 7 ; 6 .. .. 7 4 0 . 5 0 0 0 Tpp where each diagonal block Tii is 1 × 1, corresponding to a real eigenvalue, or a 2 × 2 block, corresponding to a pair of complex eigenvalues that are conjugates of one another.
    [Show full text]
  • Numerical Linear Algebra
    University of Alabama at Birmingham Department of Mathematics Numerical Linear Algebra Lecture Notes for MA 660 (1997{2014) Dr Nikolai Chernov Summer 2014 Contents 0. Review of Linear Algebra 1 0.1 Matrices and vectors . 1 0.2 Product of a matrix and a vector . 1 0.3 Matrix as a linear transformation . 2 0.4 Range and rank of a matrix . 2 0.5 Kernel (nullspace) of a matrix . 2 0.6 Surjective/injective/bijective transformations . 2 0.7 Square matrices and inverse of a matrix . 3 0.8 Upper and lower triangular matrices . 3 0.9 Eigenvalues and eigenvectors . 4 0.10 Eigenvalues of real matrices . 4 0.11 Diagonalizable matrices . 5 0.12 Trace . 5 0.13 Transpose of a matrix . 6 0.14 Conjugate transpose of a matrix . 6 0.15 Convention on the use of conjugate transpose . 6 1. Norms and Inner Products 7 1.1 Norms . 7 1.2 1-norm, 2-norm, and 1-norm . 7 1.3 Unit vectors, normalization . 8 1.4 Unit sphere, unit ball . 8 1.5 Images of unit spheres . 8 1.6 Frobenius norm . 8 1.7 Induced matrix norms . 9 1.8 Computation of kAk1, kAk2, and kAk1 .................... 9 1.9 Inequalities for induced matrix norms . 9 1.10 Inner products . 10 1.11 Standard inner product . 10 1.12 Cauchy-Schwarz inequality . 11 1.13 Induced norms . 12 1.14 Polarization identity . 12 1.15 Orthogonal vectors . 12 1.16 Pythagorean theorem . 12 1.17 Orthogonality and linear independence . 12 1.18 Orthonormal sets of vectors .
    [Show full text]
  • Lecture Notes on Numerical Methods for Eigenvalues: Part III
    Lecture Notes on Numerical Methods for Eigenvalues: Part III Jiangguo (James) Liu ∗ May 4, 2020 This part discusses some advanced numerical methods for eigenvalues. We shall first discuss numerical eigensolvers for general matrices, then study numerical eigensolvers for symmetric (Hermitian) matrices. 1 Upper Hessenberg Form Recall that the general Schur canonical form is an upper triangular matrix, whereas a real Schur canonical form allows 2 × 2 blocks on its diagonal. To unify them, we consider the upper Hessenberg form. Definition (Upper Hessenberg form). A matrix H = [hij]n×n is called in the upper Hessenberg form provided that hi;j = 0 if i > j + 1. That is, its 1st sub-diagonal entries are allowed to be nonzero. Example. The matrix Tn obtained from finite difference discretization for the 1-dim Poisson boundary value problem with a homogeneous Dirichlet condition is actually in the upper Hessenberg form. 2 2 −1 0 0 ··· 0 0 3 6 −1 2 −1 0 ··· 0 0 7 6 7 6 0 −1 2 −1 ··· 0 0 7 Tn = 6 7 : 6 ····················· 7 6 7 4 0 0 0 0 ··· 2 −1 5 0 0 0 0 · · · −1 2 Actually it is also a symmetric tri-diagonal matrix. Definition (Unreduced upper Hessenberg form). An upper Hessenberg form is called unreduced provided that all the entries in its 1st sub-diagonal are nonzero. Note that if an upper Hessenberg form H is not unreduced simply because of hj+1;j = 0, then we can decompose it into two unreduced upper Hessenberg matrices by considering H1 = H(1 : j; 1 : j) and H2 = H((j + 1) : n; (j + 1) : n).
    [Show full text]
  • NEUTRALLY STABLE FIXED POINTS of the QR ALGORITHM 1. Background QR Iteration Is the Standard Method for Computing the Eigenvalue
    INTERNATIONAL JOURNAL OF °c 0000 (copyright holder)Institute for Scientific NUMERICAL ANALYSIS AND MODELING Computing and Information Volume 00, Number 0, Pages 000–000 NEUTRALLY STABLE FIXED POINTS OF THE QR ALGORITHM DAVID M. DAY AND ANDREW D. HWANG Abstract. Volume 1, number 2, pages 147-156, 2004. Practical QR algorithm for the real unsymmetric algebraic eigenvalue problem is considered. The global convergence of shifted QR algorithm in finite precision arithmetic is addressed based on a model of the dynamics of QR algorithm in a neighborhood of an unreduced Hessenberg fixed point. The QR algorithm fails at a “stable” unreduced fixed point. Prior analyses have either determined some unstable unreduced Hessenberg fixed points or have addressed stability to perturbations of the reduced Hessenberg fixed points. The model states that sufficient criteria for stability (e.g. failure) in finite precision arithmetic are that a fixed point be neutrally stable both with respect to perturbations that are constrained to the orthogonal similarity class and to general perturbations from the full matrix space. The theoretical analysis presented herein shows that at an arbitrary unreduced fixed point “most” of the eigenvalues of the Jacobian(s) are of unit modulus. A framework for the analysis of special cases is developed that also sheds some light on the robustness of the QR algorithm. Key words. Unsymmetric eigenvalue problem, QR algorithm, unreduced fixed point 1. Background QR iteration is the standard method for computing the eigenvalues of an un- symmetric matrix [13, 16, 9, 2]. The global convergence properties of unshifted QR iteration are well established [14, 5].
    [Show full text]
  • The Eigenvalue Problem: the Hessenberg and Real Schur Forms
    Jim Lambers MAT 610 Summer Session 2009-10 Lecture 15 Notes These notes correspond to Sections 7.4 and 8.3 in the text. The Eigenvalue Problem: The Hessenberg and Real Schur Forms The Unsymmetric Eigenvalue Problem Let A be a real n × n matrix. It is possible that A has complex eigenvalues, which must occur in complex-conjugate pairs, meaning that if a + ib is an eigenvalue, where a and b are real, then so is a − ib. On the one hand, it is preferable that complex arithmetic be avoided as much as possible when using QR iteration to obtain the Schur Decomposition of A. On the other hand, in H the algorithm for QR iteration, if the matrix Q0 used to compute T0 = Q0 AQ0 is real, then every matrix Tk generated by the iteration will also be real, so it will not be possible to obtain the Schur Decomposition. We compromise by instead seeking to compute the Real Schur Decomposition A = QT QT where Q is a real, orthogonal matrix and T is a real, quasi-upper-triangular matrix that has a block upper-triangular structure 2 3 T11 T12 ⋅ ⋅ ⋅ T1p 6 .. 7 6 0 T22 . 7 T = 6 7 ; 6 .. .. 7 4 0 . 5 0 0 0 Tpp where each diagonal block Tii is 1 × 1, corresponding to a real eigenvalue, or a 2 × 2 block, corre- sponding to a pair of complex eigenvalues that are conjugates of one another. If QR iteration is applied to such a matrix, then the sequence fTkg will not converge, but a block upper-triangular structure will be obtained, which can then be used to compute all of the eigenvalues.
    [Show full text]