Global Navigation Satellite Systems, Inertial Navigation, and Integration

Similar documents
APPENDIX B A MATRIX REFRESHER

EE731 Lecture Notes: Matrix Computations for Signal Processing

Math Linear Algebra Final Exam Review Sheet

Foundations of Matrix Analysis

Phys 201. Matrices and Determinants

Review of Linear Algebra

Introduction to Matrix Algebra

Section 3.2. Multiplication of Matrices and Multiplication of Vectors and Matrices

MAT 610: Numerical Linear Algebra. James V. Lambers

AMS526: Numerical Analysis I (Numerical Linear Algebra for Computational and Data Sciences)

Systems of Linear Equations and Matrices

Math Bootcamp An p-dimensional vector is p numbers put together. Written as. x 1 x =. x p

Systems of Linear Equations and Matrices

Chapter 1. Matrix Algebra

A primer on matrices

Matrices. Chapter What is a Matrix? We review the basic matrix operations. An array of numbers a a 1n A = a m1...

A primer on matrices

3 (Maths) Linear Algebra

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS. + + x 1 x 2. x n 8 (4) 3 4 2

DS-GA 1002 Lecture notes 0 Fall Linear Algebra. These notes provide a review of basic concepts in linear algebra.

B553 Lecture 5: Matrix Algebra Review

ELEMENTARY LINEAR ALGEBRA

A matrix is a rectangular array of. objects arranged in rows and columns. The objects are called the entries. is called the size of the matrix, and

This appendix provides a very basic introduction to linear algebra concepts.

Lecture Notes in Linear Algebra

A matrix is a rectangular array of. objects arranged in rows and columns. The objects are called the entries. is called the size of the matrix, and

MATH2210 Notebook 2 Spring 2018

Jim Lambers MAT 610 Summer Session Lecture 1 Notes

Chapter 3 Transformations

Introduction to Linear Algebra. Tyrone L. Vincent

Review Questions REVIEW QUESTIONS 71

Properties of Matrices and Operations on Matrices

2. Linear algebra. matrices and vectors. linear equations. range and nullspace of matrices. function of vectors, gradient and Hessian

Math Camp Lecture 4: Linear Algebra. Xiao Yu Wang. Aug 2010 MIT. Xiao Yu Wang (MIT) Math Camp /10 1 / 88

A matrix over a field F is a rectangular array of elements from F. The symbol

Review problems for MA 54, Fall 2004.

Appendix C Vector and matrix algebra

1. General Vector Spaces

MAT 2037 LINEAR ALGEBRA I web:

Fundamentals of Engineering Analysis (650163)

Chapter 4 - MATRIX ALGEBRA. ... a 2j... a 2n. a i1 a i2... a ij... a in

A Review of Linear Algebra

Linear Algebra review Powers of a diagonalizable matrix Spectral decomposition

Linear Algebra review Powers of a diagonalizable matrix Spectral decomposition

Chapter 5. Linear Algebra. A linear (algebraic) equation in. unknowns, x 1, x 2,..., x n, is. an equation of the form

Linear Algebra and Eigenproblems

Theorem A.1. If A is any nonzero m x n matrix, then A is equivalent to a partitioned matrix of the form. k k n-k. m-k k m-k n-k

EE/ACM Applications of Convex Optimization in Signal Processing and Communications Lecture 2

Equality: Two matrices A and B are equal, i.e., A = B if A and B have the same order and the entries of A and B are the same.

G1110 & 852G1 Numerical Linear Algebra

1 Matrices and Systems of Linear Equations. a 1n a 2n

Matrix Algebra: Summary

Index. book 2009/5/27 page 121. (Page numbers set in bold type indicate the definition of an entry.)

Mobile Robotics 1. A Compact Course on Linear Algebra. Giorgio Grisetti

Chapter 4. Matrices and Matrix Rings

Linear Algebra. Matrices Operations. Consider, for example, a system of equations such as x + 2y z + 4w = 0, 3x 4y + 2z 6w = 0, x 3y 2z + w = 0.

Mathematical Foundations of Applied Statistics: Matrix Algebra

MATH 240 Spring, Chapter 1: Linear Equations and Matrices

Linear Algebra Review. Vectors

Linear Algebra for Machine Learning. Sargur N. Srihari

APPENDIX A. Background Mathematics. A.1 Linear Algebra. Vector algebra. Let x denote the n-dimensional column vector with components x 1 x 2.

Chapter 1: Systems of linear equations and matrices. Section 1.1: Introduction to systems of linear equations

Matrix Algebra Determinant, Inverse matrix. Matrices. A. Fabretti. Mathematics 2 A.Y. 2015/2016. A. Fabretti Matrices

Finite Mathematics Chapter 2. where a, b, c, d, h, and k are real numbers and neither a and b nor c and d are both zero.

a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2.

Linear Algebra March 16, 2019

Linear Algebra. The analysis of many models in the social sciences reduces to the study of systems of equations.

Introduction to Matrices

OHSx XM511 Linear Algebra: Solutions to Online True/False Exercises

A Brief Outline of Math 355

Knowledge Discovery and Data Mining 1 (VO) ( )

Chapter 2 - Basics Structures MATH 213. Chapter 2: Basic Structures. Dr. Eric Bancroft. Fall Dr. Eric Bancroft MATH 213 Fall / 60

Math 4A Notes. Written by Victoria Kala Last updated June 11, 2017

Review of Basic Concepts in Linear Algebra

Review of Matrices and Block Structures

Matrix & Linear Algebra

Linear Algebra Primer

Applied Linear Algebra in Geoscience Using MATLAB

MATRICES The numbers or letters in any given matrix are called its entries or elements

Chapter 5 Eigenvalues and Eigenvectors

Linear Algebra: Lecture notes from Kolman and Hill 9th edition.

Steven J. Leon University of Massachusetts, Dartmouth

OR MSc Maths Revision Course

ELE/MCE 503 Linear Algebra Facts Fall 2018

Basic Concepts in Linear Algebra

Chap 3. Linear Algebra

Notes on Linear Algebra and Matrix Theory

Chapter 2 - Basics Structures

Jim Lambers MAT 610 Summer Session Lecture 2 Notes

MAT Linear Algebra Collection of sample exams

Quantum Computing Lecture 2. Review of Linear Algebra

Linear Algebra Massoud Malek

Preliminary/Qualifying Exam in Numerical Analysis (Math 502a) Spring 2012

Elementary maths for GMT

Basic Elements of Linear Algebra

LINEAR ALGEBRA WITH APPLICATIONS

3. Vector spaces 3.1 Linear dependence and independence 3.2 Basis and dimension. 5. Extreme points and basic feasible solutions

Queens College, CUNY, Department of Computer Science Numerical Methods CSCI 361 / 761 Spring 2018 Instructor: Dr. Sateesh Mane.

Numerical Linear Algebra

Matrices and Vectors. Definition of Matrix. An MxN matrix A is a two-dimensional array of numbers A =

Transcription:

Global Navigation Satellite Systems, Inertial Navigation, and Integration Third Edition Appendix C: A Matrix Refresher Mohinder S Grewal California State University at Fullerton Angus P Andrews Rockwell Science Center [Ret] Chris G Bartone Ohio University 2013 John Wiley & Sons

ii

Contents C A Matrix Refresher 1 C1 Matrix Forms 1 C11 Notation for Real Matrices 1 C111 Scalars 1 C112 Real Matrices 1 C113 Indices and Subscripts 1 C114 Dimensions 1 C12 Square Matrices 2 C121 Sparse and Dense Matrices 2 C122 Triangular Matrices 2 C123 Diagonal Matrices 3 C124 Zero Matrices 3 C125 Identity Matrices 3 C13 Vectors 3 C131 Vectors and Matrices 3 C132 Representational Differences 3 C133 Row Vector Notation 4 C134 Column Vector Default 4 C14 Conformable Matrix Dimensions 4 C141 Syntax of Mathematical Expressions 4 C142 Syntax for Matrix Dimensions 4 C143 Implied Conformability of Matrix Dimensions 4 C2 Matrix Operations 4 C21 Transposition 4 C211 Transpose of a Matrix 4 C212 Transpose of a Vector 5 C213 Symmetric Matrices 5 C22 Extracting Elements of Matrix Expressions 5 C221 Subscripted Expressions 5 C23 Multiplication by Scalars 5 C24 Addition and Multiplication of Conformable Matrices 5 C241 Addition of Conformable Matrices Is Associative and Commutative 5 C242 Additive Inverse of a Matrix 5 C243 Multiplication of Conformable Matrices Is Associative But Not Commutative 6 C244 Inner and Outer Products 6 C245 Products with Identity Matrices 6 C25 Powers of Square Matrices 6 C26 Matrix Inverses 6 C261 Inverses of Nonsingular Square Matrices 6 C262 Generalized Inverses 6 C27 Orthogonality 7 C271 Unit, Orthogonal and Orthonormal Vectors 7 iii

iv CONTENTS C2711 Jointly orthogonal vectors: 7 C272 Orthogonal Matrices 7 C28 Square Matrix Subalgebras 7 C3 Block Matrix Formulas 7 C31 Submatrices, Partitioned Matrices, and Blocks 7 C311 Columns and Rows as Blocks 8 C32 Rank and Linear Dependence 9 C33 Conformable Block Operations 9 C34 Frobenius Schur Inversion Formula 9 C35 Inversion Formulas for Matrix Expressions 9 C351 Sherman Morrison Formula 7 9 C352 Sherman Morrison Woodbury Formula 10 C353 Hemes Inversion Formula 10 C4 Functions of Square Matrices 10 C41 Determinants and Characteristic Values 10 C411 Elementary Permutation Matrices 10 C412 Determinants of Elementary Permutation Matrices 10 C413 Permutation Matrices 10 C414 Determinants of Permutation Matrices 11 C415 Even and Odd Permutation Matrices 11 C416 Determinants of Square Matrices 11 C417 Characteristic Values of Square Matrices 11 C418 Definiteness of Symmetric Matrices 11 C419 Characteristic Vectors 11 C42 Matrix Trace 12 C43 Algebraic Functions of Matrices 12 C44 Analytic Functions of Matrices 12 C441 Exponential Function 12 C442 Computing Matrix Exponentials 13 C4421 Padé approximation of the matrix exponential 13 C4422 Application to matrix exponential 13 C4423 Bounding relative approximation error 14 C4424 Scaling and squaring 14 C4425 MATLAB Implementations 14 C45 Similarity Transformations and Analytic Functions 14 C5 Norms 15 C51 Normed Linear Spaces 15 C52 Hölder Norms 15 C53 Matrix Norms 16 C531 Generalized Vector Norms 16 C532 Desirable Multiplicative Properties of Matrix Norms 16 C533 Matrix Norms Subordinate to Vector Hölder Norms 17 C534 Computation of Matrix Hölder Norms 17 C535 Default Matrix Norm 17 C6 Matrix Square Roots 17 C7 Cholesky Decomposition of Symmetric Positive-Definite Matrices 18 C71 Cholesky Factors 18 C72 Generalized Cholesky Factors (GCF) 18 C721 Nomenclature of Square Root Filtering 18 C722 An Alternative Terminology 18 C723 Generalized Cholesky Factors Are Not Unique 19 C73 Alternative Cholesky Factoring Algorithms 19 C74 Modified Cholesky Factorization 19 C75 Rank 1 Modifications of Generalized Cholesky factors 19

CONTENTS v C8 Orthogonal Decompositions of Matrices 20 C81 QR Decomposition (Triangularization) 20 C82 Singular-Value Decomposition 20 C83 Eigenvalue Eigenvector Decompositions of Symmetric Matrices 21 C9 Quadratic Forms 21 C901 Bilinear and Quadratic Forms 21 C91 Symmetric Decomposition of Quadratic Forms 21 C911 Ranges of Quadratic Forms 22 C10 Derivatives of Matrices 22 C101 Derivatives of Matrix-Valued Functions 22 C102 Gradients of Quadratic Forms 23

vi PREFACE CONTENTS This overview of matrix mathematics is to accompany the textbook Global Navigation Satellite Systems, Inertial Navigation, and Integration, 3rd Edition, by M S Grewal, A P Andrews, and C G Bartone, published by John Wiley & Sons, 2013 This material had been included as Appendix C in prior editions of the textbook This is intended for readers familiar with the general subject of linear algebra, but whose recall may be a little rusty A more thorough treatment can be found in most college-level textbooks on linear algebra and matrix theory (eg, [2], [3], [4], [5], [7], [8], [9], [10], [11], [12], [14], [16], [18], [19], [21], [22], [24], [25], [27], [28], [31], [33], and [34] ) This overview introduces the essential notation 1 and properties of matrices as data structures and algebras, as used in derivations of matrix formulas for more efficient and reliable Kalman filter implementations, and in methods for analyzing Kalman filter performance 1 One notational difference between this and other references is our introduction of the term generalized Cholesky factor for any solution C to the matrix equation P = CC T, where the matrix P is symmetric and positive-definite The term square root for C has been used in the literature on square root Kalman filtering, even though a true matrix square root of P would be a solution to the equation P = CC

Appendix C A Matrix Refresher C1 Matrix Forms C11 Notation for Real Matrices C111 Scalars For the purposes of this book, scalars are real numbers, although in computer implementations they must be approximated by floating-point numbers, which are but a finite subset of the rational numbers We will use parentheses to denote open intervals (intervals not including the designated endpoints) on the real line, so that (, + ) denotes the set of all real numbers and (0, + ) denotes the nonnegative real numbers We will use square brackets to denote closed ends (ends including the designated endpoint) of intervals, so that [0, 1] denotes the unit interval with endpoints included C112 Real Matrices For positive integers m and n, an m-by-n real matrix A is a two-dimensional rectangular array of scalars, designated by the subscript notation a ij and usually displayed in the following format: a 11 a 12 a 13 a 1n a 21 a 22 a 23 a 2n A = a 31 a 32 a 33 a 3n (C1) a m1 a m2 a m3 a mn The scalars a ij are called the elements of A We will use upper case letters to denote matrices and the corresponding lowercase letters to denote scalar elements of the associated matrices C113 Indices and Subscripts The first subscript (i) on the element a ij refers to the row in which the element occurs, and the second subscript (j) refers to the column in which a ij occurs in this format The integers i and j in this notation are also called indices of the elements The first index is called the row index, and the second index is called the column index of the element The term (ij)th position in the matrix A refers to the position of a ij, and a ij is called the (ij)th element of A If juxtaposition of subscripts leads to confusion, they may be separated by commas The element in the eleventh row and first column of the matrix A would then be denoted by a 11,1, not a 111 C114 Dimensions The positive integers m and n are called the dimensions of A: m is called the row dimension of A and n is called the column dimension of A The dimensions of A may also be represented as m n, which is to be read m by 1

2 APPENDIX C A MATRIX REFRESHER Upper Triangular a 11 a 12 a 13 a 1n 0 a 21 a 22 a 2n 0 0 a 33 a 3n 0 0 0 a nn Lower Triangular a 11 0 0 0 a 21 a 22 0 0 a 31 a 32 a 33 0 a n1 a n2 a n3 a nn Unit Upper Triangular 1 a 12 a 13 a 1n 0 1 a 22 a 2n 0 0 1 a 3n 0 0 0 1 Unit Lower Triangular 1 0 0 0 a 21 1 0 0 a 31 a 32 1 0 a n1 a n2 a n3 1 Strictly Upper Triangular 0 a 12 a 13 a 1n 0 0 a 22 a 2n 0 0 0 a 3n 0 0 0 0 Strictly Lower Triangular 0 0 0 0 a 21 0 0 0 a 31 a 32 0 0 a n1 a n2 a n3 0 Diagonal d 1 0 0 0 0 d 2 0 0 0 0 d 3 0 0 0 0 d n Identity (I) 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 Zero (0) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Figure C1: Special forms of sparse square matrices n The symbol in this notation does not indicate multiplication 1 C12 Square Matrices A matrix is called square if it has the same row and column dimensions Useful forms of square matrices are illustrated in Figure B1 2 and described in the following sub-subsections C121 Sparse and Dense Matrices A matrix with a significant fraction (typically, half or more) of zero elements is called sparse Matrices that are decidedly not sparse are called dense, although both sparsity and density are matters of degree Except for the Toeplitz and Hankel matrix, 3 the forms shown in Figure B1 are sparse, although sparse matrices do not have to be square Sparsity is an important characteristic for implementation of matrix methods because it can be exploited to reduce computer memory and computational requirements C122 Triangular Matrices These sparse matrix forms have come to play a significant role in the implementation of Kalman filtering The main diagonal of a square matrix A is the set of elements a ij for which i = j The other elements are called off-diagonal 1 The number of elements in the matrix A equals the product mn, however, and this is important for determining memory requirements for data structures to hold A 2 The matrix forms in the third row of Figure B1 belong to both forms in the column above That is, diagonal matrices are both upper triangular and lower triangular, identity matrices are both unit upper triangular and unit lower triangular, and square zero matrices are both strictly upper triangular and strictly lower triangular 3 Although a Toeplitz matrix is fully dense, it can be represented by the 2n 1 distinct values of its elements

C1 MATRIX FORMS 3 Square matrices in which all the off-diagonal elements on one side of the main diagonal are zero are called triangular Triangular matrices with all their non-zero elements above the main diagonal are called upper triangular Triangular matrices with all their non-zero elements below the main diagonal are called lower triangular C123 Diagonal Matrices If all the off-diagonal elements of a square matrix A are zero, A is called a diagonal matrix An n n diagonal matrix D can be defined by specifying its diagonal elements {d i 1 i n}, as D = diag (d) (C2) d 1 0 0 0 0 d 2 0 0 def = 0 0 d 3 0 (C3) 0 0 0 d n in terms of a math operator diag operating on the n-vector d of its diagonal elements C124 Zero Matrices The ultimate sparse matrix is a matrix in which all elements are 0 (zero) It is called a zero matrix, and it is represented by the symbol 0 (zero) The equation A = 0 indicates that A is a zero matrix Zero matrices may be non-square, as well as square Whenever it is necessary to specify the dimensions of a zero matrix, they may be indicated by subscripting: 0 m n will indicate an m n zero matrix If the matrix is square, only one subscript will be used: 0 n will mean an n n zero matrix C125 Identity Matrices The identity matrix will be represented by the symbol I If it is necessary to denote the dimension of I explicitly, it will be indicated by subscripting the symbol: I n denotes the n n identity matrix C13 Vectors C131 Vectors and Matrices A vector is essentially a matrix 4 in which one of the dimensions is 1 If the column dimension is 1, it is called a column vector If the row dimension is 1, it is called a row vector 5 Once it is understood which of the dimensions is 1, the index for that dimension can be dropped from the notation The other dimension may be prefixed to - vector to shorten the notation: the term n-vector refers to a matrix for which one dimension is 1 and the other is n C132 Representational Differences Although vectors may share many mathematical properties with matrices, they are used in this book to represent quite different concepts To a considerable degree, vectors are used to represent physically measurable properties of dynamic systems, and matrices are used to represent transformations of those properties performed by sensors or by the passage of time In order to make the distinction between vectors and matrices more apparent, we shall use lowercase letters to denote vectors and scalars and uppercase letters to denote matrices However, as data structures, vectors are not fundamentally different from matrices or other arrays 4 Defining a vector as a special case of a matrix is not the customary approach, but it obviates the need for separate definitions of inner and outer products 5 And if both dimensions are 1, it is called a scalar, not a 1-vector

4 APPENDIX C A MATRIX REFRESHER C133 Row Vector Notation Commas can be used for separating the elements of a row vector: x = [x 1, x 2, x 3,, x n ], (C4) where the notation x i refers to the element in the ith column of x (We will return to a related issue the compositional efficiency of row vector notation after the matrix transpose is defined) C134 Column Vector Default Whenever a vector x is not defined to be a row vector, it is implied that it is a column vector C14 Conformable Matrix Dimensions C141 Syntax of Mathematical Expressions Syntax is a set of rules governing the formation of patterns of symbols in a language In mathematics, these symbols may stand for data structures such as scalars and matrices, operators such as addition and multiplication, or delimiters such as parentheses and brackets Patterns of these symbols satisfying the rules of syntax are called expressions Within the constraints imposed by syntax, an expression of a particular type (eg, a scalar or a matrix expression) can be substituted for a symbol of that type, and vice versa C142 Syntax for Matrix Dimensions For matrix expressions, there are additional rules of syntax related to the dimensions of the matrices For example, whenever we write a matrix equation as A = B, we assume that the matrices (or matrix expressions) represented by the symbols A and B have the same dimensions C143 Implied Conformability of Matrix Dimensions Additional rules of syntax for matrix operations will be introduced with the operators Matrices whose dimensions conform to these rules for a position in a particular expression are said to be conformable for that position in that expression Whenever a symbol for a matrix appears in a matrix expression, it is implied that the matrix represented by that symbol is conformable for its position in that expression C2 Matrix Operations C21 Transposition C211 Transpose of a Matrix All matrices are conformable for transposition The transpose of A is the matrix A T (with the superscript T denoting the transpose operation 6 ), obtained from A by interchanging rows and columns: a 11 a 12 a 13 a 1n a 21 a 22 a 23 a 2n a 31 a 32 a 33 a 3n a m1 a m2 a m3 a mn The transpose of an m n matrix is an n m matrix T a 11 a 21 a 31 a m1 a 12 a 22 a 32 a m2 = a 13 a 23 a 33 a m3 (C5) a 1n a 2n a 3n a mn 6 In MATLAB, transposition is indicated by a post-fixed apostrophe, so that A T is represented in MATLAB as A

C2 MATRIX OPERATIONS 5 C212 Transpose of a Vector The transpose of a row vector is a column vector, and vice versa It makes more efficient use of space on the page if we express a column vector v as the transpose of a row vector: v = [v 1, v 2, v 3,, v m ] T (C6) C213 Symmetric Matrices A matrix A is called symmetric if A T = A, and skew symmetric (or antisymmetric) if A T = A Only square matrices can be symmetric or skew symmetric Therefore, whenever a matrix is said to be symmetric or skew symmetric, it is implied that it is a square matrix C22 Extracting Elements of Matrix Expressions C221 Subscripted Expressions Subscripts represent an operation on a matrix that extracts the designated matrix element Subscripts may also be applied to matrix expressions The element in the ij th position of a matrix expression can be indicated by subscripting the expression, as in {A T } ij = a ji (C7) Here, we have used braces {} to indicate the scope of the expression to which the subscripting applies This is a handy device for defining matrix operations C23 Multiplication by Scalars All matrices are conformable for multiplication by scalars, either on the left or on the right Multiplication is indicated by juxtaposition of symbols or by infix notation with the multiplication symbol ( ) Multiplication of a matrix A by a scalar s is equivalent to multiplying every element of A by s: {As} ij = {sa} ij = sa ij (C8) C24 Addition and Multiplication of Conformable Matrices C241 Addition of Conformable Matrices Is Associative and Commutative Matrices are conformable for addition if and only if they share the same dimensions Whenever matrices appear as sums in an expression, it is implied that they are conformable If A and B are conformable matrices, then addition is defined by adding corresponding elements: {A + B} ij = a ij + b ij (C9) Addition of matrices is commutative and associative That is, A + B = B + A and A + (B + C) = (A + B) + C C242 Additive Inverse of a Matrix The product of a matrix A by the scalar 1 yields its additive inverse A: ( 1)A = A, A + ( A) = A A = 0 (C10) Here, we have followed the not uncommon practice of using the symbol both as a unary (additive inverse) and binary (subtraction) operator Subtraction of a matrix A from a matrix B is equivalent to adding the additive inverse of A to B: B A = B + ( A) (C11)

6 APPENDIX C A MATRIX REFRESHER C243 Multiplication of Conformable Matrices Is Associative But Not Commutative Multiplication of an m n matrix A by a matrix B on the right-hand side of A, as in the matrix product AB, is defined only if the row dimension of B equals the column dimension of A That is, we can multiply an m n matrix A by a p q matrix B in this order only if n = p In that case, the matrices A and B are said to be conformable for multiplication in that order, and the matrix product is defined element by element by {AB} ij def = n a ik b kj, k=1 (C12) the result of which is an m q matrix Whenever matrices appear as a product in an expression, it is implied that they are conformable for multiplication C244 Inner and Outer Products There are special names given to products of vectors that are otherwise adequately defined as matrix products The inner product or dot product of conformable column vectors x and y is the matrix product x T y = y T x (For row vectors, the format is xy T = yx T ) The outer products have the transpose on the other vector, and the vectors need not have the same dimensions If the vectors are treated as matrices, these products can be used without special treatment C245 Products with Identity Matrices Multiplication of any m n matrix A by a conformable identity matrix yields the original matrix A as the product: C25 Powers of Square Matrices AI n = A, I m A = A (C13) Square matrices are conformable with multiplication by themselves, and the resulting matrix products are again conformable for multiplication Consequently, one can define the pth power of a square matrix A as C26 Matrix Inverses C261 Inverses of Nonsingular Square Matrices A p = } A A A {{ A } (C14) p elements If A and B are square matrices of the same dimension and such that their product AB = I, (C15) then B is the matrix inverse of A and A is the matrix inverse of B (It turns out that BA = AB = I in this case) The inverse of a matrix A is unique, if it exists, and is denoted by A 1 Not all matrices have inverses Matrix inversion is the process of finding a matrix inverse, if it exists If the inverse of a matrix A does not exist, A is called singular Otherwise, it is called nonsingular C262 Generalized Inverses Even non-square or singular matrices can have generalized inverses The Moore Penrose 7 generalized inverse of an m n matrix A is the n m matrix A such that AA A = A, A AA = A, (C16) (AA ) T = AA, (A A) T = A A (C17) The MATLAB function pinv(m) computes the Moore Penrose generalized inverse of the matrix M using the singular value decomposition of M This result is sometimes called the pseudo-inverse of M, because it is based on the pseudorank of M, which is the effective rank within machine precision tolerance 7 Named for Eliakim Hastings Moore (1862-1932) and Sir Roger Penrose (b 1931)

C3 BLOCK MATRIX FORMULAS 7 C27 Orthogonality C271 Unit, Orthogonal and Orthonormal Vectors For vectors, orthogonality is a pairwise property Vectors x and y are called orthogonal or normal if their inner product is zero If the inner product of a vector x with itself is 1, x is called a unit vector Orthogonal unit vectors are called orthonormal 8 C2711 Jointly orthogonal vectors: A set { x [1], x [2], x [3], } of vectors x [i] is called jointly orthogonal if and only if each distinct pair of vectors {x [i], x [j] i j} is orthogonal C272 Orthogonal Matrices A matrix A is called orthogonal if A T = A 1 These matrices have several useful properties: Orthogonality of a matrix A implies that the row vectors of A are jointly orthonormal, and the column vectors of A are also jointly orthonormal The dot products of vectors are invariant under multiplication by a conformable orthogonal matrix That is, if A is orthogonal, then x T y = (Ax) T (Ay) for all conformable x and y Products and inverses of orthogonal matrices are orthogonal As a rule, multiplications by orthogonal matrices tend to be numerically well conditioned compared to general matrix multiplications (The inversion of orthogonal matrices is obviously extremely well conditioned) C28 Square Matrix Subalgebras Certain subclasses of n n (square) matrices have the property that their products belong to the same class Orthogonal matrices, for example, have the property that their products are also orthogonal matrices These are said to form a multiplicative subalgebra of n n matrices Subalgebras have the property that their set intersections are also subalgebras Upper triangular matrices and lower triangular matrices are two subalgebras of the square matrices that are used in implementing the Kalman filter Their intersection is the set of diagonal matrices another subalgebra A Venn diagram of such multiplicative subalgebras is shown in Figure B2 C3 Block Matrix Formulas C31 Submatrices, Partitioned Matrices, and Blocks For any m n matrix A and any subset S rows {1, 2, 3,, m} of the row indices and subset S cols {1, 2, 3,, n} of the column indices, the subset of elements A = {a ij i S rows, j S cols } (C18) is called a submatrix of A A partitioning of an integer n is an exhaustive collection of contiguous subsets S k of the form S 2 S p S 1 {}}{{}}{{}}{ 1, 2, 3,, l 1, (l 1 + 1),, l 2,, (l p 1 + 1),, n (C19) The collection of submatrices formed by partitionings of the row and column dimensions of a matrix is called a partitioning of the matrix, and the matrix is said to be partitioned by that partitioning Each submatrix of a partitioned matrix A is called a partitioned submatrix, partition, submatrix block, sub-block, or block of 8 The term normal has many meanings in mathematics Its use here is synonymous with of unit length It is also used to mean orthogonal

8 APPENDIX C A MATRIX REFRESHER Figure C2: Some useful multiplicative subalgebras of square matrices A Each block of a partitioned matrix A can be represented by a conformable matrix expression, and A can be displayed as a block matrix: B C D F G H J L A = M N P R (C20) V W X Z where B, C, D, stand for matrix expressions Whenever a matrix is displayed as a block matrix, it is implied that all block submatrices in the same row have the same row dimension and that all block submatrices in the same column have the same column dimension A block matrix of the form A 0 0 0 0 B 0 0 0 0 C 0, (C21) 0 0 0 M in which the off-diagonal block submatrices are zero matrices, is called a block diagonal matrix, and a block matrix in which the block submatrices on one side of the diagonal are zero matrices is called a block triangular matrix C311 Columns and Rows as Blocks There are two special partitionings of matrices in which the block submatrices are vectors The column vectors of an m n matrix A are the block submatrices of the partitioning of A for which all column dimensions are 1 and all row dimensions are m The row vectors of A are the block submatrices of the partitioning for which all row dimensions are 1 and all column dimensions are n All column vectors of an m n matrix are m-vectors, and all row vectors are n-vectors

C3 BLOCK MATRIX FORMULAS 9 C32 Rank and Linear Dependence A linear combination of a finite set of n-vectors {ν i } is a summation of the sort i a iv i for some set of scalars {a i } If some linear combination a i v i = 0 and at least one coefficient a i 0, the set of vectors {v i } is called linearly dependent Conversely, if the only linear combination for which a i v i = 0 is the one for which all the a i = 0, then the set of vectors {v i } is called linearly independent The column rank of an n m matrix A equals the size of the largest collection of its column vectors that is linearly independent Note that any such linear combination can be expressed in the form Aa, where the nonzero elements of the column m-vector a are the associated scalars of the linear combination, and the number of nonzero components of a is the size of the collection of column vectors in the linear combination The row rank of a n m matrix A equals the size of the largest collection of its row vectors that is linearly independent In this case, any linear combination or row vectors can be expressed in the form a T A for some column n-vector a The rank of a square n n matrix A equals both its row rank and its column rank In this case, A is nonsingular if and only if its rank equals its dimension n C33 Conformable Block Operations Block matrices with conformable partitionings may be transposed, added, subtracted, and multiplied in block format For example, [ ] T A B = C D [ ] [ ] A B E F + = C D G H [ ] [ ] A B E F = C D G H C34 Frobenius Schur Inversion Formula [ ] A T C T B T D T, (C22) [ ] A + E B + F, (C23) C + G D + H [ ] AE + BG AF + BH (C24) CE + DG CF + DH The inverse of a partitioned matrix with square diagonal blocks may be represented in block form as 9 where [ ] 1 [ ] A B E F = (C25) C D G H E = A 1 + A 1 BHCA 1, (C26) F = A 1 BH, (C27) G = HCA 1, (C28) H = [D CA 1 B] 1, (C29) provided that the critical matrix expressions are nonsingular This formula can be proved by multiplying the original matrix times its alleged inverse and verifying that the result is the identity matrix C35 Inversion Formulas for Matrix Expressions C351 Sherman Morrison Formula 7 9 This formula has had many discoverers Bodewig [8] cites nine such discoverers but gives credit to the German mathematicians Georg Ferdinand Frobenius (1849 1917) and Issai Schur (1875 1941) as the earliest discovers of record 7 The naming of this and the next formula follows the convention of Golub and Van Loan [15], which is at odds with the references of Henderson and Searle [17]

10 APPENDIX C A MATRIX REFRESHER A rank 1 modification of a square matrix A is a sum of the form A + bc T, where b and c are conformable column vectors Its inverse is given by the formula C352 Sherman Morrison Woodbury Formula [A + bc T ] 1 = A 1 A 1 bc T A 1 1 + c T A 1 b (C30) This is the generalization of the above formula for conformable matrices in place of vectors: [A + BC T ] 1 = A 1 A 1 B[I + C T A 1 B] 1 C T A 1 (C31) C353 Hemes Inversion Formula A further generalization of this formula (used in the derivation of the Kalman filter equations) includes an additional conformable square matrix factor in the modification 8 [A + BC 1 D T ] 1 = A 1 A 1 B[C + D T A 1 B] 1 D T A 1 (C32) C4 Functions of Square Matrices C41 Determinants and Characteristic Values C411 Elementary Permutation Matrices An elementary permutation matrix is formed by interchanging rows or columns of an identity matrix I n : P [ij] = i j i j 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 (C33) Multiplication of a vector x by P [ij] permutes the ith and jth elements of x Note that P [ij] is an orthogonal matrix and a square root of the identity matrix That is, P 2 [ij] = I n C412 Determinants of Elementary Permutation Matrices The determinant of an elementary permutation matrix P [ij] is defined to be 1, unless i = j (ie, P [ii] = I n ): { det(p [ij] ) def 1, i j, = +1, i = j (C34) C413 Permutation Matrices A permutation matrix is any product of elementary permutation matrices These are also orthogonal matrices Let P n denote the set of all distinct n n permutation matrices There are n! = 1 2 3 n of them, corresponding to the n! permutations of n indices 8 This is yet another formula with many discoverers Fortmann [13] cites several of them Bodewig [[]Bodewig, page 218] credits H Hemes for its discovery, although Henderson and Searle [17] cite an earlier reference

C4 FUNCTIONS OF SQUARE MATRICES 11 C414 Determinants of Permutation Matrices The determinant of a permutation matrix can be defined by the rule that the determinant of a product of matrices is the product of the determinants: det(ab) = det(a) det(b) (C35) Therefore, the determinant of a permutation matrix will be either +1 or 1 C415 Even and Odd Permutation Matrices A permutation matrix is called even if its determinant is +1 and odd if its determinant equals 1 C416 Determinants of Square Matrices The determinant of any n n matrix A can be defined as follows: det(a) def = P P n det(p) n {AP } ii i=1 (C36) This formula has O(n n!) computational complexity (for a sum over n! products of n elements each) C417 Characteristic Values of Square Matrices For a free variable λ, the polynomial P A (λ) def = det[a λi] (C37) n = a i λ i (C38) i=0 is called the characteristic polynomial of A The roots of p A (λ) are called the characteristic values (or eigenvalues) of A The determinant of A equals the product of its characteristic values, with each characteristic value occurring as many times in the product as the multiplicity of the associated root of the characteristic polynomial C418 Definiteness of Symmetric Matrices If A is symmetric, all its characteristic values are real numbers, which implies that they can be ordered They are usually expressed in descending order: λ 1 (A) λ 2 (A) λ 3 (A) λ n (A) (C39) A real square symmetric matrix A is called positive definite if λ n (A) < 0, non negative definite if λ n (A) 0, indefinite if λ 1 (A) < 0 and λ n (A) > 0, non positive definite if λ 1 (A) 0, and negative definite if λ 1 (A) > 0 (C40) Non negative definite matrices are also called positive semidefinite, and non positive definite matrices are also called negative semidefinite C419 Characteristic Vectors For each real characteristic value λ i (A) of a real symmetric A, there is a corresponding characteristic vector (or eigenvector) e i (A) such that e i (A) 0 and Ae i (A) = λ i (A)e i (A) The characteristic vectors corresponding to distinct characteristic values are mutually orthogonal

12 APPENDIX C A MATRIX REFRESHER C42 Matrix Trace The trace of a square matrix is the sum of its diagonal elements It also equals the sum of the characteristic values and has the property that the trace of the product of conformable matrices is independent of the order of multiplication a very useful attribute: trace(ab) = i = i = j {AB} ii A ij B ji j B ji A ij i (C41) (C42) (C43) = trace(ba) (C44) Note the product AB is conformable for the trace function only if it is a square matrix, which requires that A and B T have the same dimensions If they are m n (or n m), then the computation of the trace of their product requires mn multiplications, whereas the product itself would require m 2 n (or mn 2 ) multiplications C43 Algebraic Functions of Matrices An algebraic function may be defined by an expression in which the independent variable (a matrix) is a free variable, such as the truncated power series n f(a) = B k A k, (C45) k= n where the negative power A p = {A 1 } p = {A p } 1 In this representation, the matrix A is the independent (free) variable and the other matrix parameters (B k ) are assumed to be known and fixed C44 Analytic Functions of Matrices An analytic function is defined in terms of a convergent power series It is necessary that the power series converge to a limit, and the matrix norms defined in subsection C53 must be used to define and prove convergence of a power series This level of rigor is beyond the scope of this book, but we do need to use one particular analytic function the exponential function C441 The power series Exponential Function e A = k=0 1 1 2 3 k Ak (C46) does converge for all square matrices A, although convergence is not fast enough to make this a reasonable generalpurpose formula for approximating the exponential of A This definition does suffice to prove some elementary properties of the exponential function for matrices, such as: e 0n = I n for0 n then n zero matrix e In = ei n fori n then n identity matrix e AT = {e A } T (d/dt)e At = Ae At = e At A The exponential of a skew-symmetric matrix is an orthogonal matrix The characteristic vectors of A are also the characteristic vectors of e A If λ is a characteristic value of A, then e λ is a characteristic value of e A

C4 FUNCTIONS OF SQUARE MATRICES 13 C442 Computing Matrix Exponentials In a 1978 journal article titled Nineteen dubious ways to compute the exponential of a matrix [26], Moler and Van Loan reported their evaluations of methods for computing matrix exponentials Many of the methods tested had serious shortcomings, and no method was declared universally superior The one presented here was recommended as being more reliable than most It combines several ideas due to Ward [32], including setting the algorithm parameters to meet a pre-specified error bound It combines Padé approximation with a technique called scaling and squaring to maintain approximation errors within pre-specified bounds C4421 Padé approximation of the matrix exponential Padé approximations of functions by rational functions (ratios of polynomials) date from a 1892 publication [29] by Henri Padé 9 They have been used in deriving solutions of differential equations, including Riccati equations 10 [23] They can also be applied to functions of matrices, including the matrix exponential In the matrix case, the power series is approximated as a matrix fraction of the form D 1 N, with the numerator matrix (N) and denominator matrix (D) represented as polynomials with matrix arguments The order of the Padé approximation is two dimensional It depends on the orders of the polynomials in the numerator and denominator of the rational function The Taylor series is the special case in which the order of the denominator polynomial of the Padé approximation is zero Like the Taylor series approximation, the Padé approximation tends to work best for small values of its argument For matrix arguments, it will be some matrix norm 11 of the argument that will be required to be small The exponential function with argument z has the power series expansion The polynomials N p (z) and D q (z) such that e z = k=0 1 k! zk (C47) N p (z) = D q (z) = e z D q (z) N p (z) = p a k z k, k=0 q b k z k, k=0 k=p+q+1 c k z k (C48) (C49) (C50) are the numerator and denominator polynomials, respectively, of the Padé approximation of e z The key feature of the last equation is that there are no terms of order p + q on the right-hand side This constraint is sufficient to determine the coefficients a k and b k of the polynomial approximants, except for a common constant factor The solution (within a common constant factor) will be [23] a k = p!(p + q k)! k!(p k)! i=0, b k = ( 1)k q!(p + q k)! (C51) k!(q k)! C4422 Application to matrix exponential The above formulas may be applied to polynomials with scalar coefficients and square matrix arguments For any n n matrix X, ( ) 1 ) q (p + q i)! p f pq (X) = q! ( X) i (p + q i)! (p! X i (C52) i!(q i)! i!(p i)! e X is the Padé approximation of e X of order (p, q) i=0 (C53) 9 Pronounced pah-day 10 The order of the numerator and denominator of the matrix fraction are reversed here from the order used by Count J Riccati in linearizing the Riccati equation in [30] 11 Defined in subsection C53

14 APPENDIX C A MATRIX REFRESHER C4423 Bounding relative approximation error The bound given here is from Moler and Van Loan [26] It uses the -norm of a matrix, which can be computed 12 as n X = max x ij (C54) 1 i n for any n n matrix X with elements x ij The relative approximation error is defined as the ratio of the matrix -norm of the approximation error to the matrix -norm of the right answer The relative Padé approximation error is derived as an analytical function of X in Moler and Van Loan [26] It is shown in Golub and Van Loan [15] that it satisfies the inequality bound j=1 f pq (X) e X e X ε(p, q, X)e ε(p,q,x), (C55) ε(p, q, X) = p!q!2 3 p q (p + q)!(p + q + 1)! X (C56) Note that this bound depends only on the sum p + q In that case, the computational complexity of the Padé approximation for a given error tolerance is minimized when p = q, that is, if the numerator and denominator polynomials have the same order The problem with the Padé approximation is that the error bound grows exponentially with the norm X Ward [32] combined scaling (to reduce X and the Padé approximation error) with squaring (to re-scale the answer) to obtain an approximation with a predetermined error bound In essence, one chooses the polynomial order to achieve the given bound C4424 Scaling and squaring Note that, for any nonnegative integer N, e X = (e 2 N X ) 2N (C57) = {[( e 2 NX ) 2 ] 2 } 2 (C58) }{{} N squarings Consequently, X can be down-scaled by 2 N to obtain a good Padé approximation of e 2 NX, then up-scaled again (by N squarings) to obtain a good approximation to e X C4425 MATLAB Implementations The built-in MATLAB function expm(m) is essentially the one recommended by Moler and Van Loan [26], as implemented by Golub and Van Loan [[]Golub, Algorithm 1131, page 558] It combines scaling and squaring with a Padé approximation for the exponential of the scaled matrix, and it is designed to achieve a specified tolerance of the approximation error The MATLAB m-file expm1m (Section A4) is a script implementation of expm MATLAB also includes the functions expm2 (Taylor series approximation) and expm3 (alternative implementation using eigenvalue eigenvector decompositions), which can be used to test the relative accuracies and speeds relative to expm of these alternative implementations of the matrix exponential function C45 Similarity Transformations and Analytic Functions For any n n nonsingular matrix A, the transform X A 1 XA is called a similarity transformation of the n n matrix X It is a useful transformation for analytic functions of matrices f(x) = a k X k, k=0 (C59) 12 This formula is not the definition of the -norm of a matrix, which is defined in C53 However, it is a consequence of the definition, and it can be used for computing it

C5 NORMS 15 because f(a 1 XA) = a k (A 1 XA) k k=0 (C60) ( = A 1 a k X )A k (C61) k=0 = A 1 f(x)a (C62) If the characteristic values of X are distinct, then the similarity transform performed with the characteristic vectors of X as the column vectors of A will diagonalize X with its characteristic values along the main diagonal: A 1 XA = diag {λ l } (C63) l f(a 1 XA) = diag{f(λ l )}, (C64) l f(x) = Adiag{F(λ l )}A 1 (C65) l (Although this is a useful analytical approach for demonstrating functional dependencies, it is not considered a robust numerical method) C5 Norms C51 Normed Linear Spaces Vectors and matrices can be considered as elements of linear spaces, in that they can be added and multiplied by scalars A norm is any nonnegative real-valued function defined on a linear space such that, for any scalar s and elements x and y of the linear space (vectors or matrices), x = 0 iff x = 0, (C66) x < 0 if x 0, (C67) sx = s x, (C68) x + y x + y, (C69) where iff stands for if and only if These constraints are rather loose, and many possible norms can be defined for a particular linear space A linear space with a specified norm is called a normed linear space The norm induces a topology on the linear space, which is used to define continuity and convergence Norms are also used in numerical analysis for establishing error bounds, and in sensitivity analysis for bounding sensitivities The multiplicity of norms is useful in these applications, because the user is free to pick the one that works best for her or his particular problem We define here many of the more popular norms, some of which are known by more than one name C52 Hölder Norms The inner product of a column n-vector x with itself is x T x = tracexx T (C70) n = (C71) i=1 x 2 i def = x 2 E, (C72)

16 APPENDIX C A MATRIX REFRESHER the square of the Euclidean norm of x This is but one of a class of norms called Hölder norms, 13 l p norms, 14 or simply p-norms: [ n ] 1/p def x p = x i p, (C73) and in the limit (as p ) as the sup 15 norm, or -norm: These norms satisfy the Hölder inequality: i=1 def x = max x i (C74) i x T y x p y q for 1 p + 1 q = 1 (C75) They are also related by inequalities such as x x E x 1 n x (C76) The Euclidean norm (2-norm) is the default norm for vectors When no other norm is identified, the implied norm is the Euclidean norm C53 Matrix Norms Many norms have been defined for matrices Two general types are presented here Both are derived from vector norms, but by different means C531 Generalized Vector Norms Vector norms can be generalized to matrices by treating the matrix like a doubly subscripted vector For example, the Hölder norms for vectors can be generalized to matrices as 1/p m n A (p) = a i,j p (C77) i=1 j=1 The matrix (2)-norm defined in this way is also called the Euclidean norm, Schur norm, or Frobenius norm We will use the notation F in place of (2) for the Frobenius norm The reason for putting the parentheses around the subscript p in the above definition is that there is another way that the vector p-norms are used to define matrix norms, and it is this alternative definition that is usually allowed to wear an unadorned p subscript These alternative norms also have the following desirable properties C532 Desirable Multiplicative Properties of Matrix Norms Because matrices can be multiplied, one could also apply the additional constraint that AB M A M B M (C78) for conformable matrices A and B and a matrix norm M This is a good property to have for some applications One might also insist on a similar property with respect to multiplication by vector x, for which a norm V1 may already be defined: Ax V2 A M x V1 (C79) This property is called compatibility between the matrix norm M and the vector norms V1 and V2 (Note that there can be two distinct vector norms associated with a matrix norm: one in the normed linear space containing x, and one in the space containing Ax) 13 Named for the German mathematician Otto Ludwig Hölder (1859 1937) 14 This little l notation is used for infinite-dimensional normed vector spaces (sequences), which include finite-dimensional normed vector spaces as a subclass 15 sup (sounds like soup ) stands for supremum, a mathematical term for the least upper bound of a set of real numbers The maximum (max) is the supremum over a finite set

C6 MATRIX SQUARE ROOTS 17 C533 Matrix Norms Subordinate to Vector Hölder Norms There is a family of alternative matrix p-norms [but not (p)-norms] defined by the formula def A p = sup Ax p, x 0 x p (C80) where the norms on the right-hand side are the vector Hölder norms and the induced matrix norms on the left are called subordinate to the corresponding Hölder norms The 2-norm defined in this way is also called the spectral norm of A It has the properties diag i {λ i } 2 = max λ i and Ax 2 A 2 x 2 (C81) i The first of these properties implies that I 2 = 1 The second property is compatibility between the spectral norm and the vector Euclidean norm (Subordinate matrix norms are guaranteed to be compatible with the vector norms used to define them) All matrix norms subordinate to vector norms also have the property that I = 1 C534 Computation of Matrix Hölder Norms The following formulas may be used in computing 1-norms and -norms of m n matrices A: { m } A 1 = max a ij, (C82) 1 j n i=1 n A = max a ij 1 i m (C83) The norm A 2 can be computed as the square root of the largest characteristic value of A T A, which takes considerably more effort C535 Default Matrix Norm When the type of norm applied to a matrix is not specified (by an appropriate subscript), the default will be the spectral norm (Hölder matrix 2-norm) It satisfies the following bounds with respect to the Frobenius norm and the other matrix Hölder norms for m n matrices A: j=1 A 2 A F n A 2, (C84) 1 A 1 m A 2 n A 1, (C85) 1 n A A 2 m A, (C86) max 1 i m 1 j n a ij A 2 mn max a ij (C87) 1 i m 1 j n C6 Matrix Square Roots In matrix theory, a square root of a matrix M is defined as any matrix S such that M = S 2 = SS The square-root S of M is generally not unique, even for the case that M = 0 By definition, any nilpotent matrix of degree 2 satisfies S 2 = 0 For example, the matrices S = 0 and [ ] 0 ±1 S = (C88) 0 0 are all square roots of M = 0

18 APPENDIX C A MATRIX REFRESHER C7 Cholesky Decomposition of Symmetric Positive-Definite Matrices This decomposition is named after André Louis Cholesky, a French 16 geodesist and artillery officer, and a casualty of World War I He discovered a method for solving linear least-squares problems using an algorithm for factoring a symmetric, positive-definite matrix P as a product of a lower triangular matrix and its transpose: P = LL T (C89) He was perhaps not the first discoverer 17 of the factoring technique, but his use of the method for solving leastsquares problems was unique His results were published posthumously by a fellow officer, Commandant Benoit [6], and credited to Cholesky Cholesky decomposition is used in several ways for implementing Kalman filters C71 Cholesky Factors In the literature, the term Cholesky factor usually refers to the lower triangular solution L to Eq C89 C72 Generalized Cholesky Factors (GCF) C721 Nomenclature of Square Root Filtering James E Potter (1937 2005) discovered what is now called square root filtering, an alternative mathematical form of the Riccati equation in the Kalman filter which is much more robust against computer roundoff error Potter s formulation replaces the symmetric positive-definite covariance matrix P of estimation uncertainty in the matrix Riccati equation 18 by a solution C of P = CC T (C90) Potter s derivation uses a symmetric elementary matrix 19 of the form I ± vv T, the square root of which is also a symmetric elementary matrix It would not be considered a Cholesky factor of I ± vv T, because it is not triangular However, Potter s solution of the equivalent form of the Riccati equation in terms of the matrix C of Eq C90 does not require that C be triangular 20 The matrix C in this case is neither fish nor fowl according to convention It is not a Cholesky factor because it is not necessarily lower triangular, and it is not a matrix square-root unless it is symmetric Unfortunately, in the literature of square-root Kalman filtering, any solution C of Eq C90 has come to be called a square root of P Strictly speaking, however, C is not a true matrix square root of P unless C is symmetric 21 C722 An Alternative Terminology As an alternative, we will use the term generalized Cholesky factor (GCF) for any solution C of Eq C90 Note that it does not matter whether we write Eq C90 with the alternative right-hand-side F T F = P, because the two solutions can be related by F = C T 16 Because Cholesky was French, his name should perhaps be pronounced Show-less-KEY with the accent on the last syllable 17 Zurmühl [34] cites an earlier discovery by M H Doolittle, published in a US Coast and Geodetic Report in 1878 18 The Riccati differential (or difference) equation in this case is the mathematical model for the evolution over time of the mean-squared uncertainty in the Kalman filter estimate 19 Alston S Householder (1904 1993) used elementary matrix algebras to develop many accurate methods in computational mathematics 20 Andrews [1] has shown how the Potter square-root filter can be augmented to maintain triangularity of C during the temporal update of the square-root filter, in which case it remains a true Cholesky factor S F Schmidt and T Kailath [20] and others have developed methods for preserving triangularity in the measurement update, as well 21 In fact, every symmetric positive-definite P has a symmetric square root, which can be obtained by using the singular value decomposition of P (MATLAB functionsvd) as P = ADB, where for symmetric positive-definite P A and B = A T are orthogonal and D is diagonal with positive diagonal entries A symmetric square root in this case would be S = A DA T, where D is the diagonal matrix whose diagonal entries are the positive square roots of the diagonal entries of D

C7 CHOLESKY DECOMPOSITION OF SYMMETRIC POSITIVE-DEFINITE MATRICES 19 C723 Generalized Cholesky Factors Are Not Unique If C is a generalized Cholesky factor of P, then for any conformable orthogonal matrix M, the matrix satisfies the equation A def = CM (C91) AA T = CM(CM) T (C92) = CMM T C T (C93) = CC T (C94) = P (C95) That is, A is also a legitimate generalized Cholesky factor The ability to transform one generalized Cholesky factor into another using orthogonal matrices turns out to be very important in square-root filtering C73 Alternative Cholesky Factoring Algorithms The factoring algorithm used by Cholesky always resulted in a lower triangular result However, there are two possible forms of triangular factorization, corresponding to two possible forms of the defining equation: P = L 1 L T 1 = U T 1 U 1 (C96) = U 2 U T 2 = L T 2 L 2, (C97) where L 1 is the form used by Cholesky, but the generalized Cholesky factors U 1, U 2 are upper triangular and the transpose L 2 = U T 2 is lower triangular The first of these is implemented by the built-in MATLAB function chol(p), with argument P a symmetric positive-definite matrix The call chol(p) returns an lower triangular matrix L 1 satisfying Eq C96 The MATLAB m-file utcholm in the accompanying MATLAB library implements the solution to Eq C97 The call utchol(p) returns an upper triangular matrix U 2 satisfying Eq C97 There are also two possible forms for each of the two factoring algorithms, depending on whether the second level of the indexing loop is by rows or columns, but this detail has no significant effect on the result C74 Modified Cholesky Factorization The algorithm for Cholesky factorization of a matrix requires taking square roots, which can be avoided by using a modified Cholesky factorization in the form P = UDU T, (C98) where D is a diagonal matrix with positive diagonal elements and U is a unit triangular matrix (ie, U has 1s along its main diagonal) This algorithm is implemented in the file modcholm in the accompanying MATLAB library C75 Rank 1 Modifications of Generalized Cholesky factors A rank 1 modification of a generalized Cholesky factor C 0 such that C 0 C T 0 = A is a generalized Cholesky factor of A ± vv T, where v is a column vector and vv T is a rank 1 matrix The built-in MATLAB function cholupdatem performs that function, given C 0 and v, for factorization in the form C T output C output = C T input C input + vv T (ie, transposing the first factor, rather than the second factor) The MATLAB rank 1 generalized Cholesky factor modification functions potterm, carlsonm, and biermanm on the MATLAB library are specialized for application to Kalman filtering